MyBatis数据查询

MyBatis数据查询步骤:

 1.创建实体类Entity(包含对象属性和get和set方法)

 2.创建Mapper XML

 3.在Mapper XML中编写<select>SQL标签(书写SQL语句)

 4.在mybatis-config.xml中开启驼峰命名映射

 5.在mybatis-config.xml中增加<mapper>声明

 6.在SqlSession对象中执行select查询语句

创建实体类Entity

 位置src-main-java-com-MyBatis-entity-Goods.java

 在entity文件夹下创建一个新的Goods类(部分代码省略)

public class Goods {
    private Integer goodsId;//商品编号
    private String title;//商品标题
    public Integer getGoodsId() {
        return goodsId;
    }
    public void setGoodsId(Integer goodsId) {
        this.goodsId = goodsId;
    }
    public String getTitle() {
        return title;
    }
    public void setTitle(String title) {
        this.title = title;
    }
}

创建Mapper XML,编写<select>标签

 位置src-main-resources-mappers-goods.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="goods">
    <select id="selectAll" resultType="com.MyBatis.entity.Goods">
        select * from t_goods order by goods_id desc limit 10
    </select>
</mapper>

在mybatis-config.xml中增加<mapper>标签,开启驼峰命名映射(增加部分的代码)

<?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>
    <!--开启驼峰命名映射-->
    <settings>
        <setting name="mapUnderscoreToCamelCase" value="true"/>
    </settings>
    <!--environments中可设置多个环境信息,通过default设置默认指向的数据库-->
    ......
    <!--增加mapper声明-->
    <mappers>
        <mapper resource="mappers/goods.xml"></mapper>
    </mappers>
</configuration>

最后在SqlSession对象中执行select查询语句

@Test
    public void testSelectAll(){
        SqlSession sqlSession=null;
        try{
            sqlSession=MyBatisUtils.openSession();
            //selectList方法参数为good.xml文件中 (mapper的属性namespace).(select的属性id)
            List<Goods> list = sqlSession.selectList("goods.selectAll");
            for(Goods g:list){
                System.out.println(g.getGoodsId()+" "+g.getTitle());
            }
        }catch (Exception e){
            throw e;
        }finally {
            MyBatisUtils.closeSession(sqlSession);
        }
    }

 

posted @ 2022-04-07 20:02  南风知君  阅读(453)  评论(0)    收藏  举报