[Spring/JPA] 영속성 컨텍스트
·
Spring
✅ 영속성 컨텍스트♐ 영속성 컨텍스트란?Entity 객체를 영속성 상태로 관리하는 일종의 캐시 역할을 하는 공간으로 여기에 저장된 Entity는 데이터베이스와 자동으로 동기화되며 같은 트랜잭션 내에서는 동일한 객체가 유지된다.  ♐ 작동 원리눈에 보이지 않는 공간이 생긴다(논리적 개념)Entity Manager 를 통해서 영속성 컨텍스트에 접근한다. ex) EntityManager.persist(entity)Entity를 영속성 컨텍스트에 저장한다. ✅ Entity ♐ Entity란?데이터베이스에서 Entity란 저장할 수 있는 데이터의 집합을 의미한다.JPA 에선 테이블을 나타내는 클래스이다. ♐ 생명 주기 1. 비영속 (New/Transient):  -  영속성 컨텍스트와 전혀 관계가 없는 상태 - ..
[Spring] Annotation
·
Spring
✅ Annotation 이란?사전적 의미로는 주석이라는 뜻이지만, 자바에서 @Annotation 많은 기능들을 다루는 기술이다.컴파일러에게 코드 작성 문법 에러를 체크하도록 정보를 제공한다.소프트웨어 개발 툴이 빌드나 배치시 코드를 자동으로 생성할 수 있도록 정보를 제공한다.실행시 특정 기능을 실행하도록 정보를 제공한다.💡 자바 애너테이션(Java Annotation)은 자바 소스 코드에 추가하여 사용할 수 있는 메타데이터의 일종이다. 보통 @ 기호를 앞에 붙여서 사용한다. JDK 1.5 버전 이상에서 사용 가능하다. 자바 애너테이션은 클래스 파일에 임베디드되어 컴파일러에 의해 생성된 후 자바 가상머신에 포함되어 작동한다.위키백과 - 자바 애노테이션 ✅ 자주 사용하는 Annotation♐ @Beanme..
[Spring] Controller 와 RestContoller 의 차이
·
Spring
✅ Controller 와 RestContoller 의 차이Spring에서 컨트롤러를 지정해주기 위한 어노테이션은 @Controller와 @RestController가 있다.전통적인 Spring MVC 컨트롤러인 @Controller와 RESTful 웹 서비스의 컨트롤러인 @RestController의 주요한 차이점은 HTTP Response Body가 생성되는 방식에 있다. -> 즉, 모든 메소드가 뷰 대신 객체로 작성된다. ♐ @ControllerController는 주로 View를 반환하기 위해 사용한다.. 아래와 같은 과정을 통해 Spring MVC Container는 Client의 요청으로부터 View를 반환한다. Controller 주석코드@Target(value=TYEP)@Retention(..
[Spring] MVC 패턴
·
Spring
✅ MVC 패턴이란?하나의 Servlet이나 JSP로 처리하던 것들을 Model, View, Controller 영역 으로 나눈것이다. ✅ MVC 패턴이 나온 이유Servlet이나 JSP만으로 비지니스 로직과 View Rendering 까지 모두 처리 하면 너무 많은 역할을 하게 되고 유지보수가 굉장히 어려워져서 고안된 패턴이다.Web Application은 일반적으로 MVC(Model View Controller) 패턴을 사용한다.  ♐ 방법 1. Servlet 예시예를 들어, Servlet 에 모든 코드를 넣게 되면 아래의 코드와 같이 가독성과 재사용성이 굉장히 떨어지게 된다.더보기@WebServlet("/hello-world")public class HelloWorldServlet extends H..