독거노인 코드정리
resultmap 과 resulttype의 차이점
resultType
ibatis 에서 resultClass → mybatis 에서 resultType 으로 바뀜
클래스명 전체 또는 alias를 입력
즉 매핑하려는 자바 클래스의 전체 경로를 입력함
예 : com.test.Student 객체로 쿼리 실행 결과값을 받고자 할 때
<select id="selectTest" resultType="com.test.Student">
...
예 : int 형 객체로 쿼리 실행 결과값을 받을 때
<select id="selectTest" resultType="int">
...
resultMap
resultMap 선언 당시 참조로 사용한 이름을 입력
resultType을 이용하면 자동 매핑되기 때문에 편리하지만 제한이 있으나,
resultMap을 사용하면 개발자가 직접 원하는 POJO 클래스에 매핑 가능
예 :
<resultMap id="test" type="com.test.Student">
....
<select id="selectTest" resultMap="test">
...
@RestController 와 @responsebody
@ResponseBody
메소드에서 @ResponseBody 어노테이션을 사용하면 Spring은 반환 값을 변환하여 HTTP Response 에 자동으로 씁니다. Controller 클래스의 각 메소드에는 @ResponseBody 어노테이션이 있어야합니다.
@RestController
Spring 4.0은 @Controller와 @ResponseBody 을 합쳐놓은것 이상의 역할을 수행하는@RestController를 추가했습니다. 컨트롤러 클래스에 @RestController 어노테이션을 작성함으로써 더 이상 @ResponseBody를 모든 요청 매핑 메소드에 추가 할 필요가 없습니다. @ResponseBody 어노테이션은 이제 기본으로 작동
Mybatis 반환값
Select - Select문에 해당하는결과
Insert - 1 (여러개일경우도 1)
Update - Update된 행의 개수 반환 (없다면 0)
delete - Delete된 행의개수 (없다면 0)
servlet-context.xml , root-context.xml , web.xml
공통점 : xml파일 모두 객체(bean)를 정의