반응형
①
Package Explorer 열기Window > Show View > Other > Java Browsing - Packages > Open
②
메이븐 코드 추가프로젝트 관리 및 빌드 파일인 pom.xml 파일에 다음 내용을 추가한다.
2-1
Oracle JDBC Driver Repositorypom.xml 파일 </properties> 아래에 레포지토리 코드를 추가한다.
1 2 3 4 5 6 7 | <!-- 오라클 --> <repositories> <repository> <id>oracle</id> <url>http://maven.jahia.org/maven2</url> </repository> </repositories> | cs |
2-2
dependency 추가pom.xml의 </dependencies> 바로 위에 spring-jdbc, junit, spring-test, log4jdbc, mybatis,
mybatis-spring을 추가한다.
src/main/resources 우클릭 > new > Other > General - File > Next > Filename=log4jdbc.log4j2.properties > Finish
log4jdbc.log4j2.properties 파일을 연 후 아래 코드를 추가한다.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 | <!-- spring-jdbc --> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-jdbc</artifactId> <version>${org.springframework-version}</version> </dependency> <!-- Test --> <dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> <version>4.12</version> <scope>test</scope> </dependency> <!-- spring-test --> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-test</artifactId> <version>${org.springframework-version}</version> <scope>test</scope> </dependency> <!-- log4jdbc-log4j2-jdbc4 --> <dependency> <groupId>org.bgee.log4jdbc-log4j2</groupId> <artifactId>log4jdbc-log4j2-jdbc4</artifactId> <version>1.16</version> </dependency> <!-- org.mybatis/mybatis --> <dependency> <groupId>org.mybatis</groupId> <artifactId>mybatis</artifactId> <version>3.4.1</version> </dependency> <!-- mybatis-spring --> <dependency> <groupId>org.mybatis</groupId> <artifactId>mybatis-spring</artifactId> <version>1.3.0</version> </dependency> | cs |
2-3
로깅 설정 추가src/main/resources 우클릭 > new > Other > General - File > Next > Filename=log4jdbc.log4j2.properties > Finish
log4jdbc.log4j2.properties 파일을 연 후 아래 코드를 추가한다.
1 2 | log4jdbc.spylogdelegator.name=net.sf.log4jdbc.log.slf4j.Slf4jSpyLogDelegator log4jdbc.dump.sql.maxlinelength=0 | cs |
두 번째 줄은 쿼리를 정렬하는 용도이므로 선택 사항이고
log4j.xml 파일에서 sql 쿼리 로깅을 설정할 수 있다.
③
ojdbc 추가src/main/webapp/WEB-INF에 Folder를 하나 만들고 이름을 lib로 지정한다.
lib 폴더에 ojdbc jar 파일을 삽입하고 jar 파일을 우클릭해서 Build Path > Add to Build Path를 적용한다.
그리고 Referenced Libraries에 ojdbc가 추가됐는지 확인한다.
④
마이바티스 연동src/main/webapp/WEB-INF/spring/root-context.xml 파일 아래에 Namespaces 클릭한후
beans, context, jdbc, mybatis-spring 항목을 체크한다.
namespace 탭이 없다면 source 탭으로 이동해서 beans 태그의 xmlns 옵션에 아래와 같이 작성한다.
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:context="http://www.springframework.org/schema/context"
xmlns:jdbc="http://www.springframework.org/schema/jdbc"
xmlns:mybatis-spring="http://mybatis.org/schema/mybatis-spring"
xsi:schemaLocation="http://www.springframework.org/schema/jdbc http://www.springframework.org/schema/jdbc/spring-jdbc-3.1.xsd
http://mybatis.org/schema/mybatis-spring http://mybatis.org/schema/mybatis-spring-1.2.xsd
http://www.springframework.org/schema/beans https://www.springframework.org/schema/beans/spring-beans.xsd
http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-3.1.xsd">
그리고 그 다음 줄에 오라클 ID/PW와 마이바티스 연동 코드를 입력한다.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 | <!-- 오라클 접속 --> <bean class="org.springframework.jdbc.datasource.DriverManagerDataSource" id="dataSource"> <property name="driverClassName" value="net.sf.log4jdbc.sql.jdbcapi.DriverSpy"/> <property name="url" value="jdbc:log4jdbc:oracle:thin:@localhost:1521/orcl"/> <property name="username" value="system"/> <property name="password" value="1234"/> </bean> <!-- Mybatis 연동 --> <bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean"> <property name="dataSource" ref="dataSource"></property> <property name="configLocation" value="classpath:/mybatis-config.xml"></property> <property name="mapperLocations" value="classpath:mappers/**/*Mapper.xml"/> </bean> <bean id="sqlSession" class="org.mybatis.spring.SqlSessionTemplate" destroy-method="clearCache"> <constructor-arg name="sqlSessionFactory" ref="sqlSessionFactory"></constructor-arg> </bean> | cs |
⑤
JUnit 동작 테스트src/main/resources > other > mappers 폴더 생성 후 boardMapper.xml 파일을 생성한다.
boardMapper.xml
1 2 3 4 5 6 7 | <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> <mapper namespace="boardMapper"> </mapper> | cs |
src/main/resources에 mybatis-config.xml 파일을 생성하고 아래 코드를 추가한다.
mybatis-config.xml
1 2 3 4 5 6 7 | <?xml version="1.0" encoding="UTF-8" ?> <!DOCTYPE configuration PUBLIC "-//mybatis.org//DTD Config 3.0//EN" "http://mybatis.org/dtd/mybatis-3-config.dtd"> <configuration> </configuration> | cs |
src/test/java -> com.pkg.controller에 Test.java파일을 만들고 아래 코드를 추가한다.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 | package com.pkg.study; import java.sql.Connection; import javax.inject.Inject; import javax.sql.DataSource; import org.apache.ibatis.session.SqlSession; import org.apache.ibatis.session.SqlSessionFactory; import org.junit.runner.RunWith; import org.springframework.test.context.ContextConfiguration; import org.springframework.test.context.junit4.SpringJUnit4ClassRunner; @RunWith(SpringJUnit4ClassRunner.class) @ContextConfiguration(locations ={"file:src/main/webapp/WEB-INF/spring/**/root-context.xml"}) public class Test { @Inject private DataSource ds; @Inject private SqlSessionFactory sqlFactory; @org.junit.Test public void test() throws Exception{ try(Connection conn = ds.getConnection()){ System.out.println(conn); } catch(Exception e){ e.printStackTrace(); } } @org.junit.Test public void factoryTest() { System.out.println(sqlFactory); } @org.junit.Test public void sessionTest() throws Exception{ try(SqlSession session = sqlFactory.openSession()) { System.out.println(session); }catch(Exception e) { e.printStackTrace(); } } } | cs |
public class Test{ 안에 마우스 우클릭후 Run As > JUnit Test를 클릭한다.
Junit이 에러 없이 실행되면 성공이다. 만약 junit이 임포트되지 않는다면 메이븐에 설정된 자바 버전과 메이븐 플러그인
버전을 올리고 동일하게 맞춰준다. 아래 빨간색으로 하이라이팅된 부분의 버전을 수정하면 된다.
1 2 3 4 5 6 7 8 9 10 11 12 13 | <properties> <java-version>1.8</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> .... .... <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-compiler-plugin</artifactId> <version>2.5.1</version> <source>1.8</source> <target>1.8</target> | cs |
프로젝트 우클릭 > Maven > Update Project > Force Update of~ 체크 > Ok
자료 출처 : https://melonpeach.tistory.com/9
반응형
'해킹-보안' 카테고리의 다른 글
Spring RSA 암호화 적용하기 (0) | 2021.01.30 |
---|---|
Mybatis $와 # 차이 (0) | 2021.01.13 |
DirBuster를 활용한 웹 서버 파일 및 디렉터리 스캔 (0) | 2021.01.11 |
WI-FI deauth 공격 (2) | 2020.12.22 |
SOP와 CORS 개념 (2) | 2020.12.21 |