DBConnection.java类
package com.net.dao;
import java.sql.*;
public class DBConnection {
private Connection cn;
public DBConnection(Connection cn) {
super();
this.cn = cn;
}
public DBConnection() {
super();
// TODO Auto-generated constructor stub
}
private Connection getConnection(){
try {
Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");
cn= DriverManager.getConnection("jdbc:sqlserver://127.0.0.1;databaseName=db_book","sa","123");
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return cn;
}
public ResultSet getResultSet(String sql,Object args[]){
try {
PreparedStatement ps=this.getConnection().prepareStatement(sql);
if(args!=null){
for(int i=0;i<args.length;i++){
ps.setObject(i+1,args[i]);
}
}
return ps.executeQuery();
} catch (Exception e) {
// TODO: handle exception
e.printStackTrace();
}
return null;
}
}
DBcommend.java类package com.net.dao;
import java.sql.Connection;
import java.sql.ResultSet;
import java.util.ArrayList;
import java.util.List;
import com.net.Entity.books;
public class DBcommend {
public List getlist(int pid){
List list=new ArrayList();
DBConnection db=new DBConnection();
books book=null;
try {
int cnt=(pid-1)*books.pagetol;
String sql="select top (?) * from book where bookid not in(select top (?) bookid from book order by bookid desc) order by bookid desc";
ResultSet rs=db.getResultSet(sql, new Object[]{books.pagetol,cnt});
while (rs.next()) {
book=new books();
book.setBookid(rs.getInt("bookid"));
book.setBookname(rs.getString("bookname"));
book.setOuthor(rs.getString("bookouthor"));
list.add(book);
}
} catch (Exception e) {
// TODO: handle exception
e.printStackTrace();
}
return list;
}
public int getcount(){
int count=0;
DBConnection db=new DBConnection();
try {
String sql="select count(*) from book";
ResultSet rs=db.getResultSet(sql,null);
rs.next();
count=rs.getInt(1);
} catch (Exception e) {
// TODO: handle exception
e.printStackTrace();
}
return count;
}
}
数据库字段
books.java类
package com.net.Entity;
public class books {
public static final int pagetol=5;
private int bookid;
private String bookname;
private String outhor;
public int getBookid() {
return bookid;
}
public void setBookid(int bookid) {
this.bookid = bookid;
}
public String getBookname() {
return bookname;
}
public void setBookname(String bookname) {
this.bookname = bookname;
}
public String getOuthor() {
return outhor;
}
public void setOuthor(String outhor) {
this.outhor = outhor;
}
}
Pageinfo.java 分页属性
package com.net.Entity;
public class Pageinfo {
private int pid;
private int tallPage;
private int count ;
private String up;
private String down;
public int getPid() {
return pid;
}
public void setPid(int pid) {
this.pid = pid;
}
public int getTallPage() {
return tallPage;
}
public void setTallPage(int tallPage) {
this.tallPage = tallPage;
}
public int getCount() {
return count;
}
public void setCount(int count) {
this.count = count;
}
public String getUp() {
return up;
}
public void setUp(String up) {
this.up = up;
}
public String getDown() {
return down;
}
public void setDown(String down) {
this.down = down;
}
}
BookAction.java (Action)类
/*
* Generated by MyEclipse Struts
* Template path: templates/java/JavaClass.vtl
*/
package com.yourcompany.struts.action;
import java.util.List;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.apache.struts.action.Action;
import org.apache.struts.action.ActionForm;
import org.apache.struts.action.ActionForward;
import org.apache.struts.action.ActionMapping;
import com.net.Entity.Pageinfo;
import com.net.Entity.books;
import com.net.dao.DBConnection;
import com.net.dao.DBcommend;
public class BookAction extends Action {
public ActionForward execute(ActionMapping mapping, ActionForm form,
HttpServletRequest request, HttpServletResponse response) {
String pid1=request.getParameter("id");
if(pid1==null || pid1.equals("")){
pid1="1";
}
int pid=Integer.parseInt(pid1);
DBcommend db=new DBcommend();
Pageinfo page=new Pageinfo();
List list=db.getlist(pid);
int count=db.getcount();
System.out.println(count);
int tollPage=(int)Math.ceil(count*1.0/books.pagetol);
page.setCount(count);
page.setTallPage(tollPage);
page.setPid(pid);
String up="javascript:;";
String down="javascript:;";
if(pid==1 && tollPage>1){
down="book.do?id="+(pid+1);
}else if(tollPage>1 && pid==tollPage){
up="book.do?id="+(pid-1);
}else if(pid>1 && pid<tollPage){
up="book.do?id="+(pid-1);
down="book.do?id="+(pid+1);
}
page.setUp(up);
page.setDown(down);
request.setAttribute("list", list);
request.setAttribute("page", page);
return mapping.findForward("index");
}
}
struts-config.xml 配置文件
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE struts-config PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 1.2//EN" "http://struts.apache.org/dtds/struts-config_1_2.dtd">
<struts-config>
<data-sources />
<form-beans />
<global-exceptions />
<global-forwards />
<action-mappings >
<action path="/book" type="com.yourcompany.struts.action.BookAction">
<forward name="index" path="/index.jsp" />
</action>
</action-mappings>
<message-resources parameter="com.yourcompany.struts.ApplicationResources" />
</struts-config>
index.jsp jsp页面
<%@ page language="java" import="java.util.*" pageEncoding="GBK"%>
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
<html>
<head>
<title>My JSP 'index.jsp' starting page</title>
</head>
<body>
<table border="1">
<tr>
<td>序列</td>
<td>书名</td>
<td>作者</td>
</tr>
<c:forEach items="${requestScope.list}" var="li">
<tr>
<td>${li.bookid }</td>
<td>${li.bookname }</td>
<td>${li.outhor }</td>
</tr>
</c:forEach>
</table>
<a href="book.do">首页</a>
<a href="${requestScope.page.up}">上一页</a>
<a href="${requestScope.page.down }">下一页</a>
<a href="book.do?id=${requestScope.page.tallPage}">尾页</a>
当前页${requestScope.page.pid }/${requestScope.page.tallPage } 共有记录 ${requestScope.page.count } 条
</body>
</html>
接复制 数据库
数据库名:db_book;
表名:book;
字段1 :bookid;
字段2:bookname;
字段3:outhor;
以上是分页全部代码 直接复制 加分吧亲手帮你敲的?
struts分页
最新推荐文章于 2024-09-25 20:34:41 发布