JPA - 상속관계매핑
·
Spring/JPA
상속관계 매핑 객체는 상속관계가 존재하지만, 관계형 DB에는 상속 관계가 없다. 상속관계 매핑이라는 것은 객체의 상속 구조와 DB의 슈퍼타입 서브타입 관계를 매핑하는 것 슈퍼타입과 서브타입 논리 모델 → 물리모델로 구현하는 방법 3가지 방법이 존재한다. JPA가 이 3가지 방법과 매핑하려면 @Inheritence(strategy=InheritanceType.XXX)의 strategy를 설정해주면 된다. XXX = ‘JOINED’,’SINGLE_TABLE’,’TABLE_PER_CLASS’로 구성되어 있다. @DiscriminatorColumn(name=”DTYPE”) 부모 클래스에서 선언, 하위 클래스를 구분하는 용도의 컬럼을 생성 관례는 default=DTYPE @DiscriminatorValue(”XX..
Spring Framework - init-param의 뜻?
·
Spring
init-param은 Servlet, Filter 또는 Listener와 같은 웹 컴포넌트의 초기화 매개변수를 설정하는 데 사용됩니다. Servlet의 경우, init-param 요소를 사용하여 Servlet이 초기화될 때 사용할 매개변수를 설정할 수 있습니다. 이러한 초기화 매개변수는 ServletContext에서 사용할 수 있으며, getInitParameter() 메소드를 사용하여 얻을 수 있습니다. Filter의 경우, init-param 요소를 사용하여 필터의 초기화 매개변수를 설정할 수 있습니다. 이러한 초기화 매개변수는 FilterConfig에서 사용할 수 있으며, getInitParameter() 메소드를 사용하여 얻을 수 있습니다. Listener의 경우, init-param 요소를 사용..
Spring Framework - MVC pattern Architecture
·
Spring
Spring Framework - servlet-context.xml해석
·
Spring
xmlns, xsi:schemaLocation: XML 스키마와 관련된 정보를 정의합니다. : Spring MVC에서 @Controller, @RequestMapping 등의 어노테이션을 사용할 수 있도록 지원합니다. : 정적인 자원(이미지, CSS, JS 등)을 처리하기 위한 설정입니다. : **InternalResourceViewResolver**를 빈으로 등록하여 뷰의 이름을 JSP 파일로 변환하는 역할을 합니다. : 지정된 패키지를 스캔하여 해당 패키지에 있는 클래스 중에서 특정 어노테이션이 붙은 클래스를 스프링 빈으로 등록합니다. 위 설정 파일에서는 com.itbank.day04 패키지와 com.itbank.controller 패키지에 있는 클래스를 스캔하여 스프링 빈으로 등록하도록 설정되어 있..
Spring Framework - web.xml 해석
·
Spring
context-param context-param: 이 요소는 Spring 애플리케이션 컨텍스트를 설정하는 데 사용됩니다. **param-name**은 Spring 루트 컨텍스트 파일의 위치를 지정하는 데 사용되며, **param-value**는 해당 파일의 경로를 나타냅니다. listener listener: 이 요소는 Servlet 컨텍스트를 로드하는 데 사용되며, Spring 루트 컨텍스트를 생성합니다. Spring 루트 컨텍스트는 모든 Servlet에서 공유되며, 이를 통해 Servlet들이 공통적으로 사용하는 Bean들을 관리할 수 있습니다. filter filter: 이 요소는 인코딩 필터를 정의합니다. 이 필터는 모든 HTTP 요청과 응답에서 UTF-8 인코딩을 사용하도록 설정합니다. fil..
[Spring Framework] @RequestMapping("경로") 해석
·
Spring
@RequestMapping 어노테이션은 클래스 레벨과 메소드 레벨 둘 다에서 사용될 수 있으며, 컨트롤러의 요청 매핑 정보를 정의하는 역할을 합니다. 클래스 레벨에서 사용할 경우, 해당 컨트롤러 내부의 모든 요청 메소드의 공통적인 부분을 정의할 수 있습니다. 메소드 레벨에서 사용할 경우, 해당 메소드가 어떤 요청 매핑 정보를 처리할지를 정의할 수 있습니다. 위 코드에서 @RequestMapping("/ex04")은 /ex04 경로로 들어온 모든 요청에 대해 이 컨트롤러를 매핑시키는 역할을 합니다. 즉, http://localhost:8080/ex04로 GET 또는 POST 요청을 보내면 이 컨트롤러의 df() 또는 ex04() 메소드가 실행되도록 합니다. df() 메소드는 반환 값이 없으므로, 해당 경..