ssm框架查询数据并实现分页功能示例
/**
* DataGrid对象
*
*/
@SuppressWarnings("rawtypes")
public class DataGrid {
private int total = 0;
private List rows = new ArrayList();
public int getTotal() {
return total;//数据总数
}
public void setTotal(int total) {
this.total = total;
}
public List getRows() {
return rows;//页面显示的数据
}
public void setRows(List rows) {
this.rows = rows;
}
}
public class UserInfoDO {
private String userName;// 用户姓名
private String phoneNum;//用户电话
private String identityNum;//卡号
private String plStatus;//插件状态
private int startNum;//分页-起始数
public String getUserName() {
return userName;
}
public void setUserName(String userName) {
this.userName = userName;
}
public String getPhoneNum() {
return phoneNum;
}
public void setPhoneNum(String phoneNum) {
this.phoneNum = phoneNum;
}
public String getIdentityNum() {
return identityNum;
}
public void setIdentityNum(String identityNum) {
this.identityNum = identityNum;
}
public String getPlStatus() {
return plStatus;
}
public void setPlStatus(String plStatus) {
this.plStatus = plStatus;
}
public int getStartNum() {
return startNum;
}
public void setStartNum(int startNum) {
this.startNum = startNum;
}
}
public class UserInfoController {
@Autowired
private UserInfoService userInfoService;
/**
* 查询
*
* @return
*/
@RequestMapping(value = "/userInfo.do", method = RequestMethod.POST)
@ResponseBody
public String getList(@RequestBody UserInfoDO userInfoDo, HttpServletRequest request, HttpServletResponse response) {
JSONObject jsonObject = new JSONObject();
try {
DataGrid dataGrid = userInfoService.getUserInfo(userInfoDo);
jsonObject = JSONObject.fromObject(dataGrid);
} catch (Exception e) {
e.printStackTrace();
}
return jsonObject.toString();
}
}
public interface UserInfoService {
public DataGrid getUserInfo(UserInfoDO userInfoDo) throws SQLException;
}
@Service
public class SignLogServiceImpl implements SignLogService {
@Resource
private SignLogDao signLogDao;
@Override
public DataGrid getSignLog(SignLogDO signLogDo) throws SQLException {
DataGrid grid = new DataGrid();
List<SignLogDO> signLogList = null;
try {
signLogList = signLogDao.getSignLog(signLogDo);
grid.setTotal(signLogDao.getTotalNum(signLogDo));
grid.setRows(signLogList);
}
catch (Exception e) {
e.printStackTrace();
}
return grid;
}
}
public interface UserInfoDao {
public List<UserInfoDO> getUserInfo(UserInfoDO userInfoDo) throws SQLException;
public int getTotalNum(UserInfoDO userInfoDo) throws SQLException;
}
@Repository
public class UserInfoDaoImpl extends SqlSessionDaoSupport implements UserInfoDao{
@Resource
public void setSqlSessionFactory(SqlSessionFactory sqlSessionFactory){
super.setSqlSessionFactory(sqlSessionFactory);
}
@Override
public List<UserInfoDO> getUserInfo(UserInfoDO userInfoDo) throws SQLException {
return this.getSqlSession().selectList("userInfoDO.getUserInfo",userInfoDo);
}
@Override
public int getTotalNum(UserInfoDO userInfoDo) throws SQLException {
return this.getSqlSession().selectOne("userInfoDO.getTotalNum",userInfoDo);
}
}
<mapper namespace="userInfoDO">
<resultMap id="BaseResultMap" type="UserInfoDO">
<result column="phone_num" property="phoneNum" jdbcType="VARCHAR"/>
<result column="user_name" property="userName" jdbcType="VARCHAR"/>
<result column="identity_num" property="identityNum" jdbcType="VARCHAR"/>
</resultMap> <select id="getUserInfo" resultMap="BaseResultMap" parameterType="UserInfoDO">
select phone_num,user_name,identity_num from tb_user
<where>
<if test="phoneNum!=null and phoneNum!=''">
phone_num like '%${phoneNum}%'
</if>
<if test="userName != '' and userName != null" >
and user_name like '%${userName}%'
</if>
<if test="identityNum != '' and identityNum != null" >
and identity_num like '%${identityNum}%'
</if>
</where>
limit #{startNum},5 //每页五条数据
</select> <select id="getTotalNum" resultType="int" parameterType="UserInfoDO">
select count(*) from tb_user
<where>
<if test="phoneNum!=null and phoneNum!=''">
phone_num like '%${phoneNum}%'
</if>
<if test="userName != '' and userName != null" >
and user_name like '%${userName}%'
</if>
<if test="identityNum != '' and identityNum != null" >
and identity_num like '%${identityNum}%'
</if>
</where>
</select>
</mapper>
ssm框架查询数据并实现分页功能示例的更多相关文章
- ASP.NET Core 使用 EF 框架查询数据 - ASP.NET Core 基础教程 - 简单教程,简单编程
原文:ASP.NET Core 使用 EF 框架查询数据 - ASP.NET Core 基础教程 - 简单教程,简单编程 ASP.NET Core 使用 EF 框架查询数据 上一章节我们学习了如何设置 ...
- SSM框架搭建web服务器实现登录功能(Spring+SpringMVC+Mybatis)
初学java EE,虽然知道使用框架会使开发更加便捷高效,但是对于初学者来说,感到使用框架比较迷惑,尤其是各种jar包的引用.各种框架的配置.注解的使用等等. 最好的学习方法就是实践,于是下载了一个现 ...
- python连接 elasticsearch 查询数据,支持分页
使用python连接es并执行最基本的查询 from elasticsearch import Elasticsearch es = Elasticsearch(["localhost:92 ...
- php基于SQLite实现的分页功能示例
php基于SQLite实现的分页功能. 这里操作数据库文件使用的是前面文章<PHP基于PDO实现的SQLite操作类>中的SQLite数据库操作类. 代码: <?php class ...
- SSM框架三分钟搞定分页查询
使用的国产第三方jar pagehelper 里面的基本属性值 //当前页 private int pageNum; //每页的数量 private int pageSize; //当前页的数量 ...
- java 工作流项目源码 SSM 框架 Activiti-master springmvc 有手机端功能
即时通讯:支持好友,群组,发图片.文件,消息声音提醒,离线消息,保留聊天记录 (即时聊天功能支持手机端,详情下面有截图) 工作流模块---------------------------------- ...
- SPA项目开发动态树、数据表格、分页功能
SPA项目开发 1.修改左侧动态树 LeftNav.vue <template> <el-menu router :" class="el-menu-vertic ...
- (菜鸟要飞系列)五,基于Asp.Net MVC5的后台管理系统(添加数据表的分页功能)
献上代码 ) { List<UserModel> arrayUserModel = new List<UserModel>(); string strText = Reques ...
- SSM框架手动实现分页逻辑(非PageHelper)
第一种方法:查询出所有数据再分页 分析: 分页时,需要获得前台传来的两个参数,分别为pageNo(第几页数据),pageSize(每页的条数); 根据这两个参数来计算出前端需要的数据是查出数据list ...
随机推荐
- GridView CommandArgument 绑定多个参数
我们在使用GridView的时候 有时会需要绑定多个参数 <asp:GridView ID="gvwVoxListAll" runat="server" ...
- Thread.sleep() & SystemClock.sleep()
Thread.sleep()是java提供的函数.在调用该函数的过程中可能会发生InterruptedException异常. SystemClock.sleep()是android提供的函数.在调用 ...
- json格式的字符串使用string.Format()方法报错:输入字符串的格式不正确
解决:把大括号转义一下就可以了啊,大括号的转义是两个{{ 结尾是}} 今天看同事写的代码,发现他在使用string.format拼接类似json格式的数据时,大括号多了一对,感觉不对就查了查 ...
- 【转】iOS学习之Autolayout(代码添加约束) -- 不错不错
原文网址:http://www.cnblogs.com/HypeCheng/articles/4192154.html DECEMBER 07, 2013 学习资料 文章 Beginning Auto ...
- ANDROID开发之SQLite详解
本文转自:http://www.cnblogs.com/Excellent/archive/2011/11/19/2254888.html
- C# new用法总结
有一道这样的题:写出c#中new关键字的三种用法,思前想后挖空心思也只想出了两种用法,回来查了下msdn,还真是有第三种用法: 用于在泛型声明中约束可能用作类型参数的参数的类型,这是在Framewor ...
- C++11笔记
__func__宏 __func__返回当前的函数名,也可以返回class和struct名. /*返回函数名hello*/ const char* hello() { return __func__; ...
- (原创)LAMP教程5-配置VirtualBox虚拟机中centos6.4的网卡
(原创)LAMP教程5-配置VirtualBox虚拟机中centos6.4的网卡 是的,今天我们要讲的是如何配置VirtualBox虚拟机中centos6.4的网卡,毕竟我们是要做网站开发的,没有网络 ...
- 《Python 学习手册4th》 第十八章 参数
''' 时间: 9月5日 - 9月30日 要求: 1. 书本内容总结归纳,整理在博客园笔记上传 2. 完成所有课后习题 注:“#” 后加的是备注内容 (每天看42页内容,可以保证月底看完此书) “重点 ...
- String.Format格式说明
原文地址:http://www.cnblogs.com/tuyile006/archive/2006/07/13/449884.aspx C#格式化数值结果表 字符 说明 示例 输出 C 货币 str ...