Mybatis 이전버전인 ibatis + Spring3 에 대한 기본적인 연동법을 소개해보고자 합니다.
Spring 기본 연동법은 하단 포스팅을 참조해 주세요
2014/11/06 - [개발에필요한연동법/스프링연동] - STS 이클립스를 이용하여 UTF-8 인코딩 설정 및 Spring3 MVC 연동해보기
2014/11/06 - [개발에필요한연동법/스프링연동] - Spring3 한글깨짐 방지를 위한 UTF-8 인코딩 설정하기
2014/11/14 - [개발에필요한연동법/스프링연동] - Spring3 Maven을 이용하여 pom.xml에 oracle,mysql,mssql jdbc 라이브러리 등록하기
위 링크 기준으로 이어서 DB 설정에 대하여 포스팅 하도록 하겠습니다.
저는 Mybatis 연동법에 소개드렸듯이 MySQL 기준으로 아이바티스 연동을 하도록 하겠습니다.
2014/11/14 - [개발에필요한연동법/스프링연동] - Spring3 + MyBatis 기본설정 + 연동테스트 후 쿼리로그 확인해보기
/resources/spring/application-config.xml 설정부분을 보도록 하겠습니다.
1 2 3 4 5 6 7 8 9 10 11 12 | < context:component-scan base-package = "com.spring" /> < bean id = "dataSource" class = "org.apache.commons.dbcp.BasicDataSource" destroy-method = "close" > < property name = "driverClassName" value = "com.mysql.jdbc.Driver" /> < property name = "username" value = "계정" /> < property name = "password" value = "비밀번호" /> </ bean > < bean id = "sqlMapClient" class = "org.springframework.orm.ibatis.SqlMapClientFactoryBean" > < property name = "configLocation" value = "classpath:sqlmap-config.xml" /> < property name = "dataSource" ref = "dataSource" /> </ bean > </ beans > |
위와같이 설정을 하셨다면
"/resources/sqlmap-config.xml 파일을 하나 생성하고 다음 코드를 덮어씌워주세요
1 2 3 4 5 6 | <? xml version = "1.0" encoding = "UTF-8" ?> <!DOCTYPE sqlMapConfig PUBLIC "-//iBATIS.com//DTD SQL Map Config 2.0//EN" "http://www.ibatis.com/dtd/sql-map-config-2.dtd"> < sqlMapConfig > < settings cacheModelsEnabled = "true" enhancementEnabled = "true" lazyLoadingEnabled = "true" useStatementNamespaces = "true" /> < sqlMap resource = "query/query.xml" /> </ sqlMapConfig > |
"/resources/query/" 디렉토리 생성 후 query.xml파일을 생성 한 다음
하단 코드를 덮어씌워보도록 하겠습니다.
1 2 3 4 5 6 7 | <? xml version = "1.0" encoding = "UTF-8" ?> <!DOCTYPE sqlMap PUBLIC "-//iBATIS.com//DTD SQL Map 2.0//EN" "http://www.ibatis.com/dtd/sql-map-2.dtd"> < sqlMap namespace = "query" > < select id = "ibatisSelect" resultClass = "String" > SELECT 'TEST' </ select > </ sqlMap > |
이번 포스팅은 간단하게 DB SELECT 테스트를 하기 위함으로써 Service 영역을 제외하고
Controller -> Dao 로 바로 호출하는 샘플 코드를 작성해보겠습니다.
1 2 3 4 5 6 7 8 9 10 11 | @Autowired private StudyDao studyDao; @RequestMapping ( "/ibatisSelect" ) public void ibatisSelect(){ try { studyDao.ibatisSelect(); } catch (Exception e) { e.printStackTrace(); } } |
1 | public void ibatisSelect() throws SQLException; |
1 2 3 4 5 6 7 8 9 10 11 | @Repository public class StudyDaoImpl implements StudyDao { @Autowired private SqlMapClient query; public void ibatisSelect() throws SQLException { String result= (String)query.queryForObject( "query.ibatisSelect" ); System.out.println( "결과값:" +result); } } |
샘플코드들에 대한 작성이 완료되었다면 한번 실행결과를 확인해보도록 하겠습니다.
쿼리로그는 Mybatis와 다르게 출력되지않지만 결과값이 나왔다는 것은 Spring과 ibatis 와 연동이 되었다는 결과 입니다.
다음장은 logback.xml 파일로 쿼리출력을 하는것이 아닌
log4j 를 이용하여 쿼리로그 출력하는 포스팅을 하도록 하겠습니다 .
그다음 이어서 스프링 + 아이바티스 기본 연동에 추가로 트랜잭션 관련 포스팅을 다루겠습니다.
by 개발로짜
Spring3 MVC + HttpClient를 이용하여 GET/POST/Multipart API 웹서버 구축해보기 (2) | 2014.12.07 |
---|---|
Spring3 spring-task를 이용하여 스케줄러 연동 및 동작시켜보기 + DB연동(MySQL기준) (0) | 2014.11.24 |
Spring3 + Mybatis 여러개 Datasource 연동법(다중 트랜잭션 포함) (0) | 2014.11.16 |
Spring3 + Mybatis연동에 추가로 트랜잭션 설정 하여 실패시 Rollback 처리하기 (2) | 2014.11.14 |
Spring3 + MyBatis 기본설정 + 연동테스트 후 쿼리로그 확인해보기 (8) | 2014.11.14 |