- 浏览: 90616 次
- 性别:
- 来自: 石家庄
文章分类
- 全部博客 (71)
- java (18)
- jsp (13)
- 常用文档 (2)
- struts (4)
- hiberbate (1)
- spring (0)
- ibatis (1)
- 数据库相关 (4)
- 服务器相关 (3)
- XML (1)
- AJAX (2)
- EJB (2)
- 设计模式 (3)
- javamail (2)
- struts2.x (0)
- webwork (0)
- jdo (0)
- toplink (0)
- ojb (0)
- jsf (0)
- jasperReport (1)
- dwr (0)
- javascript (6)
- css (0)
- junit (0)
- soa (0)
- soap/corba/rmi (0)
- JFreeChart (0)
- 正则表达式 (1)
- 其他 (5)
- 设置JOB参数job_queue_processes (0)
最新评论
-
zhima:
好多阿 没人留言
jsp(脚本)+javabean+servlet+dao分页 -
416935357:
,谢谢,可是我的那个是用字节流导入数据库不知道为什么一直出现 ...
java读取图片文件 -
jzh2537:
呵呵,看了下,复制了代码,直接可用,不过我是从另外的连接连过来 ...
jsp(标签)+javabean+servlet+dao分页 -
edgar108:
问您一下:"apache集成tomcat" ...
APACHE集成TOMCAT -
kejianjun01:
如果要有注释就好了,这样看虽然能看明白但是起来会很不舒服;
jsp实现购物车
po
package com.qxm.po;
import java.io.Serializable;
public class Student implements Serializable {
private static final long serialVersionUID = 1L;
private int id;
private String name;
private String gender;
private String email;
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getGender() {
return gender;
}
public void setGender(String gender) {
this.gender = gender;
}
public String getEmail() {
return email;
}
public void setEmail(String email) {
this.email = email;
}
}
----------------------------------------------------------
jsp页面
<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%>
<%@page import="com.qxm.control.PageControl"%>
<%@page import="com.qxm.po.Student"%>
<html>
<head>
<title>人员信息</title>
</head>
<body>
人员信息
<hr>
<table>
<tr>
<td>id</td>
<td>name</td>
<td>gender</td>
<td>email</td>
</tr>
<%
PageControl pc = (PageControl)request.getAttribute("pc");
ArrayList<Student> tempList = pc.getSmallList();
for(int i = 0;i<tempList.size();i++){
%>
<tr>
<td><%=tempList.get(i).getId() %></td>
<td><%=tempList.get(i).getName() %></td>
<td><%=tempList.get(i).getGender() %></td>
<td><%=tempList.get(i).getEmail() %></td>
</tr>
<%
}
%>
</table>
<a href="Display?pageindex=1">首页</a>
<%
if(pc.isFirstPage() == false){
%>
<a href="Display?pageindex=<%=pc.getPreviousPageCount() %>">上一页</a>
<%
}
%>
<%
if(pc.isLastPage() == false){
%>
<a href="Display?pageindex=<%=pc.getNextPagecount() %>">下一页</a>
<%
}
%>
<a href="Display?pageindex=<%=pc.getPageSize() %>">尾页</a>
</html>
<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%>
<%@page import="com.qxm.control.PageControl"%>
<%@page import="com.qxm.po.Student"%>
<html>
<head>
<title>人员信息</title>
</head>
<body>
人员信息
<hr>
<table>
<tr>
<td>id</td>
<td>name</td>
<td>gender</td>
<td>email</td>
</tr>
<%
PageControl pc = (PageControl)request.getAttribute("pc");
ArrayList<Student> tempList = pc.getSmallList();
for(int i = 0;i<tempList.size();i++){
%>
<tr>
<td><%=tempList.get(i).getId() %></td>
<td><%=tempList.get(i).getName() %></td>
<td><%=tempList.get(i).getGender() %></td>
<td><%=tempList.get(i).getEmail() %></td>
</tr>
<%
}
%>
</table>
<a href="Display?pageindex=1">首页</a>
<%
if(pc.isFirstPage() == false){
%>
<a href="Display?pageindex=<%=pc.getPreviousPageCount() %>">上一页</a>
<%
}
%>
<%
if(pc.isLastPage() == false){
%>
<a href="Display?pageindex=<%=pc.getNextPagecount() %>">下一页</a>
<%
}
%>
<a href="Display?pageindex=<%=pc.getPageSize() %>">尾页</a>
</html>
----------------------------------------------------------
servlet
package com.qxm.servlet;
import java.io.IOException;
import java.util.ArrayList;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import com.qxm.control.PageControl;
import com.qxm.dao.ConnectionDB;
import com.qxm.po.Student;
public class Display extends HttpServlet {
public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
this.doPost(request, response);
}
public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
String currentpage = request.getParameter("pageindex");
if(currentpage == null){
currentpage = "1";
}
int pageindex = Integer.parseInt(currentpage);
PageControl pc = (PageControl)request.getAttribute("pc");
if(pc == null){
pc = new PageControl();
ConnectionDB condb = new ConnectionDB();
ArrayList<Student> allList = condb.getResultSet();
pc.setBigList(allList);
request.setAttribute("pc", pc);
}
pc.setCurrentPage(pageindex);
this.getServletContext().getRequestDispatcher("/display1.jsp").forward(request, response);
}
}
----------------------------------------------------------
dao层
package com.qxm.dao;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.ArrayList;
import com.qxm.po.Student;
@SuppressWarnings("unchecked")
public class ConnectionDB {
public static Connection conn = null;
public static PreparedStatement ps = null;
public static ResultSet rs = null;
public void getconnection(){
try {
Class.forName("com.mysql.jdbc.Driver");
conn = DriverManager.getConnection("jdbc:mysql://localhost:3306/info",
"root", "root");
} catch (ClassNotFoundException e) {
System.out.println("数据库驱动找不到");
e.printStackTrace();
} catch (SQLException e) {
System.out.println("数据库连接异常");
e.printStackTrace();
}
}
/**
* id name gender email
* @return
*/
public ArrayList<Student> getResultSet(){
this.getconnection();
ArrayList<Student> list = null;
list = new ArrayList<Student>();
String sql = "select id,name,gender,email from student";
try {
rs = conn.prepareStatement(sql).executeQuery();
while(rs.next()){
Student stu = new Student();
stu.setId(rs.getInt(1));
stu.setName(rs.getString(2));
stu.setGender(rs.getString(3));
stu.setEmail(rs.getString(4));
list.add(stu);
}
} catch (SQLException e) {
e.printStackTrace();
}finally{
this.closeConnection();
}
return list;
}
public void closeConnection(){
if(rs != null){
try {
rs.close();
} catch (SQLException e) {
System.out.println("rs关闭异常");
e.printStackTrace();
}
rs = null;
}
if(ps != null){
try {
ps.close();
} catch (SQLException e) {
System.out.println("ps关闭异常");
e.printStackTrace();
}
ps = null;
}
if(conn != null){
try {
conn.close();
} catch (SQLException e) {
System.out.println("conn关闭异常");
e.printStackTrace();
}
}
conn = null;
}
}
----------------------------------------------------------
分页逻辑
package com.qxm.control;
import java.util.ArrayList;
import com.qxm.po.Student;
public class PageControl {
private ArrayList<Student> bigList; // 总集合
private int currentPage = 1; // 当前页数
private int pageCount = 2; // 每页数据的条数
private int pageSize; // 总页数
private int valueCount; // 总数据的条数
private ArrayList<Student> smallList;// 分页集合
private int previousPageCount;// 上一页的页数
private int nextPagecount; // 下一页的页数
private boolean isFirstPage; // 是否是第一页
private boolean isLastPage; // 是否是最后一页
public void setCurrentPage(int currentPage) {
this.currentPage = currentPage;
// 上一页
previousPageCount = currentPage - 1;
// 下一页
nextPagecount = currentPage + 1;
// 判断是否为第一页
if (currentPage == 1) {
isFirstPage = true;
} else {
isFirstPage = false;
}
// 判断是否为最后一页
if (currentPage == pageSize) {
isLastPage = true;
} else {
isLastPage = false;
}
smallList = new ArrayList<Student>();
for (int i = (currentPage - 1) * pageCount; i < currentPage * pageCount
&& i < valueCount; i++) {
smallList.add(bigList.get(i));
}
}
public void setBigList(ArrayList<Student> bigList) {
this.bigList = bigList;
valueCount = bigList.size();
pageSize = valueCount % pageCount == 0 ? valueCount / pageCount
: valueCount / pageCount + 1;
}
public int getCurrentPage() {
return currentPage;
}
public ArrayList<Student> getBigList() {
return bigList;
}
public int getPageCount() {
return pageCount;
}
public void setPageCount(int pageCount) {
this.pageCount = pageCount;
}
public int getPageSize() {
return pageSize;
}
public void setPageSize(int pageSize) {
this.pageSize = pageSize;
}
public int getValueCount() {
return valueCount;
}
public void setValueCount(int valueCount) {
this.valueCount = valueCount;
}
public ArrayList<Student> getSmallList() {
return smallList;
}
public void setSmallList(ArrayList<Student> smallList) {
this.smallList = smallList;
}
public int getPreviousPageCount() {
return previousPageCount;
}
public void setPreviousPageCount(int previousPageCount) {
this.previousPageCount = previousPageCount;
}
public int getNextPagecount() {
return nextPagecount;
}
public void setNextPagecount(int nextPagecount) {
this.nextPagecount = nextPagecount;
}
public boolean isFirstPage() {
return isFirstPage;
}
public void setFirstPage(boolean isFirstPage) {
this.isFirstPage = isFirstPage;
}
public boolean isLastPage() {
return isLastPage;
}
public void setLastPage(boolean isLastPage) {
this.isLastPage = isLastPage;
}
}
package com.qxm.po;
import java.io.Serializable;
public class Student implements Serializable {
private static final long serialVersionUID = 1L;
private int id;
private String name;
private String gender;
private String email;
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getGender() {
return gender;
}
public void setGender(String gender) {
this.gender = gender;
}
public String getEmail() {
return email;
}
public void setEmail(String email) {
this.email = email;
}
}
----------------------------------------------------------
jsp页面
<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%>
<%@page import="com.qxm.control.PageControl"%>
<%@page import="com.qxm.po.Student"%>
<html>
<head>
<title>人员信息</title>
</head>
<body>
人员信息
<hr>
<table>
<tr>
<td>id</td>
<td>name</td>
<td>gender</td>
<td>email</td>
</tr>
<%
PageControl pc = (PageControl)request.getAttribute("pc");
ArrayList<Student> tempList = pc.getSmallList();
for(int i = 0;i<tempList.size();i++){
%>
<tr>
<td><%=tempList.get(i).getId() %></td>
<td><%=tempList.get(i).getName() %></td>
<td><%=tempList.get(i).getGender() %></td>
<td><%=tempList.get(i).getEmail() %></td>
</tr>
<%
}
%>
</table>
<a href="Display?pageindex=1">首页</a>
<%
if(pc.isFirstPage() == false){
%>
<a href="Display?pageindex=<%=pc.getPreviousPageCount() %>">上一页</a>
<%
}
%>
<%
if(pc.isLastPage() == false){
%>
<a href="Display?pageindex=<%=pc.getNextPagecount() %>">下一页</a>
<%
}
%>
<a href="Display?pageindex=<%=pc.getPageSize() %>">尾页</a>
</html>
<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%>
<%@page import="com.qxm.control.PageControl"%>
<%@page import="com.qxm.po.Student"%>
<html>
<head>
<title>人员信息</title>
</head>
<body>
人员信息
<hr>
<table>
<tr>
<td>id</td>
<td>name</td>
<td>gender</td>
<td>email</td>
</tr>
<%
PageControl pc = (PageControl)request.getAttribute("pc");
ArrayList<Student> tempList = pc.getSmallList();
for(int i = 0;i<tempList.size();i++){
%>
<tr>
<td><%=tempList.get(i).getId() %></td>
<td><%=tempList.get(i).getName() %></td>
<td><%=tempList.get(i).getGender() %></td>
<td><%=tempList.get(i).getEmail() %></td>
</tr>
<%
}
%>
</table>
<a href="Display?pageindex=1">首页</a>
<%
if(pc.isFirstPage() == false){
%>
<a href="Display?pageindex=<%=pc.getPreviousPageCount() %>">上一页</a>
<%
}
%>
<%
if(pc.isLastPage() == false){
%>
<a href="Display?pageindex=<%=pc.getNextPagecount() %>">下一页</a>
<%
}
%>
<a href="Display?pageindex=<%=pc.getPageSize() %>">尾页</a>
</html>
----------------------------------------------------------
servlet
package com.qxm.servlet;
import java.io.IOException;
import java.util.ArrayList;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import com.qxm.control.PageControl;
import com.qxm.dao.ConnectionDB;
import com.qxm.po.Student;
public class Display extends HttpServlet {
public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
this.doPost(request, response);
}
public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
String currentpage = request.getParameter("pageindex");
if(currentpage == null){
currentpage = "1";
}
int pageindex = Integer.parseInt(currentpage);
PageControl pc = (PageControl)request.getAttribute("pc");
if(pc == null){
pc = new PageControl();
ConnectionDB condb = new ConnectionDB();
ArrayList<Student> allList = condb.getResultSet();
pc.setBigList(allList);
request.setAttribute("pc", pc);
}
pc.setCurrentPage(pageindex);
this.getServletContext().getRequestDispatcher("/display1.jsp").forward(request, response);
}
}
----------------------------------------------------------
dao层
package com.qxm.dao;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.ArrayList;
import com.qxm.po.Student;
@SuppressWarnings("unchecked")
public class ConnectionDB {
public static Connection conn = null;
public static PreparedStatement ps = null;
public static ResultSet rs = null;
public void getconnection(){
try {
Class.forName("com.mysql.jdbc.Driver");
conn = DriverManager.getConnection("jdbc:mysql://localhost:3306/info",
"root", "root");
} catch (ClassNotFoundException e) {
System.out.println("数据库驱动找不到");
e.printStackTrace();
} catch (SQLException e) {
System.out.println("数据库连接异常");
e.printStackTrace();
}
}
/**
* id name gender email
* @return
*/
public ArrayList<Student> getResultSet(){
this.getconnection();
ArrayList<Student> list = null;
list = new ArrayList<Student>();
String sql = "select id,name,gender,email from student";
try {
rs = conn.prepareStatement(sql).executeQuery();
while(rs.next()){
Student stu = new Student();
stu.setId(rs.getInt(1));
stu.setName(rs.getString(2));
stu.setGender(rs.getString(3));
stu.setEmail(rs.getString(4));
list.add(stu);
}
} catch (SQLException e) {
e.printStackTrace();
}finally{
this.closeConnection();
}
return list;
}
public void closeConnection(){
if(rs != null){
try {
rs.close();
} catch (SQLException e) {
System.out.println("rs关闭异常");
e.printStackTrace();
}
rs = null;
}
if(ps != null){
try {
ps.close();
} catch (SQLException e) {
System.out.println("ps关闭异常");
e.printStackTrace();
}
ps = null;
}
if(conn != null){
try {
conn.close();
} catch (SQLException e) {
System.out.println("conn关闭异常");
e.printStackTrace();
}
}
conn = null;
}
}
----------------------------------------------------------
分页逻辑
package com.qxm.control;
import java.util.ArrayList;
import com.qxm.po.Student;
public class PageControl {
private ArrayList<Student> bigList; // 总集合
private int currentPage = 1; // 当前页数
private int pageCount = 2; // 每页数据的条数
private int pageSize; // 总页数
private int valueCount; // 总数据的条数
private ArrayList<Student> smallList;// 分页集合
private int previousPageCount;// 上一页的页数
private int nextPagecount; // 下一页的页数
private boolean isFirstPage; // 是否是第一页
private boolean isLastPage; // 是否是最后一页
public void setCurrentPage(int currentPage) {
this.currentPage = currentPage;
// 上一页
previousPageCount = currentPage - 1;
// 下一页
nextPagecount = currentPage + 1;
// 判断是否为第一页
if (currentPage == 1) {
isFirstPage = true;
} else {
isFirstPage = false;
}
// 判断是否为最后一页
if (currentPage == pageSize) {
isLastPage = true;
} else {
isLastPage = false;
}
smallList = new ArrayList<Student>();
for (int i = (currentPage - 1) * pageCount; i < currentPage * pageCount
&& i < valueCount; i++) {
smallList.add(bigList.get(i));
}
}
public void setBigList(ArrayList<Student> bigList) {
this.bigList = bigList;
valueCount = bigList.size();
pageSize = valueCount % pageCount == 0 ? valueCount / pageCount
: valueCount / pageCount + 1;
}
public int getCurrentPage() {
return currentPage;
}
public ArrayList<Student> getBigList() {
return bigList;
}
public int getPageCount() {
return pageCount;
}
public void setPageCount(int pageCount) {
this.pageCount = pageCount;
}
public int getPageSize() {
return pageSize;
}
public void setPageSize(int pageSize) {
this.pageSize = pageSize;
}
public int getValueCount() {
return valueCount;
}
public void setValueCount(int valueCount) {
this.valueCount = valueCount;
}
public ArrayList<Student> getSmallList() {
return smallList;
}
public void setSmallList(ArrayList<Student> smallList) {
this.smallList = smallList;
}
public int getPreviousPageCount() {
return previousPageCount;
}
public void setPreviousPageCount(int previousPageCount) {
this.previousPageCount = previousPageCount;
}
public int getNextPagecount() {
return nextPagecount;
}
public void setNextPagecount(int nextPagecount) {
this.nextPagecount = nextPagecount;
}
public boolean isFirstPage() {
return isFirstPage;
}
public void setFirstPage(boolean isFirstPage) {
this.isFirstPage = isFirstPage;
}
public boolean isLastPage() {
return isLastPage;
}
public void setLastPage(boolean isLastPage) {
this.isLastPage = isLastPage;
}
}
发表评论
-
jsp中获取路径
2009-05-02 13:50 2418http:/localhost/123/jsp/test.js ... -
数据库中读取文件
2009-03-05 13:44 825=============================== ... -
理解HTTP session原理及应用
2009-02-28 14:44 813摘自:http://www.cnblogs.com ... -
jsp(标签)+javabean+servlet+dao分页
2009-02-15 11:52 1614------------------------------- ... -
C3P0连接池详细配置
2008-10-21 16:22 699转自http://msq.iteye.com & ... -
jsp过滤器(验证码)
2008-10-21 16:15 1024<?xml version="1.0" ... -
displaytag
2008-10-21 16:08 3919displaytag的配置方法 第一 在要分页的j ... -
velocity的配置
2008-10-21 15:48 11191.将VelocityWebEdit-1.0.8文件夹下的pl ... -
jstl实例参考
2008-10-09 14:41 1758<%@ taglib prefix="c&qu ... -
jstlURL
2008-10-09 14:16 637JSTL 前置 名称 URI 范例 核心 标签库 c http ... -
jsp实现购物车
2008-10-06 22:23 3137以下是一个学习是做的小项目 购物模块的的购物车 为了省事没用j ... -
JSP内置对象
2008-10-06 21:59 731jsp内置对象共有九个,他们分别是:out、page、page ...
相关推荐
基于JSP+Servlet+JavaBean+JDBC+DAO的Web架构设计该系统,进一步了解并掌握如何对数据库进行操作,以及如何分析、设计一个应用系统。 需求要求: 该系统的基本需求是,系统要实现如下的基本管理功能: (1)用户分为...
登录和注册的jsp页面+servlet+javaBean登录和注册的jsp页面+servlet+javaBean登录和注册的jsp页面+servlet+javaBean登录和注册的jsp页面+servlet+javaBean登录和注册的jsp页面+servlet+javaBean登录和注册的jsp页面+...
基于JSP+layui+mysql+servlet+javabean实现的图书馆管理系统 基于JSP+layui+mysql+servlet+javabean实现的图书馆管理系统 基于JSP+layui+mysql+servlet+javabean实现的图书馆管理系统 基于JSP+layui+mysql+servlet+...
基于Jsp+Servlet+JavaBean+JDBC实现登录功能,简单实例
jsp+servlet+javaBean实现MVC jsp+servlet+javaBean实现MVCjsp+servlet+javaBean实现MVCjsp+servlet+javaBean实现MVCjsp+servlet+javaBean实现MVCjsp+servlet+javaBean实现MVCjsp+servlet+javaBean实现MVCjsp+...
JSP+JavaBean+Servlet技术(MVC模型) JSP+JavaBean+Servlet技术(MVC模型) JSP+JavaBean+Servlet技术(MVC模型) JSP+JavaBean+Servlet技术(MVC模型) JSP+JavaBean+Servlet技术(MVC模型) JSP+JavaBean+Servlet...
主要是用mvc模式开发的,jsp页面没有用表达式与小脚本,主要用的是jstl+EL表达式写的,对于刚刚学习jsp的人来说,看起来还是有一定的难度,但是你学会了那些东西,那就没有什么阻碍了!总体来说,很多实用的知识点都运用进去...
jsp+servlet+javaBean实现MVC源码 jsp+servlet+javaBean实现MVC源码 jsp+servlet+javaBean实现MVC源码 jsp+servlet+javaBean实现MVC源码 jsp+servlet+javaBean实现MVC源码 jsp+servlet+javaBean实现MVC源码 jsp+...
Jsp+JavaBean+Servlet(MVC设计模式)的寝室管理系统 Jsp+JavaBean+Servlet(MVC设计模式)的寝室管理系统 Jsp+JavaBean+Servlet(MVC设计模式)的寝室管理系统
jsp+servlet+javabean+mysql实现的简易BBS论坛系统 适合初学者学习
JSP源码——jsp+servlet+javaBean实现MVC_jspmvc.zip
网上书店源码jsp+javabean+servlet网上书店源码jsp+javabean+servlet网上书店源码jsp+javabean+servlet网上书店源码jsp+javabean+servlet网上书店源码jsp+javabean+servlet网上书店源码jsp+javabean+servlet网上书店...
基于JSP+JavaBean+Servlet开发的网上书店应用程序 使用MySQL数据库 实现基本的购物车、更改、删除订单内容;用户管理等内容
jsp+Servlet+javaBean实现登录注册,数据库:MySQL 工具:myEclipse
Servlet+JSP+JavaBean(MVC)模式适合开发复杂的web应用,在这种模式下,servlet负责处理用户请求,jsp负责数据显示,javabean负责封装数据。 Servlet+JSP、JavaBean模式程序各个模块之间层次清晰,web开发推荐采用此...
JSP+JavaBean+Mysql+JDBC+Servle,完美实现登录注册功能,实现密码箱功能
jsp+servlet+javaBean访问数据库的简单例子,但是类设置非常巧妙,大家注意。
JSP+Servlet+JavaBean制作简单留言板
使用Oracle数据库+Eclipse+MyEclipse,JSP+Servlet+JavaBean的基本组合,适合刚刚学习JSP的朋友参考一下~