1. pom.xml 파일에 오라클 설치 구문 추가하여 설치하기 (Maven project update)
<dependency>
<groupId>com.oracle</groupId>
<artifactId>ojdbc14</artifactId>
<version>10.2.0.4.0</version>
<scope>system</scope>
<systemPath>${project.basedir}/src/main/webapp/WEB-INF/lib/ojdbc8.jar</systemPath>
</dependency>
- WEB/INF에 본인에게 맞는 ojdbc jar 파일 추가하기 (꼭 WEB/INF가 아니어도 된다)
- Jsp 파일 열어서 오류 없는지 확인해 보기
Servlet-Context.xml
<beans:bean id="database" class="org.apache.commons.dbcp.BasicDataSource">
<beans:property name="driverClassName" value="oracle.jdbc.OracleDriver"/>
<beans:property name="url" value="오라클 경로"/>
<beans:property name="username" value="아이디"/>
<beans:property name="password" value="비밀번호"/>
</beans:bean>
<beans:bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean">
<beans:property name="dataSource" ref="database"/>
<beans:property name="configLocation" value="/WEB-INF/Config.xml"> </beans:property>
</beans:bean>
<beans:bean id="sqlSessionTemplate" class="org.mybatis.spring.SqlSessionTemplate">
<beans:constructor-arg>
<beans:ref bean="sqlSessionFactory"/>
</beans:constructor-arg>
</beans:bean>
<beans:bean id="multipartResolver" class="org.springframework.web.multipart.commons.CommonsMultipartResolver">
<beans:property name="defaultEncoding" value="UTF-8"></beans:property>
<beans:property name="maxUploadSize" value="300000000"></beans:property>
</beans:bean>
<context:component-scan base-package="sist.com.web" />
<context:component-scan base-package="sist.com.di.basic6"/>
<context:component-scan base-package="sist.com.controller"/>
<context:component-scan base-package="sist.com.dao"/>
사이트에서 파일을 전송받을 수 있게 하는 방법
<form action="/web/boardInsert.do" method="post" name="insertFrm" enctype="multipart/form-data">
<beans:bean id="multipartResolver" class="org.springframework.web.multipart.commons.CommonsMultipartResolver">
<beans:property name="defaultEncoding" value="UTF-8"></beans:property>
<beans:property name="maxUploadSize" value="300000000"></beans:property>
</beans:bean>
- Multipart는 Spring에서 지원해 주고 있으므로 bean 이름을 multipartResolver로 객체 등록하여 사용한다.
- maxUploadSize는 최대 업로드할 수 있는 파일의 크기를 지정해 주는 것이다. 바이트 크기이며, 기본 크기는 10240이다.
Config
<?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>
<typeAliases>
<typeAlias type="sist.com.vo.MvcBoardVO" alias="board" />
</typeAliases>
<mappers>
<mapper resource="sist/com/dao/mapper.xml" />
</mappers>
</configuration>
- VO의 경로와 Mapper의 경로를 가지고 있다.
Mapper
<?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="sist.com.vo.apple">
<insert id="insertBoard" parameterType="board">
INSERT INTO BOARDMVC(NO, AUTHOR, TITLE, PASSWORD, CONTENTS, HIT, REGDATE, FILENAME)
VALUES(BOARDMVC_SEQ.NEXTVAL, #{author}, #{title}, #{password}, #{contents}, 0, sysdate, #{fileName})
</insert>
</mapper>
SqlSessionTemplate
- SqlSessionTemplate은 스프링 연동 모듈의 핵심이다.
- SqlSession을 구현하고 코드에서 SqlSession을 대체한다.
- 쓰레드에 안전하고 여러 개의 DAO, Mapper에서 공유할 수 있다.
<beans:bean id="sqlSessionTemplate" class="org.mybatis.spring.SqlSessionTemplate">
<beans:constructor-arg>
<beans:ref bean="sqlSessionFactory"/>
</beans:constructor-arg>
</beans:bean>
참고한 사이트 : https://linked2ev.github.io/mybatis/2019/09/08/MyBatis-4-DAO와-SqlSessionTemplate,-SqlSessionDaoSupport/