전체 글 92

기초역량 국비지원 과정 시작...! (+코테 스터디)

우연히 스파르타코딩클럽에서 진행하는 코딩 테스트 스터디(99클럽)을 알게 되었다. 매일 한 문제씩만 풀면 되고 여러명이서 함께 진행하기 때문에  동기부여가 되고 큰 부담없이 공부할 수 있는 환경이라고 생각이 들어 바로 참가비 내고 신청했다. 나는 자료구조에 대해서 공부는 했지만 문제를 많이 풀어보거나 코딩테스트를 위해 준비해보지 않아서 자바/비기너 난이도로 신청했다. 아직 스터디 시작까지는 시간이 남았는데 이번 스터디를 통해서 자료구조를 익숙하게 사용하게 되었으면 좋겠다. 그리고 미션이나 보상이 맘에 들고 관리가 잘 되는 것 같아서 사이트를 더 구경하다가 국비지원이 되는 기초역량 강의 - Docker 기반 CI/CD 파이프라인 구축하기- 를 알게 되었다. 평소에 궁금하고 자세히 배워보고 싶었던 터라 내게..

4. 엔티티 메핑

🔽매핑🗨️ 데이터베이스 스키마 옵션  • 객체와 테이블 매핑: @Entity, @Table • 필드와 컬럼 매핑: @Column • 기본 키 매핑: @Id • 연관관계 매핑: @ManyToOne,@JoinColumn 🗨️ @Entity@Entity가 붙은 클래스는 JPA가 관리, 엔티티라 한다.JPA를 사용해서 테이블과 매핑할 클래스는 @Entity 필수.기본 생성자 필수(파라미터가 없는 public 또는 protected 생성자)final 클래스, enum, interface, inner 클래스 사용X데이터베이스에 저장할 필드에는 final 사용 X 🗨️ @Table  🗨️ 필드와 컬럼 매핑@Entity //JPA가 관리해야할 엔티티라는 것을 명시//@Table(uniqueConstraints..

2. JPA 시작, 내부 구조

🔽데이터베이스 방언 방언: SQL 표준을 지키지 않는 특정 데이터베이스만의 고유한 기능 JPA는 자동으로 방언을 해석해서 특정 데이터베이스에 종속하지 않는다데이터베이스 변경 시 보수가 용이하다 하이버네이트는 40가지 이상의 데이터베이스 방언 지원  🔽JPQL JPA는 SQL을 추상화한 JPQL이라는 객체 지향 쿼리 언어 제공 JPQL은 테이블이 아닌 객체를 대상으로 검색하는 객체 지향 쿼리 (SQL은 데이터베이스 테이블을 대상으로 쿼리) SQL을 추상화해서 특정 데이터베이스 SQL에 의존 X🔽JPA 내부 동작영속성 컨텍스트엔티티를 영구 저장하는 환경엔티티 매니저를 통해 접근한다 (엔티티 매니저 내부에 영속성 컨텍스트 공간이 생긴다)생명 주기1. 비영속JPA와 전혀 관계없는 객체만 생성한 상태2. 영..

JPA 소개

🔽 JPA 소개1. 객체와 관계형 데이터베이스의 차이 때문에 객체의 특징(상속, 연관관계 등)을 닮은 테이블 모델링은 매핑 작업이 복잡해진다.2. 객체지향 프로그래밍에서 객체를 자바 컬렉션에 저장하듯 데이터베이스에 저장하는 기술이 JPA이다.3. JPA는 자바 진영의 ORM 기술 표준이다.4. JPA는 인터페이스의 모음으로 2.1 표준 명세를 구현한 3가지 구현체 (하이버네이트, EclipseLink, DataNucleus)가 있다. 🔽 ORM1. Object-relational Mapping : 객체와 관계형 데이터베이스를 매핑 2. ORM 프레임워크가 중간에서 패러다임의 불일치를 해결하고 SQL를 생성하는 등 여러 작업을 개발자 대신 한다. 🔽JPA 동작 🔽JPA를 사용할 때의 장점1. 생산성..

[21주차] Naver Cloud Platform 과 JPA

2024/10/21 VPC다른 사용자의 네트워크와 간섭 없는 클라우드 상에서 논리적으로 격리된 네트워크서브넷, IP 주소 범위, 네트워크 게이트웨이, 라우팅 테이블을 이용해서 네트워크의 용도별 세분화, 맞춤형 네트워크 환경을 구성서브넷IP 주소를 작은 범위의 네트워크로 분할하는 것서브넷으로 나누어서 네트워크 관리를 더욱 쉽게 하고 서브넷 단위 보안그룹을 설정해서 보안을 강화할 수 있는 장점IP 서브넷은 서브넷 마스크를 사용하여 식별IPv4총 32bit, 8bit씩 4개의 옥텟IPv6총 128bit, 16bit 씩 8개의 필드 Bastion Host 서버 및 private 서버 생성하기Termius를 통해서 Bastion Host 서버에 SSH 접근을 한다Private subnet에 접근하기 위해서 NAT..

[20주차] View 1 ~ 5 일차

지난 주로 Node.js 수업을 마치고 이번 주는 View 강의에 들어갔다.2024/10/14 SSR (Server Side Rendering) 화면의 렌더링이 서버에서 이루어지는 아키텍처 SPA(Single Page Application) 하나의 페이지를 사용하는 애플리케이션 Ajax( 페이지 새로고침 없이 데이터가 교환되고 업데이트) 사용자와의 상호작용을 위해 사용자 중심 경험(User-centric Experience)을 제공하기 위해 프레임워크를 사용하면 일반 작업이나 공통 패턴을 추상화해서 제공하기 때문에 빠르고 정확하게 원하는 앱을 구현하고 운영 및 유지 보수가 가능하다.Vue.js 란?데이터를 보여주는 뷰(view)데이터를 중개하는 뷰모델 (view-model)UI와 데이터 처리 로직의 상호..

4강 자바스크립트 기초 문법 -1

1️⃣ 여러 함수 사용법함수 선언식 함수 선언 위치와 상관없이 어디서든 호출 가능.자바스크립트의 내부 알고리즘에 의해 실행 전 초기화 단계에서 코드의 모든 선언된 함수를 찾아 생성해 둔다.그래서 위에서 아래로 차례로 내려가면서 실행하는 인터프리터 방식의 자바스크립트에서 사용 가능 범위가 위아래로 늘어나게 된다. 이것을 호이스팅이라고 한다.함수 표현식함수 표현식은 선언식과 달리 한 줄씩 읽고 함수가 생성된 이후로 사용할 수 있다.//함수 선언식 : 어디서든 호출 가능sayHello(); function sayHello (){ console.log("안녕하세요");}sayHello();//함수 표현식 //함수가 식이 되어 변수에 할당한다let greeting = function (name) { console..

1강 백엔드 기초

1️⃣ Node.js의 역사크롬의 V8 자바스크립트 해석엔진을 따로 출시하게 된 것이 Node.js이다. 브라우저 말고도 다른 환경에서도 자바스크립트를 실행할 수 있도록 만들었다.자바스크립트 런타임 환경이다.서버를 만들기 쉽다.Non-blocking IO, Event-driven 실행 환경클라이언트의 요청이 많거나 오래걸려도 서버가 멈추거나 대기시간이 생기지 않는다. Node.js가 아닌 일반 서버의 경우 스케일링과 멀티쓰레딩 (Scale Up, Scale Out)을 통해 위와 같은 효과를 얻을 수 있다.코드가 짧고 쉬워서 빠른 서버 개발이 가능하다2️⃣ Express 라이브러리Node.js 서버를 쉽게 만들 수 있도록 도와주는 라이브러리3️⃣ npm, yarnNode Package Manager, No..

[19주차] Node.js 1~4일차

2024/10/7 정신없던 2차 프로젝트가 끝났다. 오늘부터 다시 교육을 시작했다.파이널 프로젝트에서는 Node.js를 사용하고 Vue.js 프레임워크로 프런트를 개발할 예정이라고 한다. 그래서 오늘은 Node.js를 설치하고 K6를 사용하여 다중 접속 환경을 테스트해 보았다.Node.js 는 서버 개발에서도 자바스크립트를 사용할 수 있게 해주는 런타임 환경으로 여러 장점이 있다. 우선, Node.js는 비동기적으로 처리해서 많은 요청을 동시에 처리할 수 있어 성능이 뛰어나고 자원 효율성을 극대화할 수 있다. 그리고 Node.js는 브라우저 내 말고도 다른 환경에서 자바스크립트를 실행할 수 있다. - 논블러킹 (비동기 방식으로 I/O) - 노드는 이벤트 기반 아키텍처로 구성이 되어있다. -싱글스레드 (다..