设为首页 收藏本站
查看: 353|回复: 0

[经验分享] Struts2.1.6+Spring2.5.6+Hibernate3.3.2+mysql整合+分页模板(3)

[复制链接]

尚未签到

发表于 2016-10-24 08:41:20 | 显示全部楼层 |阅读模式
  十、写测试类测试Spring和Hibernate是否结合成功,测试方法是否正确
  
  
  UserServiceTest .java

package ssh.test;
import java.util.LinkedHashMap;
import org.junit.Test;
import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;
import ssh.model.User;
import ssh.service.UserService;
import ssh.utils.QueryResult;
public class UserServiceTest {
//测试获取保存
@Test
public void save(){
ApplicationContext ctx = new ClassPathXmlApplicationContext("beans.xml");
UserService service = (UserService)ctx.getBean("userService");
User user=new User();
user.setName("uuuuuuuuuuuuuu");
service.save(user);
}
//测试获取分页
@Test
public void getScrollData(){
ApplicationContext ctx = new ClassPathXmlApplicationContext("beans.xml");
UserService service = (UserService)ctx.getBean("userService");
LinkedHashMap<String, String> orderby = new LinkedHashMap<String, String>();//定义排序
orderby.put("id", "desc");
QueryResult<User> qr =service.getScrollData(1, 5, "o.id>?", new Object[]{3}, orderby);
for (User user : qr.getResultlist()) {
System.out.println("id:" + user.getId() + " name:" + user.getName());
}
}
}

  
  
  
  十一、封装分页页面
   
      1)封装分页工具条页面
        调用方法:
         <form action="index" method="post">
       <%@ include file="/share/fenye.jsp" %>
       </form>
      


  


  
  fenye.jsp 

<%@ page language="java" contentType="text/html; charset=gb2312" pageEncoding="gb2312"%>
<%@ include file="/share/taglib.jsp" %>
<html>
<SCRIPT type="text/javascript">
function topage(page){
var form=document.forms[0];
var currentPage=document.getElementById(currentPage);
form.currentPage.value=page;
form.submit();
}
</SCRIPT>
<body>
<input type="hidden" name="pageView.currentPage" id="currentPage" value="10"/>
当前页:第${pageView.currentPage} | 总记录数:${pageView.totalRecord} | 每页显示:${pageView.maxResult}|总页数:${pageView.totalPage}|
<c:if test="${pageView.currentPage==1}">首页|上一页</c:if>
<c:if test="${pageView.currentPage!=1}"><a href="javascript:topage(1)">首页</a>|<a href="javascript:topage('${pageView.currentPage-1}')">上一页</a></c:if>|第
<c:forEach begin="${pageView.startIndex}" end="${pageView.endIndex}" var="i">
<c:if test="${pageView.currentPage==i}"><b>${i }</b></c:if>
<c:if test="${pageView.currentPage!=i}"><a href="javascript:topage('${i}')">${i}</a></c:if>
</c:forEach>页|
<c:if test="${pageView.currentPage==pageView.totalPage}">下一页|末页</c:if>
<c:if test="${pageView.currentPage!=pageView.totalPage}"><a href="javascript:topage('${pageView.currentPage+1}')">下一页</a>|<a href="javascript:topage('${pageView.totalPage}')">末页</a></c:if>
</body>
</html>
  
  
  2)定义头不集合页面,每个JSP页面直接包含就行<%@ include file="/share/taglib.jsp" %>
   
  taglib.jsp
  

<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>
<%@ taglib uri="http://java.sun.com/jsp/jstl/fmt" prefix="fmt"%>
<%@ taglib uri="http://java.sun.com/jsp/jstl/functions" prefix="fn"%>
<%@ taglib uri="/struts-tags" prefix="s" %>
  
   
   
  十二、规划Struts 的Action和展示页面
    
    1)Action 加@Component("ua") /@Scope("prototype")/@Resource ,所以在Struts.xml里面写
     <action name="index" class="ssh.action.UserAction">
    2)Action 没有加@Component("ua") /@Scope("prototype")/@Resource ,所以在Struts.xml里面写
     <action name="index" class="ua">
  
  UserAction.java
   

package ssh.action;
import java.util.LinkedHashMap;
import javax.annotation.Resource;
import ssh.utils.QueryResult;
import ssh.utils.PageView;
import org.springframework.stereotype.Component;
import ssh.base.BaseAction;
import ssh.model.User;
import ssh.service.UserService;
//@Component("ua")
//@Scope("prototype")
public class UserAction extends BaseAction {
private User user;
private UserService userService;
private PageView<User>pageView=new PageView<User>();//这里必须要构造新对象,不然刚打开没有currentPage参数传递过来,如果不新建也行,第一次打开必须传递currentPage参数过来
public PageView<User> getPageView() {
return pageView;
}
public void setPageView(PageView<User> pageView) {
this.pageView = pageView;
}
public UserService getUserService() {
return userService;
}
//@Resource
public void setUserService(UserService userService) {
this.userService = userService;
}
public User getUser() {
return user;
}
public void setUser(User user) {
this.user = user;
}
@Override
public String execute() throws Exception {
int maxresult=5;//设置每次显示条数
int firstindex=(pageView.getCurrentPage()-1)*maxresult;//定义分页开始索引
LinkedHashMap<String, String> orderby = new LinkedHashMap<String, String>();//定义排序
orderby.put("id", "desc");
QueryResult<User> qr=userService.getScrollData(firstindex,maxresult, "o.id>?", new Object[]{3}, orderby);
pageView.setQueryResult(maxresult,qr);//把查询结果和每页显示数传递给pageView
request.put("pageView", pageView);
return "index";
//System.out.println("当前页"+pageView.getCurrentPage());
//System.out.println("总页数"+pageView.getTotalPage());
//System.out.println("总条数"+pageView.getTotalRecord());
//System.out.println("startindex:"+pageView.getStartIndex());
//System.out.println("endindex1:"+pageView.getEndIndex());
//System.out.println("firstIndex:"+firstindex);
//System.out.println("maxResult:"+pageView.getMaxResult());
//System.out.println("currentPage:"+pageView.getCurrentPage());
}
public String save() throws Exception {
userService.save(user);
return "save";
}
}

  
   
   
    


  
  效果图
DSC0000.jpg
  
  源文件:
  附件

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-290476-1-1.html 上篇帖子: Struts2.1.6+Spring2.5.6+Hibernate3.3.2+mysql整合+分页模板(2) 下篇帖子: Mysql 清理大字段 optimize表以后才会释放空间
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表