mybatis查询对象集合注意事项
来源:互联网 发布:js弹窗按键 编辑:程序博客网 时间:2024/06/04 17:49
第一步:LiveRateMapper里面定义查询方法:
通过对象作为参数查询对象集合
List<LiveRatePage> findAllLiveRate(LiveRatePage liveRatePage);
第二步:根据查询条件写出正确的sql语句:
select (@i:=@i+1) as rank,a.* from (select DATE_FORMAT(l.CREATE_DT , '%Y-%m-%d')CREATE_DT,l.DAY_AGE,l.FARMER_NAME,l.LIVE_RATE,l.AREA FROM liverate l WHERE
DATE_FORMAT(l.CREATE_DT , '%Y-%m-%d') >=DATE_FORMAT('2017-06-01','%Y-%m-%d')
and DATE_FORMAT(l.CREATE_DT , '%Y-%m-%d')<=DATE_FORMAT('2017-06-10','%Y-%m-%d')
ORDER BY l.LIVE_RATE desc
LIMIT 0,20)a,(select @i:=0) as it
;
第三步:LiveRateMapper.xml定义查询语句:
改写mybatis动态sql
<select id="findAllLiveRate" resultMap="BaseResultMap2" parameterType="com.znyq.wfCloud.admin.pageModel.LiveRatePage">
select (@i:=@i+1) as rank,a.* from (select DATE_FORMAT(l.CREATE_DT , '%Y-%m-%d')CREATE_DT,l.DAY_AGE,l.FARMER_NAME,l.LIVE_RATE,l.AREA
FROM liverate l
WHERE 1 = 1
<if test="date1 != null and ''!= date1">
<![CDATA[ and DATE_FORMAT(l.CREATE_DT, '%Y-%m-%d') >=DATE_FORMAT(#{date1},'%Y-%m-%d') ]]>
</if>
<if test="date2 != null and ''!= date2">
<![CDATA[ and DATE_FORMAT(l.CREATE_DT, '%Y-%m-%d') <=DATE_FORMAT(#{date2},'%Y-%m-%d') ]]>
</if>
ORDER BY l.LIVE_RATE desc
limit #{curSize},#{pageSize})a,(select @i:=0) as it
</select>
第四步:配置正确返回对象属性
<resultMap id="BaseResultMap2" type="com.znyq.wfCloud.admin.pageModel.LiveRatePage" >
<result column="rank" property="rank" jdbcType="VARCHAR" />
<result column="DAY_AGE" property="dayAge" jdbcType="VARCHAR" />
<result column="LIVE_RATE" property="liveRate" jdbcType="VARCHAR" />
<result column="FARMER_NAME" property="farmerName" jdbcType="VARCHAR" />
<result column="AREA" property="area" jdbcType="VARCHAR" />
<result column="CREATE_DT" property="rankDate" jdbcType="VARCHAR" />
</resultMap>
对象:LiveRatePage
属性:private String dayAge;
public String getDayAge() {
return dayAge;
}
public void setDayAge(String dayAge) {
this.dayAge = dayAge;
}
ps对象的其他属性和set,get省略了,注意的地方我都标红了查询的id要唯一
返回的结果集配置id要唯一对应,查询的列字段和对象属性要注意对应
- mybatis查询对象集合注意事项
- mybatis 联合查询注意事项
- Mybatis查询语句返回对象和泛型集合
- Mybatis查询语句返回对象和泛型集合
- mybatis传集合参数 注意事项
- mybatis集合查询
- MyBatis的集合查询
- Mybatis关联、集合查询
- mybatis in集合查询
- Mybatis的集合查询
- mysql + mybatis分组查询注意事项
- MyBatis查询嵌套对象
- Mybatis一对多查询的子对象集合中对象数目不对
- mysql+mybatis 集合查询配置
- MyBatis集合查询易错
- MyBatis根据数组、集合查询
- MyBatis根据数组、集合查询
- LINQ - 查询对象集合
- 设计模式之观察者模式
- SpringMVC多视图解析器(jsp,html,title解析器)
- springmvc controller层
- MyEclipse 中tomcat发生异常:Can't load AMD 64-bit .dll on a IA 32-bit platform
- 关于Spring任务调度<task:scheduled-tasks>的cron参数详解
- mybatis查询对象集合注意事项
- Eclipse快速创建自定义类文件和其方法
- Java序列化jackson
- CPU vs. GPU
- C++析构函数为什么要为虚函数
- STM32启动过程解读与跟踪验证
- Hibernate save()与persist()区别
- hook
- openGL ES学习四