java中一个查询业务的流程
因为有用到分页,首先建一个page类
1 public class Page<T> {
2 private int pageSize; //每页显示条数
3 private int curPage = 1; //当前页,默认从1开始
4 private long total; //总记录数
5 private int pages; //总页数
6 private List<T> list; //页面列表数据
7 public Page() {
8 pageSize = 5; //默认5条每页
9 }
10 //获取第一条的数码
11 public int getStarPage(){
12 int starPage = pageSize * (curPage-1);
13 return starPage;
14 }
15 public int getPageSize() {
16 return pageSize;
17 }
18 // 所有属性的get ,set方法
......
45 }
然后在控制层中,控制层接收到请求/order/do
@Controller
@RequestMapping("/order")
public class OrderController{
@Resource
private OrderService OrderService
@RequestMapping(value = "/do",method = RequestMethod.GET)
//这里的c是状态属性,值为0或1
public String getList(@RequestParam(value="b",defaultValue="0") int b,@RequestParam(value="c",defaultValue="0") int c,
Page<Order> page,HttpServletRequest request,HttpServletResponse response,Model model) {
System.out.println(page.getCurPage());
Page<Order> OrderPage=new Page<Order>();
//判断是否有页码的输入,没有使用默认的
if(page.getCurPage()!=0){
OrderPage.setCurPage(page.getCurPage());
OrderPage.setPageSize(page.getPageSize());
}
//我们需要的记录
java.util.List<Order> rval = OrderService.getlist(1,OrderPage.getStarPage(),OrderPage.getPageSize());
//查询XService表的总记录
OrderPage.setTotal(OrderService.queryToalOrder(1);
// System.out.println(page.getTotal());
OrderPage.setPages((int)OrderPage.getTotal()/OrderPage.getPageSize());
// System.out.println(XPage.getPages());
Orderpage.setList(rval);
model.addAttribute("OrderPage", OrderPage);if(b==0){
return "Manager";
}else if(c==0){
return "already";
}else if(c==1){
return "will";
}else return null;
}
}
service层中
@Service
public classOrderService {
@Resource
private OrderMapper orderMapper;
//查询Order总记录的条数
@Transactional(propagation = Propagation.SUPPORTS,readOnly = true)
public int queryToalOrder(int sta,){
return OrderMapper.queryToalOrder(sta);
}
//我们需要的记录
@Transactional(propagation = Propagation.SUPPORTS,readOnly = true)
public java.util.List<Order> getlist(int sta,int starPage,int pageSize) {
return shuttleOrderMapper.getlist(sta,starPage,pageSize);
}
}
然后进入dao层
public interface OrderMapper{
//查询Order总记录的条数
int queryToalOrder(@Param("sta")int sta);
//我们需要的记录
java.util.List<Order> getlist(@Param("sta")int sta,@Param("starPage")int starPage,@Param("pageSize") int pageSize);
}
然后找到对应的sql语句
<?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.leederedu.educhat.modules.sys.dao.ShuttleOrderMapper">
<!-- 查询我们要的记录 -->
<select id="getlist" resultType="Order">
select a,b,c,d,e,f,g from test t where t.sta=#{sta} limit #{starPage},#{pageSize};
</select>
<!--查询Order总记录的条数 -->
<select id="queryToalOrder" resultType="int">
select count(*) from test t where t.sta=#{sta}
</select>
</mapper>
然后jsp中获取到对应的值展示即可。
随手笔记,如有错误鄙人将很感激您的提出。
java中一个查询业务的流程的更多相关文章
- java中一个字符串是另外一个字符串的字串
java中一个字符串是另外一个字符串的字串 String类中有一个方法 public boolean contains(Sting s)就是用来判断当前字符串是否含有参数指定的字符串例s1=“take ...
- Java中异常发生时代码执行流程
异常与错误: 异常: 在Java中程序的错误主要是语法错误和语义错误,一个程序在编译和运行时出现的错误我们统一称之为异常,它是VM(虚拟机)通知你的一种方式,通过这种方式,VM让你知道,你(开发人员) ...
- java中一个重要思想:面向对象
面向对象: 1, 面向过程的思想(合适的方法出现在合适的类里面) 准备去一个地方: 先买车, 挂牌, 开导航, 踩油门, 过黄河, 穿越珠穆朗玛峰... 2, 面向对象的思想 我开着车去, 车怎么去随 ...
- java中一个引人深思的匿名内部类
前两天去面试javaweb问到一个问题,在你的项目中有没有用到线程,我特么的一想,这东西不是在c层面的吗,所以说我不了解线程..... 后来回去想啊想啊,我操这特么的不是再问我事物的控制,消息队列的回 ...
- Java中一个线程只有六个状态。至于阻塞、可运行、挂起状态都是人们为了便于理解,自己加上去的。
java中,线程的状态使用一个枚举类型来描述的.这个枚举一共有6个值: NEW(新建).RUNNABLE(运行).BLOCKED(锁池).TIMED_WAITING(定时等待).WAITING(等待) ...
- 为什么Java中一个char能存下一个汉字
在Java中,char的长度是2字节,即16位,2的16次方是65536. 1.如果采用utf-8编码,一个汉字占3个字节,char为什么还能存下一个汉字呢? 参考:https://developer ...
- java中一个数组不能放不同数据类型的值
在java中,数组不能放不同数据类型的值. 方法一: 多态 定义数组类型的时候定义为父类,而存进数组为父类的子类 public class test2 { public static void mai ...
- JAVA中的异常(异常处理流程、异常处理的缺陷)
异常处理流程 1)首先由try{...}catch(Exception e){ System.out.println(e); e.printStackTrace(); }finally{...}结构 ...
- java 中一个char包含几个字节
背景 char包含几个字节可能记得在上学的时候书上写的是2个字节,一直没有深究,今天我们来探究一下到底一个char多少个字节? Char char在设计之初的时候被用来存储字符,可是世界上有那 ...
随机推荐
- 单词(bzoj 3172)
Description 某人读论文,一篇论文是由许多单词组成.但他发现一个单词会在论文中出现很多次,现在想知道每个单词分别在论文中出现多少次. Input 第一个一个整数N,表示有多少个单词,接下来N ...
- iOS之tabBar随tableView的滑动而隐藏/显现
` @property(nonatomic,assign)CGFloat historyY; #pragma mark Delegate //设置滑动的判定范围 - (void)scrollViewW ...
- 51nod1088(最长回文子串)
题目链接:https://www.51nod.com/onlineJudge/questionCode.html#!problemId=1088 题意: 中文题目诶~ 思路: 这道题字符串长度限定为1 ...
- 网络知识学习1---(基础知识:ISO/OSI七层模型和TCP/IP四层模型)
以下的内容和之后的几篇博客只是比较初级的介绍,想要深入学习的话建议自己钻研<TCP/IP详解 卷1:协议> 1.ISO/OSI七层模型 下四层是为数据传输服务的,物理层是真正的传输数 ...
- 几年前做家教写的C教程(之四专讲了指针与汉诺塔问题)
C语言学习宝典(4) 指针:可以有效的表示复杂的数据结构,能动态的分配动态空间,方便的使用字符串,有效的使用数组,能直接处理内存单元 不掌握指针就没有掌握C语言的精华 地址:系统为每一个变量分配一个内 ...
- 【leetcode】Triangle (#120)
Given a triangle, find the minimum path sum from top to bottom. Each step you may move to adjacent n ...
- [译]:Orchard入门——导航与菜单
原文链接:Navigation and Menus 文章内容基于Orchard1.8版本.同时包含Orchard 1.5之前版本的导航参考 Orchard有许多不同的方法来创建菜单.本文将介绍两种较为 ...
- LeetCode: Largest Rectangle in Histogram(直方图最大面积)
http://blog.csdn.net/abcbc/article/details/8943485 具体的题目描述为: Given n non-negative integers represent ...
- Asp.Net MVC4 + Oracle + EasyUI 学习 第一章
Asp.Net MVC4 + Oracle + EasyUI 第一章 --操作数据和验证 本文链接:http://www.cnblogs.com/likeli/p/4234238.html 文章集合 ...
- angularjs之ng-if、ng-show、ng-switch那些事
一.蓝瘦~香菇 经常在项目中使用ng-if和ng-show来处理一些简单的状态,今天碰到一个复杂的状态判断,不经让我想起ng-switch.第一次接触他的时候,我没怎么注意他,因为我直接把他当作其 ...