알쓸전컴(알아두면 쓸모있는 전자 컴퓨터)
spring oracle db + mybatis +log4jdbc 연결 본문
spring oracle db 연결
spring 프레임 워크에서
oracle db 접속 방법입니다.
먼저 라이브러리 설정을 해야 합니다.
<properties>
<java-version>1.6</java-version>
<org.springframework-version>3.1.1.RELEASE</org.springframework-version>
<org.aspectj-version>1.6.10</org.aspectj-version>
<org.slf4j-version>1.6.6</org.slf4j-version>
<project.build.sourceEncoding>utf-8</project.build.sourceEncoding>
<project.reporting.outputEncoding>utf-8</project.reporting.outputEncoding>
</properties>
<repositories>
<repository>
<id>codelds</id>
<url>https://code.lds.org/nexus/content/groups/main-repo</url>
</repository>
</repositories>
<dependencies>
<!-- Spring -->
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-context</artifactId>
<version>${org.springframework-version}</ve
....
....
....
....
<repositories>
<repository>
<id>codelds</id>
<url>https://code.lds.org/nexus/content/groups/main-repo</url>
</repository>
</repositories>
부분을 </properties> 와 <dependencies> 태그 사이에 입력해 줍니다.
그리고 DB이용 개발을 할때는 DB 로그가 무척 도움이 많이 되기 때문에
log4jdbc 도 연결 하겠습니다.
그러기 위해서
log4jdbc 도 라이브러리를 추가 해줍니다.
<!-- Logging -->
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-api</artifactId>
<version>${org.slf4j-version}</version>
</dependency>
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>jcl-over-slf4j</artifactId>
<version>${org.slf4j-version}</version>
<scope>runtime</scope>
</dependency>
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-log4j12</artifactId>
<version>${org.slf4j-version}</version>
<scope>runtime</scope>
</dependency>
<dependency>
<groupId>log4j</groupId>
<artifactId>log4j</artifactId>
<version>1.2.15</version>
<exclusions>
<exclusion>
<groupId>javax.mail</groupId>
<artifactId>mail</artifactId>
</exclusion>
<exclusion>
<groupId>javax.jms</groupId>
<artifactId>jms</artifactId>
</exclusion>
<exclusion>
<groupId>com.sun.jdmk</groupId>
<artifactId>jmxtools</artifactId>
</exclusion>
<exclusion>
<groupId>com.sun.jmx</groupId>
<artifactId>jmxri</artifactId>
</exclusion>
</exclusions>
<scope>runtime</scope>
</dependency>
<dependency>
<groupId>org.bgee.log4jdbc-log4j2</groupId>
<artifactId>log4jdbc-log4j2-jdbc4</artifactId>
<version>1.16</version>
</dependency>
<dependencies> </dependencies> 태그 안에 넣어 줍으로서 maven 이 자동으로 라이브러리를 설치 합니다.
그리고 역시나 <dependencies> </dependencies> 안에 com.oracle 라이브러리를 추가 해줍니다.
<!-- ojdbc6 db -->
<dependency>
<groupId>com.oracle</groupId>
<artifactId>ojdbc6</artifactId>
<version>11.2.0.3</version>
</dependency>
그리고 나서
mybatis 는
<!-- MyBatis 3.4.1 -->
<!-- https://mvnrepository.com/artifact/org.mybatis/mybatis -->
<dependency>
<groupId>org.mybatis</groupId>
<artifactId>mybatis</artifactId>
<version>3.4.1</version>
</dependency>
<!-- MyBatis-Spring -->
<!-- https://mvnrepository.com/artifact/org.mybatis/mybatis-spring -->
<dependency>
<groupId>org.mybatis</groupId>
<artifactId>mybatis-spring</artifactId>
<version>1.3.0</version>
</dependency>
다음과 같이 추가 해줍니다 .
그다음
src>>webapp>>WEB-INF>>spring>>root-context.xml
을 열어서
<!-- fdc -->
<bean id="dataSource_fdc" class="org.springframework.jdbc.datasource.DriverManagerDataSource">
<property name="driverClassName" value="net.sf.log4jdbc.sql.jdbcapi.DriverSpy"></property>
<property name="url" value="jdbc:log4jdbc:oracle:thin:@localhost:1521:XE">
</property>
<property name="username" value="ID"></property>
<property name="password" value="PASSWROD"></property>
</bean>
<!-- mybatis SqlSessionFactoryBean -->
<bean id="sqlSessionFactory_fdc" class="org.mybatis.spring.SqlSessionFactoryBean">
<property name="dataSource" ref="dataSource_fdc"></property>
<property name="configLocation" value="classpath:/mybatis-config.xml"></property>
<property name="mapperLocations" value="classpath:mappers/**/*Mapper.xml"></property>
</bean>
<!-- mybatis -->
<bean id="sqlSession_fdc" class="org.mybatis.spring.SqlSessionTemplate"
destroy-method="clearCache">
<constructor-arg name="sqlSessionFactory" ref="sqlSessionFactory_fdc"></constructor-arg>
</bean>
위와 같이 빈을 만들어 줍니다.
<property name="configLocation" value="classpath:/mybatis-config.xml"></property>
<property name="mapperLocations" value="classpath:mappers/**/*Mapper.xml"></property>
mybatis 설정 부분 입니다.
실제로 사용을 할때에는
@Resource(name = "sqlSession_fdc")
private SqlSession sqlSession_fdc;
위와 같이 설정 해서 사용 합니다.
'Web > Spring Framework tip' 카테고리의 다른 글
Spring Boot, MyBatis 연동[멀티 데이터 베이스] (0) | 2019.07.08 |
---|---|
spring -> tomcat 원격 배포 deploy (0) | 2018.10.23 |
spring 3.0 자동 bean 생성 (0) | 2018.04.05 |
MyBbatis Query에 부등호(<) 사용시 발생하는 Error (0) | 2018.03.22 |
axios(post) -> spring framework json 객체 변환 (0) | 2018.03.03 |
Comments