[Spring] - Spring JDBC == JDBC (1) Template 사용하기 위한 설정
○ Spring JDBC == JDBC Template (1) 사용하기 위한 설정 |
Spring JDBC == JDBC Template 이 해주는 작업 1. Connection 열기와 닫기 2. Statement 준비와 닫기 및 실행 3. ResultSet 반복 처리 4. Exception 예외 처리 5. Transaction 처리(commit, rollback) 이러한 것들을 자동으로 해주기에 코드가 무지 간결해진다!!! 1. pom.xml에 dependency 추가(JDBC 사용하기 위한 라이브러리 가져옴) <!-- JDBC Template --> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-jdbc</artifactId> <version>${org.springframework-version}</version> </dependency> 2. Controller 에 JDBCTemplate 추가하고 setter 한다 @Controller public class BController { public JdbcTemplate template; // 자동으로 setter를 호출하여 우리가 만들어 놓은 템플릿 변수에 // 자동으로 빈이 생성되어 할당된다! (servlet-context.xml에 생성한 빈) @Autowired public void setTemplate(JdbcTemplate template) { this.template = template; Constant.template = this.template; // 아무데서나 사용가능(static 선언) } 3. 만든 변수 template 에 스프링 설정 파일(servlet-context.xml)에서 빈(bean)을 만듬 <beans:bean name="dataSource" class="org.springframework.jdbc.datasource.DriverManagerDataSource" > <beans:property name="driverClassName" value="oracle.jdbc.driver.OracleDriver" /> <beans:property name="url" value="jdbc:oracle:thin:@localhost:1521:xe" /> <beans:property name="username" value="rhkwk424" /> <beans:property name="password" value="wlgns930" /> </beans:bean>
<!-- 스프링이 제공하는 JDBC를 사용하기 위해서 --> <!-- template 이라는 bean이 dataSource라는 빈을 참조한다 --> <beans:bean name="template" class="org.springframework.jdbc.core.JdbcTemplate"> <beans:property name="dataSource" ref="dataSource"/> </beans:bean> 4. template 를 어디서든지 쓸 수 있게 패키지와 클래스를 만듬 // com.javalec.springMVCBoard.util - Constant.java public class Constant { // 해당 template을 공용으로 사용하기위해서(servlet-context.xml 빈) public static JdbcTemplate template; } 5. DAO 클래스 파일에서 생성자를 통해 사용할 수 있게 만듬 public class BDao { JdbcTemplate template;
// 생성자에 Constant클래스에 적용된 JDBCTemplate을 담음 public BDao() { this.template = Constant.template; } } |
'Spring' 카테고리의 다른 글
[Spring] - Spring JDBC Template (3) : insert update, delete 처리 (0) | 2018.07.24 |
---|---|
[Spring] - Spring JDBC Template (2) : select 처리 (0) | 2018.07.24 |
[Spring] - 오라클 연동 시 HTTP Status 500 - Servlet.init() for servlet appServlet threw exception 에러 (0) | 2018.07.18 |
[Spring] - 프로젝트 설계 및 커맨드 인터페이스와 클래스 (중요) (0) | 2018.07.17 |
[Spring] - 폼 데이터 검증 (2) : @Valid @InitBinder 이용한 유효성 검증 (0) | 2018.07.15 |