民宿网站建设方案,泰州网站建设方案优化,设计官方网站,郑州网站排名外包基于在前面几章我们已经学习了对MyBatis进行环境配置#xff0c;并利用SqlSessionFactory核心接口生成了sqlSession对象对数据库进行交互#xff0c;执行增删改查操作。这里我们就先来学习如何对数据进行查询的操作#xff0c;具体查询操作有以下几个步骤
创建实体类创建Ma…基于在前面几章我们已经学习了对MyBatis进行环境配置并利用SqlSessionFactory核心接口生成了sqlSession对象对数据库进行交互执行增删改查操作。这里我们就先来学习如何对数据进行查询的操作具体查询操作有以下几个步骤
创建实体类创建Mapper XML编写selectSQL标签开启驼峰命名映射新增mapperSqlSession执行select语言
首先我们需要有可供查询信息的数据表并被导入到我们IDEA开发工具中这里我导入了一个有关奶粉售卖信息的商品表 其中t-goods商品表内容如下 我们要做的操作是按照商品编号从大到小倒序排列并且将结果的前十条提取出来 步骤演示
第一步.创建实体类
创建一个com.mybatis.entity.Goods包创建命名为Goods代表商品的类内容如下
public class Goods{private Integer goodsId;//商品编号private String title;//标题private String subTitle;//子标题private Float originalCost;//原始价格private Float currentPrice;//当前价格private Float discount;//折扣率private Integer isFreeDelivery;//是否包邮1-包邮 0-不包邮private Integer categoryId;//分类编号
}
然后选中以上代码块快捷键AltInsert生成getter/setter方法
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;}public String getSubTitle() {return subTitle;}public void setSubTitle(String subTitle) {this.subTitle subTitle;}public Float getOriginalCost() {return originalCost;}public void setOriginalCost(Float originalCost) {this.originalCost originalCost;}public Float getCurrentPrice() {return currentPrice;}public void setCurrentPrice(Float currentPrice) {this.currentPrice currentPrice;}public Float getDiscount() {return discount;}public void setDiscount(Float discount) {this.discount discount;}public Integer getIsFreeDelivery() {return isFreeDelivery;}public void setIsFreeDelivery(Integer isFreeDelivery) {this.isFreeDelivery isFreeDelivery;}public Integer getCategoryId() {return categoryId;}public void setCategoryId(Integer categoryId) {this.categoryId categoryId;}
}第二步.创建Mapper XML文件
在resources目录下创建名为mappers的包创建goods.xml文件此文件用意是说明实体类与表之间的映射关系 第三步.编写selectSQL标签
在goods.xml中声明 文件内容
//xml标准声明部分
?xml version1.0 encoding UTF-8?//Mybatis的DTD部分
!DOCTYPE mapperPUBLIC -//mybatis.org//DTD Mapper 3.0//ENhttp://mybatis.org/dtd/mybatis-3-mapper.dtd//MyBatis映射部分 namespace:命名空间
mapper namespacegoodsselect idselectAll resultTypecom.mybatis.entity.Goodsselect * from t_goods order by goods_id desc limit 10//按照商品编号从大到小倒序排列并且将结果的前十条提取出来 /select
/mapper//resultTypecom.mybatis.entity.Goods指定了该查询操作执行后返回结果的类型这里将返回的结果映射成com.mybatis.entity.Goods类型的对象
第四步.新增mapper
然后在mybatis-config.xml中对它声明
mappersmapper resourcemappers/goods.xml/
/mappers
第五步.开启驼峰命名映射
settings!--goods_id goodsId 驼峰命名转换 --setting namemapUnderscoreToCamelCase valuetrue/
/settings
第六步.SqlSession执行select语言
打开MyBatisTestor测试用例类执行goods类中书写的SQ语句并且得到对应的结果
Test
public void testSelectAll(){SqlSession session null;try{session MyBatisUtils.openSession();ListGoods List session.selectList(goods.selectALL);//打印表结果for(Goods g: list){System.out.printin(g.getTitle());}}catch(Exception e){throw e;}finally{MyBatisUtils.closeSession(session);}}
演示查询结果