/**
* 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框架查询数据并实现分页功能示例的更多相关文章

  1. ASP.NET Core 使用 EF 框架查询数据 - ASP.NET Core 基础教程 - 简单教程,简单编程

    原文:ASP.NET Core 使用 EF 框架查询数据 - ASP.NET Core 基础教程 - 简单教程,简单编程 ASP.NET Core 使用 EF 框架查询数据 上一章节我们学习了如何设置 ...

  2. SSM框架搭建web服务器实现登录功能(Spring+SpringMVC+Mybatis)

    初学java EE,虽然知道使用框架会使开发更加便捷高效,但是对于初学者来说,感到使用框架比较迷惑,尤其是各种jar包的引用.各种框架的配置.注解的使用等等. 最好的学习方法就是实践,于是下载了一个现 ...

  3. python连接 elasticsearch 查询数据,支持分页

    使用python连接es并执行最基本的查询 from elasticsearch import Elasticsearch es = Elasticsearch(["localhost:92 ...

  4. php基于SQLite实现的分页功能示例

    php基于SQLite实现的分页功能. 这里操作数据库文件使用的是前面文章<PHP基于PDO实现的SQLite操作类>中的SQLite数据库操作类. 代码: <?php class ...

  5. SSM框架三分钟搞定分页查询

    使用的国产第三方jar   pagehelper 里面的基本属性值 //当前页 private int pageNum; //每页的数量 private int pageSize; //当前页的数量 ...

  6. java 工作流项目源码 SSM 框架 Activiti-master springmvc 有手机端功能

    即时通讯:支持好友,群组,发图片.文件,消息声音提醒,离线消息,保留聊天记录 (即时聊天功能支持手机端,详情下面有截图) 工作流模块---------------------------------- ...

  7. SPA项目开发动态树、数据表格、分页功能

    SPA项目开发 1.修改左侧动态树 LeftNav.vue <template> <el-menu router :" class="el-menu-vertic ...

  8. (菜鸟要飞系列)五,基于Asp.Net MVC5的后台管理系统(添加数据表的分页功能)

    献上代码 ) { List<UserModel> arrayUserModel = new List<UserModel>(); string strText = Reques ...

  9. SSM框架手动实现分页逻辑(非PageHelper)

    第一种方法:查询出所有数据再分页 分析: 分页时,需要获得前台传来的两个参数,分别为pageNo(第几页数据),pageSize(每页的条数); 根据这两个参数来计算出前端需要的数据是查出数据list ...

随机推荐

  1. php yii框架使用MongoDb

    1.安装 运行 php composer.phar require --prefer-dist yiisoft/yii2-mongodb or add "yiisoft/yii2-mongo ...

  2. Sublime-text markdown with Vim mode and auto preview

    说明 最近看到markdown相关的东西,被其书写方式吸引,其实以前就在找这种类似的工具,但是也没找到,由于习惯了Vim,可Vim不支持markdown预览,这点可能不是很好,于是找到Sublime- ...

  3. 【ASP.NET】编程点滴 :ASP.NET身份验证

    ASP.NET实际开发中身份验证 是一个不可回避的问题.在相当一段长的时间内,由于不求甚解,我对这个话题似懂非懂.今天就对它做个简单的小结. Authentication and Authorizat ...

  4. TCP/IP详解学习笔记(14)-TCP连接的未来和性能(未写完)

    在TCP刚出世的时候,其主要工作环境是以太网和SLIP之类的低速网络.随着高速网络的出现,让TCP协议的吞吐量更大,效率更高的要求就愈来愈迫切.为此,TCP增加了三个重要机制来对应现在的变化,他们是 ...

  5. ASP.NET 经典60道面试题

    转:http://bbs.chinaunix.net/thread-4065577-1-1.html ASP.NET 经典60道面试题 1. 简述 private. protected. public ...

  6. ASP.NET MVC 教程汇总

    自学MVC看这里——全网最全ASP.NET MVC 教程汇总   MVC架构已深得人心,微软也不甘落后,推出了Asp.net MVC.小编特意整理博客园乃至整个网络最具价值的MVC技术原创文章,为想要 ...

  7. [转] C# 泛型类型参数的约束

    啊.紫原文C# 泛型类型参数的约束 在定义泛型类时,可以对客户端代码能够在实例化类时用于类型参数的类型种类施加限制.如果客户端代码尝试使用某个约束所不允许的类型来实例化类,则会产生编译时错误.这些限制 ...

  8. java多线程学习笔记——详细

    一.线程类  1.新建状态(New):新创建了一个线程对象.        2.就绪状态(Runnable):线程对象创建后,其他线程调用了该对象的start()方法.该状态的线程位于可运行线程池中, ...

  9. 几种常见的FTP软件的二进制设置说明

    几种常见的FTP软件的二进制设置说明: 1.FlashFXP: 打开 FlashFXP:在工具栏中,选项 => 参数(也可以直接按F6键),在弹出来的窗口中,选择“传输(T)”卡,在传输模式中选 ...

  10. 【整理】Visual Studio快捷键

    说明 很多开发人员使用Visual Studio的时候,由于对VS快捷键不熟悉,会影响到实际的开发效率.其实,有很多我们不知道(或已知)的快捷键,在我们熟练运用以后,能够提高我们整体的工作效率.以下是 ...