카테고리 없음
[Project][Spring] mybatis로 db연결 및 초기 설정
321
2021. 2. 22. 07:05
간단한 게시판 DB생성
servlet-context.xml 파일
web.xml파일
pom.xml파일 위치 확인
위의 체크한 부분에서 하나씩 수정해 준다.
1. servlet-context.xml에
bean 등록
<beans:bean class="org.springframework.jdbc.datasource.DriverManagerDataSource" name="dataSource">
<beans:property value="oracle.jdbc.driver.OracleDriver" name="driverClassName"/>
<beans:property value="jdbc:oracle:thin:@localhost:1521:xe" name="url"/>
<beans:property value="human" name="username"/>
<beans:property value="human" name="password"/>
</beans:bean>
<beans:bean class="org.mybatis.spring.SqlSessionFactoryBean" id="sqlSessionFactory">
<beans:property name="dataSource" ref="dataSource"/>
<beans:property value="classpath:com/human/mybatis/dao/mapper/*.xml" name="mapperLocations"/>
</beans:bean>
<beans:bean id="sqlSession" class="org.mybatis.spring.SqlSessionTemplate">
<beans:constructor-arg index="0" ref="sqlSessionFactory" />
</beans:bean>
2. pom.xml에서
mybatis 디펜던시 추가
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-jdbc</artifactId>
<version>4.1.4.RELEASE</version>
</dependency>
<!-- https://mvnrepository.com/artifact/org.mybatis/mybatis -->
<dependency>
<groupId>org.mybatis</groupId>
<artifactId>mybatis</artifactId>
<version>3.2.8</version>
</dependency>
<dependency>
<groupId>org.mybatis</groupId>
<artifactId>mybatis-spring</artifactId>
<version>1.2.2</version>
</dependency>
3. web.xml에서 한글 인코딩 filter추가
<filter>
<filter-name>characterEncodingFilter</filter-name>
<filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class>
<init-param>
<param-name>encoding</param-name>
<param-value>UTF-8</param-value>
</init-param>
<init-param>
<param-name>forceEncoding</param-name>
<param-value>true</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>characterEncodingFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
src/main/java밑에 아래와 같은 파일 생성,
각 파일 내용 확인해 보면,
1. HomeController.java
2.IDao.java
*인터페이스란? 반복되는 기능을 구현하는 메서드들을 선언해 주는 것, 구현부는 각 클래스에서 나타낸다.
3. IDao.xml
2번의 인터페이스를 구현하는 구현부
- 특이하게 implements를 xml파일로 했군!
4. ContentDto.java
dto파일
실행
적절한 jsp파일 만들고(생략) 서버에서 돌린 뒤 주소창에 주소 치면 db의 내용이 나온다.
list 말고도 write나 delete도 IDao.xml에 비슷한 방식으로 추가하고, jsp파일을 만들어 구현하면 sql문이 작동되면서 실행된다.
+)
주소를 mybatis/list로 한 이유는 (HomeController에서 그렇게 설정했거나)
Server-Modules에서 기본주소를 mybatis라고 설정했기 때문
server-modules에서 드래그된 부분을 알맞게 고쳐주면 됨( / 만 남겨놔도 된다)