- 浏览: 96245 次
- 性别:
- 来自: 广西
文章分类
最新评论
-
李涤尘:
很好,很清晰的记录
Oracle 多表查询 -
yanxiaojia521:
项目部署成功后,使用localhost可以访问,在局域网内容访 ...
Linux系统下的项目部署 -
txlong_onz:
学好正则这些都不用记了。有的时候要灵活的。
文本框的输入限制
此分页程序只用到三个文件test.jsp(用于显示分页结果的JSP页面)和Pagination.java(用于封装分页程序)和DBConnect.java(用于连接SqlServer 2000数据库的JAVA类),和一个简单数据库user的表username,测试用的web发布服务器为Tomcat 5.5.20).而且DBConnect.java和Pagination.java放在WEB-INF下的classes目录下(注意,如果没有的话就新建一个),数据库用的是SqlServer 2000.
1、create database username ----------建立数据库username表
create table username (name varchar(25));---------建立数据表username有一个字段name类型是字符型( 有关sql的操作请注意: D:\学习资料\SQL server\课件\逍湘 SQL大全.doc 的数据库方面知识.)
2、DBConnect.java---------------用于连接sqlserver 2000数据库
package net.xiaoxiang;
import java.sql.*;
/**
* 数据库连接类---(JDBC)
* @author 逍湘
*/
public class DBConnect
{
// 设置驱动变量
String drivename = "com.microsoft.jdbc.sqlserver.SQLServerDriver";
// 创建连接,数据库名user
String URL = "jdbc:microsoft:sqlserver://127.0.0.1:1433;DatabaseName=user";
// 这里替换成你自已的数据库用户名
String user = "sa";
// 这里替换成你自已的数据库用户密码
String password = "123";
Connection conn = null;
ResultSet rs = null;
/**
* 构造方法创建数据库连接 *
*/
public DBConnect ( ){
try
{
Class.forName ( drivename );// 创建数据库驱动
conn = DriverManager.getConnection ( URL, user, password );// 创建连接
}
catch ( java.lang.ClassNotFoundException e )
{
System.out.println ( "Jdbc_conn():" + e.getMessage ( ) );
}
catch ( SQLException ex )
{
System.out.println ( "sql.executeUpdate:" + ex.getMessage ( ) );
}
}
/**
* 数据更新方法
* @param sql
* @throws Exception
*/
public void executeUpdate ( String sql ) throws Exception
{
sql = new String ( sql.getBytes ( "GBK" ), "ISO8859_1" );// 字符的转换
try
{
Statement stmt = conn.createStatement ( );
stmt.executeUpdate ( sql );
conn.close ( );
stmt.close ( );
}
catch ( SQLException ex )
{
System.out.println ( "sql.executeUpdate:" + ex.getMessage ( ) );
}
}
/**
* 数据查询方法
* @param sql
* @return
* @throws Exception
*/
public ResultSet executeQuery ( String sql ) throws Exception
{
rs = null;
sql = new String ( sql.getBytes ( "GBK" ), "ISO8859_1" );// 字符的转换
try
{
Statement stmt = conn.createStatement ( );// 数据操作对象
rs = stmt.executeQuery ( sql );// 执行sql
// conn.close();// 关闭连接
// stmt.close();// 关闭对象
}
catch ( SQLException ex )
{
System.out.println ( "sql.executeQuery:" + ex.getMessage ( ) );
}
return rs;
}
/**
* 测试
* @param args
*/
public static void main ( String args[] )
{
try
{
ResultSet rs_count = new DBConnect ( )
.executeQuery ( "select count(*) as t from username" );// 传递进数据库处理的javabean
rs_count.next ( );
int resultconts = rs_count.getInt ( "t" );// 取得总的数据数
System.out.print ( resultconts );
}
catch ( Exception ex )
{
System.out.println ( "sql.executeQuery:ok" + ex.getMessage ( ) );
}
}
}
用Pagination.java封装分页类,在test.jsp里显示
3、Pagination.java--------封装分页的类
package net.xiaoxiang;
import java.sql.*;
import javax.servlet.http.*;
/**
* 封装分页程序
* @author 逍湘
*/
public class Pagination
{
private String strPage = null; // page参数变量
private int current_Pages; // 当前页数
private int page_record; // 设置每页显示记录数
private int total_Pages; // 总页数
/**
* 取得xxx.jsp页面文件里的xxx.jsp?page=<%=current_Pages-1%>
* 或是page=<%=current_Pages+1%>的值给变量strPage
* @param request
* @param page
* 为跳转到的页号
* @return strPage
*/
public String strPage ( HttpServletRequest request, String page )
{
try
{
strPage = request.getParameter ( page );// request对象取得page的值
}
catch ( Exception e )
{
System.out.println ( "delcolumn" + e.getMessage ( ) );
}
return strPage;
}
/**
* 设置要显示的当前页数
* @param strPage
* @return current_Pages(返回页面数)
*/
public int current_Pages ( String strPage )
{
try
{
if ( strPage == null )
{ // 默认没有就设置是第一页
current_Pages = 1;
}
else
{
current_Pages = Integer.parseInt ( strPage );// 取得strPage的整数值
if ( current_Pages < 1 ) // 如果小于1,同样返回是第一页
current_Pages = 1;
}
}
catch ( Exception e )
{
System.out.print ( "current_Pages" );
}
return current_Pages;// 返回页面数
}
/**
* @param page_record
* 设置每页要显示的记录数
*/
public void setPage_record ( int page_record )
{
this.page_record = page_record;
}
/**
* 取得总页数
* @param total_record
* 总记录数(查询数据库获得)
* @return total_Pages 返回总页数
*/
public int getTotal_Pages ( int total_record )
{
int test;// 变量
test = total_record % page_record;// 取得余数
if ( test == 0 )
total_Pages = total_record / page_record;// 每页显示的整数
else
total_Pages = total_record / page_record + 1;// 不是整数就加一
return total_Pages;
}
/**
* 结果集的返回
* @param rs
* 结果集
* @param current_Pages
* 页数
* @return rs 结果集
*/
public ResultSet getPageSet ( ResultSet rs, int current_Pages )
{
if ( current_Pages == 1 )
{
return rs;// 如果就一页,就返回这个rs
}
else
{
int i = 1;
try
{
while ( rs.next ( ) )
{
i = i + 1;
if ( i > ( ( current_Pages - 1 ) * page_record ) )
break;// 退出
}
return rs;// 从退出开始将结果集返回
}
catch ( Exception e )
{
System.out.print ( e.getMessage ( ) );
}
}
return rs;
}
}
4.test.jsp --------显示页面
<%@ page language="java" import="java.util.*" pageEncoding="GBK"%>
<%@ page import="java.sql.*"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>分页显示</title>
<meta http-equiv="pragma" content="no-cache">
<meta http-equiv="cache-control" content="no-cache">
<meta http-equiv="expires" content="0">
<meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
<meta http-equiv="description" content="This is my page">
<!--
<link rel="stylesheet" type="text/css" href="styles.css">
-->
</head>
<body>
<jsp:useBean id="m_pages" scope="page" class="bean.Pagination"></jsp:useBean>
<jsp:useBean id="sql" scope="page" class="bean.DBConnect" />
<%
int curPages = m_pages.current_Pages ( m_pages.strPage ( request, "page" ) );
m_pages.setPage_record ( 10 );//设置每页显示10条
%>
<%
//传递进数据库处理的javabean
ResultSet rs_count = sql.executeQuery ( "select count(*) as t from username" );
rs_count.next ( );
int resultconts = rs_count.getInt ( "t" );//取得总的数据数
int totalPages = m_pages.getTotal_Pages ( resultconts );//取出总页数
//获取指针的结果集参数是(结果集,页数)
ResultSet rs = m_pages.getPageSet ( sql
.executeQuery ( "select * from username" ), curPages );
%>
<p>
分类表
</p>
<table border="1">
<tr>
<td>
姓名
</td>
</tr>
<%
int i = 1;
%>
<%
while ( rs.next ( ) )
{
%>
<tr>
<!-- <td> <%-- <%=rs.getString("id")%> --%> </td> -->
<td><%=rs.getString ( "name" )%>
</td>
</tr>
<%
i = i + 1;
if ( i > 10 )
break;
}
%>
</table>
<p align="center">
<%
if ( curPages > 1 )
{
%><a href="test.jsp?page=<%=curPages - 1%>">上一页</a>
<%
}
%>
<%
if ( curPages < totalPages )
{
%><a href="test.jsp?page=<%=curPages + 1%>">下一页</a>
<%
}
%>
</p>
</body>
</html>
发表评论
-
Java字符编码(第一篇)
2012-05-17 15:12 0Java字符编码 1. 第一篇:字符编码概念基 ... -
SQL驱动的配置
2012-05-17 14:21 1032<!-- 各种SQL驱动的配置方式 --> &l ... -
java程序调用bat文件,执行oracel数据库备份
2011-11-07 13:06 1526import java.io.BufferedReader; ... -
获取任意java类实例的方法和属性,包括父类的方法和属性
2011-04-14 16:53 2810import java.lang.reflect.Field; ... -
java反编译
2011-04-04 12:08 796java反编译工具jad 1.5.8g ... -
CHM帮助文档制作
2011-04-04 12:06 2159CHM帮助文档制作 下载软件:jd2chm.exe ht ... -
MyEclipse下远程调试liunx下的代码
2011-03-23 10:58 2140MyEclipse下远程调试liunx下的代码 在编译好的c ... -
Linux系统下的项目部署
2011-03-17 20:42 2135Linux系统下的项目部署 第1章 系统配置 ... -
Excel正常显示全部由数字组成的长字符串
2011-03-09 10:19 2607Excel正常显示全部由数 ... -
for 循环的使用技巧
2011-01-29 18:28 1819for 循环的使用技巧 在程序设计中,经常要进行程序流程 ... -
java网络编程 多线程服务器与客户端系统架构 socket应用
2011-01-14 17:31 2280java网络编程 多线 ... -
struts-config.xml 文件的配置
2011-01-14 14:42 623<?xml version="1.0" ... -
web.xml 文件的完整配置
2011-01-14 14:41 1105<?xml version="1.0" ... -
AjaxAnywhere的配置
2011-01-14 14:21 1505AjaxAnywhere的配置 ajaxany ... -
在JAVA中使用JDBC连接数据库
2011-01-14 14:15 845package net.xiaoxiang.sql; i ... -
在JAVA中使用ODBC连接数据库
2011-01-14 14:14 2550package net.xiaoxiang.sql; i ... -
Log4J配置
2011-01-14 14:09 857------------------------------- ...
相关推荐
在Java Web开发中,"利用servlet+jsp+javabean进行分页查询"是一个常见的技术实践,主要用于处理大量数据的展示,提升用户体验并减轻服务器压力。本篇将详细讲解这个过程中的关键知识点。 首先,我们需要理解...
MySQL分页JSP实现Servlet+JavaBean+JSP三级架构 本文档对MySQL分页技术进行了总结,讨论了在JSP实现中使用Servlet+JavaBean+JSP三级架构的分页技术的实现方式。文章首先讨论了分页技术的重要性,并且提出了一个基本...
本文将详细介绍如何使用JSP(JavaServer Pages)和JavaBean来实现一个通用的分页功能,适合任何数据库系统。 首先,我们需要理解JSP和JavaBean的基本概念。JSP是一种动态网页技术,它允许我们在HTML页面中嵌入Java...
本主题将深入探讨如何使用JSP、JavaBean和Servlet技术来实现分页功能。这三个组件是Java Web应用程序中的核心元素,它们共同作用于服务器端,处理请求,管理业务逻辑,并向客户端展示数据。 首先,我们来看JSP...
本项目“JSP+JavaBean+Servlet实现分页技术”利用了经典的Java Web开发模型,结合Mysql数据库、Tomcat服务器以及MyEclipse开发工具,实现了高效、灵活的分页功能。下面我们将详细探讨其中涉及的关键知识点。 1. JSP...
jsp+javabean 分页程序jsp+javabean 分页程序jsp+javabean 分页程序jsp+javabean 分页程序jsp+javabean 分页程序jsp+javabean 分页程序jsp+javabean 分页程序 简单实用供初学者参考
本项目是关于如何使用MySQL数据库、JavaServer Pages(JSP)和JavaBean来实现网页上的分页功能。这里我们将深入探讨这些组件以及它们在实现分页中的作用。 **MySQL分页** MySQL数据库提供了`LIMIT`和`OFFSET`...
jsp+javabean+servlet使用简单的MVC模式实现登录注册、留言板、分页的功能。model(javabean)层实现读写数据库,数据库名为webapp,没有密码;view(JSP)实现展示信息;controller(servlet)层联系model和view,...
5.Servlet + JSP +JavaBean + JDBC(DBUtils)+ mysql 6.数据库 create database day19; use day19; create table t_customer( id varchar(40) primary key, username varchar(20), gender varchar(10), ...
jsp+javabean分页源码,功能强大,运行OK!已经被应用在了本人的一个网站前台开发的项目中。代码注释详细,配有readme.txt说明,非常适合刚刚步入J2EE的程序员朋友,也可以用来作为J2EE高手做网站前台或者其他小型...
本项目聚焦于使用JSP、JavaBean和Servlet技术,结合Oracle与MySQL两种主流关系型数据库实现分页功能。以下将详细介绍这些技术及其在分页中的应用。 1. JSP(JavaServer Pages):JSP是一种动态网页技术,允许开发...
文章整理: www.diybl.com 文章来源: 网络 去论坛 建我的blog 今天给同学用JSP+JavaBean+Servlet做了个分页。用的是MySQL+Tomcat+MyEclispe环境。
本教程将详细讲解如何利用JSP(JavaServer Pages)、JavaBean和Servlet技术来实现数据分页功能。我们将讨论以下几个关键知识点: 1. **JSP基础**:JSP是Java的一种动态网页技术,它允许我们在HTML页面中嵌入Java...
"JSP+Servlet+JavaBean查询分页"的主题涵盖了如何在处理大量数据时,有效地展示信息并允许用户进行分页浏览。在这个主题中,我们将深入探讨这三个关键组件在分页查询中的应用。 首先,JSP是Java的一个标准视图技术...
本文将深入探讨`JSP(JavaServer Pages)、Servlet、JavaBean`以及`Ajax`如何在MVC架构下实现数据的增删改查与分页显示,并涉及`SmartUpload`组件用于文件和图片的上传。 首先,`MVC`模式是一种软件设计模式,它将...
总结起来,“jsp+servlet+javabean 分页”方案是Java Web开发中常见的分页实现方式。它充分利用了JSP的视图呈现能力,Servlet的请求处理功能以及JavaBean的数据封装特性,形成了一套清晰的职责划分。这种模式不仅...
本项目以"JSP+JavaBean"的技术栈,实现了一个简单易用的分页组件。以下是这个组件的核心知识点及详细说明: 1. **JavaBean**: JavaBean是一种遵循特定规范的Java类,它主要用于封装数据和业务逻辑。在这个分页组件...
本项目以"JSP+servlet+javabean实现购物车"为主题,旨在演示如何使用这些技术来创建一个功能完整的购物车系统。下面我们将深入探讨这些知识点。 1. **JSP(JavaServer Pages)**:JSP是一种服务器端脚本语言,用于...
网上商城项目是现代电子商务的重要组成部分,本项目采用经典的JSP、Servlet和JavaBean技术进行实现,提供了完整的源码,旨在帮助开发者理解和学习如何构建一个功能完备、界面美观的网上购物平台。下面将对这个项目的...