210706
spring03 / spring04 / spring05 / spring06 / spring07 /
스프링에서는 SqlSession의 라이프사이클을 스프링이 관리한다.
-openSession(), close()메소드를 사용자가 호출하지 않음 -> 스프링이 관리
-commit(), rollback()메소드를 사용자가 호출하지 않음 -> 스프링이 트랜잭션 처리를 함
스프링이 생성해준 객체를 받아와야 하므로 setter메소드 또는 생성자가 필요하다.
mybatis 설정하기
1. DataSource 설정
2. SqlSessionFactory 설정 -> SqlSessionFactoryBean (dataSource + MapperXML)
3. SqlSession 설정 -> SqlSessionTemplate(생성자로 SqlSessionFactory 주입)
scope="prototype" : getBean메소드로 호출할 때마다 객체를 생성
scope="singleton" : 싱글톤객체로 생성 - 기본값으로 설정되어 있음
@Autowired : 같은 타입의 Bean객체를 자동으로 주입(생성자/setter메소드/멤버변수에 설정할 수 있다.)
value속성으로 Bean객체로 등록되는 객체이름을 지정할 수 있음. value속성이 생략되면 시작문자가 소문자인 클래스명으로 Bean객체의 이름이 부여된다.