凯发真人娱乐

案例49-凯发真人娱乐

2023-10-19

1.封装pagebean

2.书写action

3.书写service

4.书写dao   注意清空之前设置的聚合函数  dc.setprojection(null);

5.完成strutx以及spring的配置

6.书写前台list.jsp页面

1 封装pagebean

package www.test.utils;
import java.util.list;
public class pagebean {
    //当前页
private integer currentpage;
//当前页显示的条数
private integer pagesize;
//总页数
private integer totalpage;
//总记录数
private integer totalcount; //分页列表的数据
private list list; public pagebean(integer currentpage, integer pagesize, integer totalcount) {
this.currentpage = currentpage;
this.pagesize = pagesize;
this.totalcount = totalcount; //如果没有指定显示那一页,就显示第一页。
if (this.currentpage == null) {
this.currentpage = 1;
} //如果没有指定每页显示几条数据,就默认显示3条。
if (this.pagesize == null) {
this.pagesize = 3;
} //计算总页数
this.totalpage = (this.totalcount this.pagesize - 1) / this.pagesize;
//this.totalpage = (int) math.ceil((this.totalcount*1.0)/this.pagesize); //判断当前页数是否超出范围
//不能小于1
if (this.currentpage < 1) {
this.currentpage = 1;
}
//不能大于总页数
if (this.currentpage > this.totalpage) {
this.currentpage = this.totalpage;
}
} //计算起始索引
public integer getstart() {
return (this.currentpage - 1) * this.pagesize;
} public integer getcurrentpage() {
return currentpage;
} public void setcurrentpage(integer currentpage) {
this.currentpage = currentpage;
} public integer getpagesize() {
return pagesize;
} public void setpagesize(integer pagesize) {
this.pagesize = pagesize;
} public integer gettotalpage() {
return totalpage;
} public void settotalpage(integer totalpage) {
this.totalpage = totalpage;
} public integer gettotalcount() {
return totalcount;
} public void settotalcount(integer totalcount) {
this.totalcount = totalcount;
} public list getlist() {
return list;
} public void setlist(list list) {
this.list = list;
} }

2.书写action

package www.test.web.action;
import org.apache.commons.lang3.stringutils;
import org.hibernate.criterion.detachedcriteria;
import org.hibernate.criterion.restrictions; import com.opensymphony.xwork2.actioncontext;
import com.opensymphony.xwork2.actionsupport;
import com.opensymphony.xwork2.modeldriven; import www.test.domain.customer;
import www.test.service.customerservice;
import www.test.utils.pagebean; public class customeraction extends actionsupport implements modeldriven{ private customer customer = new customer(); private customerservice cs;
private integer currentpage;
private integer pagesize; //获取客户列表
public string list() throws exception {
//封装离线查询对象
detachedcriteria dc = detachedcriteria.forclass(customer.class); //判断并封装参数
if(stringutils.isnotblank(customer.getcust_name())){
dc.add(restrictions.like("cust_name", "%" customer.getcust_name() "%"));
} //1 调用service查询分页数据(pagebean)
pagebean pb = cs.getpagebean(dc,currentpage,pagesize);
//2 将pagebean放入request域,转发到列表页面显示
actioncontext.getcontext().put("pagebean", pb);
return "list";
} @override
public customer getmodel() { return customer;
} public customerservice getcs() {
return cs;
} public void setcs(customerservice cs) {
this.cs = cs;
} public integer getcurrentpage() {
return currentpage;
} public void setcurrentpage(integer currentpage) {
this.currentpage = currentpage;
} public integer getpagesize() {
return pagesize;
} public void setpagesize(integer pagesize) {
this.pagesize = pagesize;
} }

3.书写service

package www.test.service;
import org.hibernate.criterion.detachedcriteria;
import www.test.utils.pagebean;
public interface customerservice {
    pagebean getpagebean(detachedcriteria dc, integer currentpage, integer pagesize);
}
package www.test.service.impl;
import java.util.list;
import org.hibernate.criterion.detachedcriteria;
import www.test.dao.customerdao;
import www.test.domain.customer;
import www.test.service.customerservice;
import www.test.utils.pagebean; public class customerserviceimpl implements customerservice { private customerdao cd;
@override
public pagebean getpagebean(detachedcriteria dc, integer currentpage, integer pagesize) { // 1 调用dao层查询总记录数
integer totalcount = cd.gettotalcount(dc); // 2创建pagebean对象
pagebean pb = new pagebean(currentpage, pagesize, totalcount); // 3查询客户列表
list list = cd.getpagelist(dc,pb.getstart(),pb.getpagesize()); // 4返回pagebean
pb.setlist(list);
return pb;
}
public customerdao getcd() {
return cd;
}
public void setcd(customerdao cd) {
this.cd = cd;
} }

4.书写dao

package www.test.dao;
import java.util.list;
import org.hibernate.criterion.detachedcriteria;
import www.test.domain.customer;
public interface customerdao {
    //查询总记录数
integer gettotalcount(detachedcriteria dc); //根据条件查询客户列表
list getpagelist(detachedcriteria dc, integer start, integer pagesize); }
package www.test.dao.impl;
import java.util.list;
import org.hibernate.criterion.detachedcriteria;
import org.hibernate.criterion.projection;
import org.hibernate.criterion.projections;
import org.springframework.orm.hibernate5.support.hibernatedaosupport; import www.test.dao.customerdao;
import www.test.domain.customer; public class customerdaoimpl extends hibernatedaosupport implements customerdao{ @override
public integer gettotalcount(detachedcriteria dc) {
//设置查询聚合函数,总记录数
dc.setprojection(projections.rowcount()); list list = (list) super.gethibernatetemplate().findbycriteria(dc); //清空之前设置的聚合函数
dc.setprojection(null); if(list!=null&&list.size()>0){
long count = list.get(0);
return count.intvalue();
}else{
return null;
}
} @override
public list getpagelist(detachedcriteria dc, integer start, integer pagesize) { list list = (list) super.gethibernatetemplate().findbycriteria(dc, start, pagesize);
return list;
} }

5.完成strutx以及spring的配置


"-//apache software foundation//dtd struts configuration 2.3//en"
"http://struts.apache.org/dtds/struts-2.3.dtd">


<constant name="struts.objectfactory" value="spring">>



/index.htm
/login.jsp


/jsp/customer/list.jsp
>


xmlns="http://www.springframework.org/schema/beans"
xmlns:context="http://www.springframework.org/schema/context"
xmlns:aop="http://www.springframework.org/schema/aop"
xmlns:tx="http://www.springframework.org/schema/tx"
xsi:schemalocation="http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans-4.2.xsd
http://www.springframework.org/schema/context
http://www.springframework.org/schema/context/spring-context-4.2.xsd
http://www.springframework.org/schema/aop
http://www.springframework.org/schema/aop/spring-aop-4.2.xsd
http://www.springframework.org/schema/tx
http://www.springframework.org/schema/tx/spring-tx-4.2.xsd ">





























<bean name="customeraction" class="www.test.web.action.customeraction" scope="prototype">

>



<bean name="customerservice" class="www.test.service.impl.customerserviceimpl">

>



<bean name="customerdao" class="www.test.dao.impl.customerdaoimpl">

>










org.hibernate.dialect.mysqldialect
true
true
update




6.书写前台list.jsp页面

<%@ page language="java" contenttype="text/html; charset=utf-8"
pageencoding="utf-8"%>
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>
<%@ taglib prefix="s" uri="/struts-tags"%>



客户列表

type=text/css rel=stylesheet>
type=text/css rel=stylesheet>












src="${pagecontext.request.contextpath }/images/new_019.jpg"
border=0>
background="${pagecontext.request.contextpath }/images/new_020.jpg"
height=20>
src="${pagecontext.request.contextpath }/images/new_021.jpg"
border=0>









/images/new_022.jpg> src="${pagecontext.request.contextpath }/images/new_022.jpg"
border=0>








当前位置:客户管理 > 客户列表

align=center border=0>










action="${pagecontext.request.contextpath }/customeraction_list"
method=post>

value="">

value="">






客户名称: style="width: 80px" maxlength=50 name="cust_name"
value="${param.cust_name}">
value=" 筛选 " name=sbutton2>



style="border-top-width: 0px; font-weight: normal; border-left-width: 0px; border-left-color: #cccccc; border-bottom-width: 0px; border-bottom-color: #cccccc; width: 100%; border-top-color: #cccccc; font-style: normal; background-color: #cccccc; border-right-width: 0px; text-decoration: none; border-right-color: #cccccc"
cellspacing=1 cellpadding=2 rules=all border=0>

style="font-weight: bold; font-style: normal; background-color: #eeeeee; text-decoration: none">









style="font-weight: normal; font-style: normal; background-color: white; text-decoration: none">









<%--
style="font-weight: normal; font-style: normal; background-color: white; text-decoration: none">








--%>
<%--
style="font-weight: normal; font-style: normal; background-color: white; text-decoration: none">







--%>
客户名称 客户级别 客户来源 联系人 电话 手机 操作
href="${pagecontext.request.contextpath }/customerservlet?method=edit&custid=${customer.cust_id}">修改
   href="${pagecontext.request.contextpath }/customerservlet?method=delete&custid=${customer.cust_id}">删除














  

${customer.cust_name } ${customer.cust_level } ${customer.cust_source } ${customer.cust_linkman } ${customer.cust_phone } ${customer.cust_mobile }

  



style="line-height: 20px; height: 20px; text-align: right">
共[]条记 录,[

]页 ,每页显示

[]
<%-- ${page} --%>
[]
value="" /> 页 type="button" value="go"
onclick="changepage($('#page').val())"
/>


background="${pagecontext.request.contextpath }/images/new_023.jpg"> src="${pagecontext.request.contextpath }/images/new_023.jpg"
border=0>









src="${pagecontext.request.contextpath }/images/new_024.jpg"
border=0>
background="${pagecontext.request.contextpath }/images/new_025.jpg"
height=15>
src="${pagecontext.request.contextpath }/images/new_026.jpg"
border=0>


案例49-crm练习获取客户列表带有分页和筛选功能的相关教程结束。

  • vue如何实现分页效果?

    不懂vue如何实现分页效果??其实想解决这个问题也不难,下面让小编带着大家一起学习怎么去解决,希望大家阅读完这篇文章后大所收获。 本文实例为大家分享了vue实现分页效果的具体代码,供大家参考,具体内容如下 第一种效果:数据量...

  • 《pages文稿》添加分页方法
    《pages文稿》添加分页方法

    pages文稿是一个强大的文字处理工具,它可以帮助您轻松地创建、编辑和分享精美的文档。通过添加新页面,您可以扩展文稿的内容,以满足您的不同需求。很多小伙伴还不知道pages文稿怎么添加新的一页,下面小编就来为大家介绍一下添加...

  • 原神带有蓝色的生物有哪些
    原神带有蓝色的生物有哪些

    原神中福至五彩蓝色拍摄位置推荐是:晨曦酒庄左边的那一堆冰史莱姆,传送过去往前走就能看到。或者在打急冻树/纯水精灵刷材料的时候,记得使用奇特的留影机拍摄它们。 奇特的留影机使用方法 详细答案: boss:风魔龙-特瓦...

  • 2023年搞笑富婆网名昵称大全 带有富婆二字搞笑的网名

    富婆a计划 躲不过富婆 亚你好富婆啊 一血富婆 富婆留给我 富婆一直下 富婆不善舞 财富小公主 小腐皮 小福气 我负责富婆 富婆的惊为天人 我是小富婆 富婆菜的很张扬 塑料富婆 别等富婆了快投吧 带富婆掉段位 富婆先送为敬 富婆要吃肉 ...

  • word删除分页符后出现空白页怎么办 word怎么删除分页符造成的空白页
    word删除分页符后出现空白页怎么办 word怎么删除分页符造成的空白页

      在使用word编辑文档时,有时会遇到一个令人困扰的问题,那就是删除分页符后出现的空白页,这种情况常常让人感到困惑,不知道该如何解决。word删除分页符后出现空白页怎么办呢?不用担心,本文小编将为大家介绍word怎么删除分页符...

  • 如何去掉分页符 word如何删除分页符
    如何去掉分页符 word如何删除分页符

      在使用word编辑文字的时候,经常会看到一些分页符,这个分页符主要是用来标记上一个页面结束以及下一个页面开始的位置,可以强行分页。有些用户不需要这个分页符,也不懂如何去掉分页符,所以接下来就和小编一起来学习下word如何...

  • wps如何编辑序号 wps如何编辑带有序号的文档

      在日常办公中,我们经常需要编辑带有序号的文档,而wps作为一款功能强大的办公软件,为我们提供了方便快捷的编辑序号的功能,无论是制作目录、列表还是演示文稿,wps都能满足我们的各种需求。如何在wps中编辑带有序号的文档呢?接...

  • wps分页符如果插入 wps分页符如何插入

      wps分页符如果插入,在日常办公中,我们经常需要对文档进行分页,以便更好地组织内容和阅读,wps提供了便捷的分页符插入功能,使我们能够轻松实现这一目标。只需在文档中的需要分页的位置点击鼠标右键,在弹出的菜单中选择插入分...

网站地图