本文主要是介绍MyBatis框架实现一个简单的数据查询操作,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
《MyBatis框架实现一个简单的数据查询操作》本文介绍了MyBatis框架下进行数据查询操作的详细步骤,括创建实体类、编写SQL标签、配置Mapper、开启驼峰命名映射以及执行SQL语句等,感兴趣的...
基于在前面几章我们已经学习了对MyBATis进行环境配置,并利用SqlSessionFactory核心接口生成了sqlSession对象对数据库进行交互,执行增删改查操作。这里我们就先来学习如何对数据进行查询的操作,具体查询操作有以下几个步骤
- 创建实体类
- 创建Mapper XML
- 编写<select>SQL标签
- 开启驼峰命名映射
- 新增<mapper>
- SqlSession执行select语言
首先,我们需要有可供查询信息的数据表并被导入到我们IDEA开发工具中,这里我导入了一个有关奶粉售卖信息的商品表
其中t-goods商品表内容如下
我们要做的操作是按照商品编号从大到小倒序排列,并且将结果的前十条提取出来 步骤演示:
第一步.创建实体类
创建一个com.mybatis.entity.Goods包,创建命名为Goods代表商品的类,内容如下:
public class Goods{
private Integer goodsId;//商品编号
China编程private String title;//标题
private String subTitle;//子标题
private Float originalCost;//原始价格
private Float currentPrice;//当前价格
private Float discount;//折扣率
private Integer isFreeDelivery;//是否包邮,1-包邮 0-不包邮
private Integer categoryId;//分类编号
}
然后选中以上代码块快捷键Alt+Insert生成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文件,此文件用意是说明实体类与表之间的映射关系
第三步.编写<select>SQL标签
在goods.xml中声明 文件内容:
//xml标准声明部分 <?xml version="1.0" encoding ="UTF-8"?> //Mybatis的DTD部分 <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> //MyBatis映射部分 namespace:命名空间 <mapper namespace="goods"> <select id="selectAll" resultType="com.mybatis.entity.Goods"> select * from t_goods order by goods_id desc limit 10 //按照商品编号从大到小倒序排列,并且将结果的前十条提取出来 </select> </mapper> //resultType="com.mybatis.entity.Goods"指定了该查询操作执行后返回结果的类型,这里将返回的结果映射成com.mybatis.entity.Goods类型的对象
第四步.新增<mapper>
然python后在mybathttp://www.chinasem.cnis-config.xml中对它声明
<mappers> <maandroidpper resource="mappers/goods.xml"/> </mappers>
第五步.开启驼峰命名映射
<settings> <!--goods_id ==> goodsId 驼峰命名转换 --> <setting name="mapUnderscoreToCamelCase" value="true"/> </settings>
第六步.SqlSession执行select语言
打开MyBatisTestor测试用例类,执行goods类中书写的SQ语句,并且得到对应的结果
@Test public void testSelectAll(){ SqlSession session = null; try{ session = MyBatisUtils.openSession(); List<Goods> List = session.selectList("goods.selectALL"); //打印表结果 for(Goods g: list){ System.out.printin(g.getTitle()); } }catch(Exception e){ throw e; }finally{ MyBatisUtils.closeSession(session); } }
演示查询结果:
到此这篇关于MyBatis框架实现一个简单的数据查询操作的文章就介绍到这了,更多相关MyBatis 数据查询操作内容请搜索编程China编程(www.chinasem.cn)以前的文章或继续浏览下面的相关文章希望大家以后多多支持China编程(www.chinasem.cn)!
这篇关于MyBatis框架实现一个简单的数据查询操作的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!