전자정부 프레임워크에 sqLite3 DB 연결 하기
안녕하세요.
오늘은 sqLite3 DB를 연결해보자 합니다.
이전에 테스트로 sqLite3를 다운받아 사용했었습니다.
[개발/DB] - 윈도우 64비트 SQLite3 설치 및 실행(콘솔 및 그래픽 활용 가능)
설치한김에 전자정부 프레임워크에 연결까지 해보고 삭제하려고합니다...
간혹 전자정부프레임워크에 2개의 DB를 연결하는 방법을 찾는분들도 계시고하니깐요.
먼저 pom.xml에 메이븐을 설정합니다.
gradle이나 웹 프로젝트에는 각각 설정하시면 될거 같습니다.
pom.xml 추가
<dependency>
<groupId>org.xerial</groupId>
<artifactId>sqlite-jdbc</artifactId>
<version>3.25.2</version>
</dependency>
context-datasource.xml 설정
<bean id="dataSourceSqlite" class="org.springframework.jdbc.datasource.SimpleDriverDataSource" >
<property name="driverClass" value="org.sqlite.JDBC"/>
<property name="url" value="jdbc:sqlite:C:/sqlite/test.db"/>
</bean>
아직 비밀번호 설정하는 법은 배우지 못했습니다.
기본 로컬경로에 있는 DB를 연결하였습니다.
context-sqlMap.xml설정
<bean id="sqlMapClientSqlite" class="egovframework.rte.psl.orm.ibatis.SqlMapClientFactoryBean">
<property name="configLocation" value="classpath:/egovframework/sqlmap/config/sql-map-config.xml"/>
<property name="mappingLocations" value="classpath:/egovframework/sqlmap/sql/sqlite/*/*.xml"></property>
<property name="dataSource" ref="dataSourceSqlite"/>
</bean>
저는 쿼리를 작성하는 부분으로
resources/egovframework/sqlmap/sql/sqlite/data 경로에 data.xml을 생성하였습니다.
테스트를 위한 쿼리 입으로 간략하게 적었습니다.
그리고 sqlMapclient로 사용할 자바 클래스를 만들었습니다.
SqliteDataAbstractDAO 생성
public class SqliteDataAbstractDAO extends EgovAbstractDAO {
/**
* DB별 sqlMapClient 지정
*/
@Resource(name = "sqlMapClientSqlite")
public void setSuperSqlMapClient(SqlMapClient sqlMapClient) {
super.setSuperSqlMapClient(sqlMapClient);
}
}
그리고 일반적으로 Service, ServiceImpl의 사용법은 똑같고
DAO 단에서 상속을 SqliteDataAbstractDAO 로 받으시면 됩니다.
@Repository("sqliteDAO")
public class SqliteDAO extends SqliteDataAbstractDAO {
/** data 정보 */
public List
혹시 궁금하신점 있으면 댓글남겨주세요.
좋은하루보내세요.