ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • 2018_09_27 MyBatis 사용법
    Spring_FrameWork 2018. 11. 20. 16:38

    blog.mybatis.org에서 다운로드 압축해제

    pdf에 있는

    2.1.1 Installation
    To use MyBatis you just need to include the mybatis-x.x.x.jar file in the classpath.
    If you are using Maven just add the following dependency to your pom.xml:

    <dependency>
    <groupId>org.mybatis</groupId>
    <artifactId>mybatis</artifactId>
    <version>x.x.x</version>
    </dependency>

    pom.xml에 태그 추가 


    mybatis-confg.xml에 

    <?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>
    <!– Properties 파일 설정 –>
    <properties resource=“db.properties” />
    <!– DataSource 설정 –>
    <environments default=“development” >
    <environment id=“development”>
    <!– JDBC 커밋과 롤백처리를 수동 / MANAGED: 자동 커밋 –>
    <transactionManager type=“MANAGED” />
    <!– UNPOOLED: 매번 커넥션을 열고 닫음 . POOLED : 한번만 열고 닫음 –>
    <dataSource type=“POOLED”>
    <property name=“driver” value=“${jdbc.driverClassName}” />
    <property name=“url” value=“${jdbc.url}” />
    <property name=“username” value=“${jdbc.username}” />
    <property name=“password” value=“${jdbc.password}” />
    </dataSource>
    </environment>
    </environments>
    <!– SQL Mapper 설정 –>
    <mappers>
    <!– SQL문장이 기술되는 MapperFile –>
    <mapper resource=“goods-mapping.xml” />
    </mappers>
    </configuration>

    good-mapping.xml에 sql문 설정하기 

    • parameterType -> 매개변수

    <?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”>
    <!– namespace(이름공간 /클래스보다 상위의 묶음단위) –>
    <mapper namespace=“mybatis.goodsMapper”>
    <!– 입력 –>
    <insert id=“insertGoods” parameterType=“test01.GoodsVO”>
    insert into goods 
    values (#{code},#{name},#{price},#{maker})
    </insert><!–#{code}: getter는 소문자로 작성  –>
    <!– 수정 –>
    <update id=“updateGoods” parameterType=“test01.GoodsVO”>
    update goods set name=#{name},price=#{price},maker=#{maker} 
    where code=#{code}
    </update>
    <!– 삭제 –>
    <delete id=“deleteGoods” parameterType=“test01.GoodsVO”>
    delete goods where code=#{code}
    </delete>
    <!– 검색 –>
    <select id=“getGoods” parameterType=“test01.GoodsVO” resultType=“test01.GoodsVO”>
    select * from goods where code=#{code}
    </select>

    <select id=“getGoodsList” resultType=“test01.GoodsVO”>
    select * from goods order by code asc
    </select>
    </mapper>

    추가

    GoodsDAO

    package test01;

    import java.util.List;

    import org.apache.ibatis.session.SqlSession;

    public class GoodsDAO {
    private SqlSession sqlSession;

    public GoodsDAO() {
    sqlSession = SqlClientFactory.getSqlMapClientIntance();
    }
    public int insertGoods(GoodsVO vo) {
    System.out.println(“==> Mybatis로 insertGoods()기능 처리”);
    return sqlSession.insert(“mybatis.goodsMapper.insertGoods”,vo);
    }
    public int updateGoods(GoodsVO vo) {
    System.out.println(“==> Mybatis로 updateGoods()기능 처리”);
    return sqlSession.update(“mybatis.goodsMapper.updateGoods”,vo);
    }
    public int deleteGoods(GoodsVO vo) {
    System.out.println(“==> Mybatis로 deleteGoods()기능 처리”);
    return sqlSession.delete(“mybatis.goodsMapper.deleteGoods”,vo);
    }
    public GoodsVO getGoods(GoodsVO vo) {
    System.out.println(“==> Mybatis로 getGoods()기능 처리”);
    return sqlSession.selectOne(“mybatis.goodsMapper.getGoods”,vo);
    }
    public List<GoodsVO> getGoodsList(GoodsVO vo) {
    System.out.println(“==> Mybatis로 getGoodsList()기능 처리”);
    return sqlSession.selectList(“mybatis.goodsMapper.getGoodsList”,vo);
    }
    }

    GoodsServiceImpl

    package test01;

    import java.util.List;

    import org.springframework.beans.factory.annotation.Autowired;
    import org.springframework.stereotype.Service;

    //Autowire 설정 말고 bean tag로 주입하기 때문에 setter생성
    public class GoodsServiceImpl implements GoodsService {
    private GoodsDAO goodsDAO;


    public GoodsDAO getGoodsDAO() {
    return goodsDAO;
    }

    public void setGoodsDAO(GoodsDAO goodsDAO) {
    this.goodsDAO = goodsDAO;
    }

    @Override
    public int insertGoods(GoodsVO vo) {

    return goodsDAO.insertGoods(vo);
    }

    @Override
    public int updateGoods(GoodsVO vo) {
    return goodsDAO.updateGoods(vo);
    }

    @Override
    public int deleteGoods(GoodsVO vo) {
    return goodsDAO.deleteGoods(vo);
    }

    @Override
    public GoodsVO getGoods(GoodsVO vo) {
    return goodsDAO.getGoods(vo);
    }

    @Override
    public List<GoodsVO> getGoodsList(GoodsVO vo) {
    return goodsDAO.getGoodsList(vo);
    }

    }


    bean.xml

    <?xml version=“1.0” encoding=“UTF-8”?>
    <beans xmlns=“http://www.springframework.org/schema/beans”
    xmlns:xsi=“http://www.w3.org/2001/XMLSchema-instance”
    xsi:schemaLocation=“http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd”>
    <bean id=“goodsDAO” class=“test01.GoodsDAO”/>
    <bean id=“goodsService” class=“test01.GoodsServiceImpl”>
    <property name=“goodsDAO” ref=“goodsDAO”/>
    </bean>

    </beans>

    생성파일 목록

    bean.xml: spring bean configration

    db.properties : file

    나머지 xml : xml file

    'Spring_FrameWork' 카테고리의 다른 글

    2018_10_01  (0) 2018.11.20
    Spring의 특징  (0) 2018.11.20
    DataSource설정  (0) 2018.11.20
    Class 'org.springframework.jdbc.core.JdbcTemplate' not found  (0) 2018.11.20
    AOP 빈태그예제정리  (0) 2018.11.20
Designed by Tistory.