mybatis 自定义查询语句
通过mybatis插件生成的mapper文件只有基本的增、删、改、查、汇总。但是实际使用场景中,总是有各种需要连表、汇总、分组查询的需求,那我们一般都通过自定义查询语句去实现。
有时候会有表结构更改的,重新生成mapper、entity等文件会覆盖原文件。为了减少这种修改,我们一般都重新新建一个文件来区分开。
只需要两步就可以啦,少说话,看代码。
1. 新增自定义mapper文件
<?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="com.selicoco.sango.dao.UserInfoDao"> <select id="selectInfoSum" parameterType="Map" resultType="java.lang.Integer">
select count(id) as num
from msc_product_summary where birthDay BETWEEN #{dayStart} AND #{dayEnd}
</select> </mapper>
2. Dao配置并进行调用
@Repository
public class UserInfoDao { @Autowired
private UserInfoMapper userInfoMapper;
@Autowired
private SqlSessionTemplate sqlSessionTemplate; private final static String SANGO_USER_INFO_DAO_SPACE = "com.selicoco.sango.dao.UserInfoDao."; public int selectInfoSum (Date birthDayStart, Date birthDayEnd) {
Map<String, Date> param = new HashMap<>();
param.put("dayStart", birthDayStart);
param.put("dayEnd", birthDayEnd);
return sqlSessionTemplate.selectOne(SANGO_USER_INFO_DAO_SPACE + "selectInfoSum", param);
}
}
就这样简单,愉快的使用吧~
mybatis 自定义查询语句的更多相关文章
- Java开源协同办公项目:数据中心,自定义查询语句使用教程
O2OA提供的数据管理中心,可以让用户通过配置的形式完成对数据的汇总,统计和数据分组展现,查询和搜索数据形成列表数据展现.也支持用户配置独立的数据表来适应特殊的业务的数据存储需求.本文主要介绍如何在O ...
- 自定义查询语句SpringData
虽然官方的API中给我们提供了很多关键字的查询,但是还是不够灵活,因为我们在项目中,会遇见奇葩的业务,我们需要用SpringData中的一个@Query注解. 使用@Query自定义查询 这种查询可以 ...
- Mybatis动态查询语句
MyBatis中动态SQL语句完成多条件查询 标签: mybatis动态SQL多条件查询java.sql.SQLSyntaxEr 2015-06-29 19:00 22380人阅读 评论(0) 收藏 ...
- Spring Data Jpa 使用@Query标注自定义查询语句
https://blog.csdn.net/daniel7443/article/details/51159865 https://blog.csdn.net/pp_fzp/article/detai ...
- mybatis模糊查询语句
articletitle like concat('%',#{articletitle},'%')
- Mybatis,模糊查询语句,以及传参数的正确写法
不多说直接上代码! 接口: public interface CommodityMapper { int deleteByPrimaryKey(Integer productId); int inse ...
- mybatis查询语句的背后之封装数据
转载请注明出处... 一.前言 继上一篇mybatis查询语句的背后,这一篇主要围绕着mybatis查询的后期操作,即跟数据库交互的时候.由于本人也是一边学习源码一边记录,内容难免有错误或不足之处,还 ...
- MyBatis系列四 之 智能标签进行查询语句的拼接
MyBatis系列四 之 智能标签进行查询语句的拼接 使用Foreach进行多条件查询 1.1 foreach使用数组进行多条件查询 在MyBatis的映射文件中进行如下配置 <!--根据数组进 ...
- phpcmsv9自定义sql语句查询模型实现
在phpcmsv9中,自定义sql语句查询可不太好实现,传入sql语句查询很容易被内部转入生成一系列莫名其妙的sql语句,比如最佳前缀等等,直接造成sql语句查询错误,在此也提供两种解决办法,1修改底 ...
随机推荐
- bzoj1002 轮状病毒 暴力打标找规律/基尔霍夫矩阵+高斯消元
基本思路: 1.先观察规律,写写画画未果 2.写程序暴力打表找规律,找出规律 1-15的答案:1 5 16 45 121 320 841 2205 5776 151 ...
- 基于vue的移动端web音乐播放器
声明 以下只是学习完慕课网huangyi老师实战视频课程的笔记内容,仅供个人参考学习使用.如果对Vue2.0实战高级-开发移动端音乐WebApp感兴趣的话,请移步这里:https://coding.i ...
- 正确读取resources目录下的文件
问题描述:本地可以正常读取areacode.json文件,打成jar包在测试环境找不到该文件. 问题代码: static { StringBuffer strbuffer = new StringBu ...
- iPython清屏命令
!clear for Unix-like systems !CLS for Windows
- k8s和docker区别
简要介绍: docker是一个开源的应用容器引擎,开发者可以打包他们的应用以及依赖到一个容器中,发布到流行的liunx系统上,或者实现虚拟化. k8s是一个开源的容器集群管理系统,可以实现容器集群的自 ...
- css----overflow(布局)
CSS overflow 属性用于控制内容溢出元素框时显示的方式. CSS Overflow CSS overflow 属性可以控制内容溢出元素框时在对应的元素区间内添加滚动条. overflow属性 ...
- sublime text 3插件下载教程
Sublime官网下载地址:http://www.sublimetext.com/ 安装插件:(插件包管理Preferences Browse Packages) 插件官网:http://www.fe ...
- 大量TIME_WAIT连接的解决办法
1.使用keep alive连接(待补充) 2.修改tcp参数 根据TCP协议的连接断开规定,发起socket主动关闭的一方,socket将进入TIME_WAIT状态,TIME_WAIT状态将持续2个 ...
- create-react-app 配置 修改
1.端口号修改:https://www.jianshu.com/p/80a7603dda70(亲测有效) 在 根据 package.json 的启动,node_modules文件夹里面搜索reac ...
- html 和 body标签的 css 设置
个人猜测浏览器的机制:H5页面底板上有一张画布,画布高度可以被撑高.html.body等元素是固定在画布上的.浏览器中页面的滚动是跟着画布滚动的.(fixed定位是脱离这种机制的,相对浏览器窗口定位的 ...