기초/spring framework2015. 7. 8. 15:30

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
Posted by ICT 기술 블로그