1. http://www.mvnrepository.com 에서 mybatis라고 검색하여 결과값을 가져옴
mybatis와 mybatis-spring의 dependency를 가져와야 된다. 그리고 jdbc dependecy도 가저온다
2. 가져온 xml을 pom.xml에 dependencies 항목에 넣는다
<!-- Spring JDBC -->
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-jdbc</artifactId>
<version>4.1.7.RELEASE</version>
</dependency>
<!-- mybatis -->
<dependency>
<groupId>org.mybatis</groupId>
<artifactId>mybatis</artifactId>
<version>3.2.8</version>
</dependency>
<!-- mybatis spring -->
<dependency>
<groupId>org.mybatis</groupId>
<artifactId>mybatis-spring</artifactId>
<version>1.2.2</version>
</dependency>
3. servlet-context.xml에서 빈설정
<beans:bean name="dataSource" class="org.springframework.jdbc.datasource.DriverManagerDataSource">
<beans:property name="driverClassName" value="oracle.jdbc.OracleDriver"/>
<beans:property name="url" value="jdbc:oracle:thin:@127.0.0.1:1521:xe"/>
<beans:property name="username" value="test"/>
<beans:property name="password" value="1234"/>
</beans:bean>
<beans:bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean">
<beans:property name="dataSource" ref="dataSource"/>
<beans:property name="mapperLocations" value="classpath:com/spring/mybatis/dao/mapper/*.xml"/>
</beans:bean>
<beans:bean id="sqlSession" class="org.mybatis.spring.SqlSessionTemplate">
<beans:constructor-arg index="0" ref="sqlSessionFactory"/>
</beans:bean>
4. package com.spring.mybatis.dao 에 IDAO 인터페이스를 만들어준다
public interface IDao {
public ArrayList<BDto> listDao();
public void writeDao(String bWrite, String bTitle, String bContent);
public BDto content_view(int bId);
public void deleteDao(String bId);
}
5. com.spring.mybatis.dao.mapper 안에 IDAO인퍼페이스를 바탕으로 xml 파일을 생성해준다
4번항목의 인터페이스를 참고하여 아래와 같이 xml 파일을 만들어준다
<?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="com.spring.mybatis.dao.IDao">
<select id="listDao" resultType="com.spring.mybatis.dto.BDto">
select * from my_board order by bId DESC
</select>
<insert id="writeDao">
insert into my_board(bId, bWrite, bTitle, bContent)
values(my_board_seq.nextval, ${param1}, ${param2}, ${param3})
</insert>
<delete id="deleteDao">
delete from my_board where bId=#{param1}
</delete>
</mapper>
※ 파라메타를 받을 시 $는 타입을 아는 경우, # 타입을 모르는 경우
6. package com.spring.mybatis.controller 에서 BController를 작성해준다
@Controller
public class BController {
@Autowired
private SqlSession sqlSession;
@RequestMapping("/list")
public String list(Model model){
IDao dao = sqlSession.getMapper(IDao.class);
model.addAttribute("list", dao.listDao());
return "board/list";
}
@RequestMapping(method=RequestMethod.POST, value="/write")
public String write(HttpServletRequest request, Model model){
String bWrite = request.getParameter("bWirte");
String bTitle = request.getParameter("bTitle");
String bContent = request.getParameter("bContent");
IDao dao = sqlSession.getMapper(IDao.class);
dao.writeDao(bWrite, bTitle, bContent);
return "redirect:/list";
}
@RequestMapping("delete")
public String delete(HttpServletRequest request, Model model){
String bId = request.getParameter("bId");
IDao dao = sqlSession.getMapper(IDao.class);
dao.deleteDao(bId);
return "redirect:/list";
}
}
※ http://blog.mybatis.org/ 접속
product 항목에서 mybaits3의 docs 클릭
Configuration xml에 가면 사용법이나온다
'기초 > spring framework' 카테고리의 다른 글
spring security (0) | 2015.07.10 |
---|---|
spring utf-8 설정 (0) | 2015.07.08 |
Spring JDBC (0) | 2015.07.06 |
한글처리 (0) | 2015.07.02 |
profile 사용하기 (0) | 2015.06.25 |