推荐:JSP的MYSQL数据库的代码最近研究了jsp的数据库操作问题。本来我是要拿oracle数据库来测试的。但是由于机子的内存限制,就换成了mysql数据库了。 第一次用jsp编数据库的连接,发现问题还真不少。刚开始是jdbc配置就有问题,后来数据库连接好了,中文设置也是个问题。后来还有sql语句

这个功能一共创建了两个javabean组件和一个jsp页面显示分页页面,第一个是处理以数据库连接的javabean,第一个javabean是处理分页查询结果的代码,第三个jsp是调用第二个javabean,显示分页查询结果!

//下面是连接mysql数据库的一个javabean的代码:

package data;

import java.sql.*;

public class LoginData{

Connection conn=null;

public LoginData(){

this.connect();

}

public Connection getConn(){

return this.conn;

}

public boolean connect(){

try{

//使用JDBC桥创建数据库连接

Class.forName("org.gjt.mm.mysql.Driver").newInstance();

//使用DriverManager类的getConnection()方法建立连接

//第一个参数定义用户名,第二个参数定义密码

this.conn=java.sql.DriverManager.getConnection("jdbc:mysql://localhost:3306/logindemo?useUnicode=true&characterEncoding=gb2312","root","123456");

}catch(Exception ex){

ex.printStackTrace();

return false;

}

return true;

}

}

//下面是一个javabean的处理mysql数据库的分页显示查询的代码

package data;

import java.sql.*;

import java.util.*;

public class strongSplitPage

{

private Connection conn=null;

private Statement stmt=null;

private ResultSet rs=null;

private ResultSetMetaData rsmd=null;

//sql 查询语句

private String sqlStr;

//总纪录数目

private int rowCount;

//所分得逻辑页数

private int pageCount;

//每页显示的纪录数目

private int pageSize;

//定义表的列数目

private int columnCount;

private int irows;

public void initialize(String sqlStr,int pageSize,int showPage)

{

this.sqlStr=sqlStr;

this.irows=pageSize*(showPage-1);

this.pageSize=pageSize;

try

{

LoginData loginData=new data.LoginData();

this.conn=loginData.getConn();

this.stmt=this.conn.createStatement();

this.rs=this.stmt.executeQuery(this.sqlStr);

this.rsmd=this.rs.getMetaData();

if(this.rs!=null)

{

this.rs.last();

this.rowCount=this.rs.getRow();

this.rs.first();

this.columnCount=this.rsmd.getColumnCount();

this.pageCount=(this.rowCount-1)/this.pageSize+1;

this.rs.close();

this.stmt.close();

}

this.sqlStr=this.sqlStr+" limit "+this.irows+","+this.pageSize;

this.stmt=this.conn.createStatement();

this.rs=this.stmt.executeQuery(this.sqlStr);

}catch(Exception ex)

{

ex.printStackTrace();

}

}

public Vector getPage()

{

Vector vData=new Vector();

try

{

if(this.rs!=null)

{

while(this.rs.next())

{

String[] sData=new String[this.columnCount];

for(int j=0;j

{

sData[j]=this.rs.getString(j+1);

}

vData.addElement(sData);

}

this.rs.close();

this.stmt.close();

this.conn.close();

}

}catch(Exception ex)

{

ex.printStackTrace();

}

return vData;

}

//获得页面总数

public int getPageCount()

{

return this.pageCount;

}

//获得数据表中总纪录数

public int getRowCount()

{

return this.rowCount;

}

}

//下面是jsp显示分页页面

//显示每页的纪录数

int pageSize=10;

String sqlStr="";

//当前页

int showPage=1;

%>

sqlStr="select * from userinfo order by id ";

String strPage=null;

//获得跳转到的页面

strPage=request.getParameter("showPage");

if(strPage==null){

showPage=1;

pages.initialize(sqlStr,pageSize,showPage);

}else{

try{

showPage=Integer.parseInt(strPage);

pages.initialize(sqlStr,pageSize,showPage);

}catch(NumberFormatException ex){

showPage=1;

pages.initialize(sqlStr,pageSize,showPage);

}

if(showPage<1){

showPage=1;

pages.initialize(sqlStr,pageSize,showPage);

}

if(showPage>pages.getPageCount()){

showPage=pages.getPageCount();

pages.initialize(sqlStr,pageSize,showPage);

}

}

//取得要显示的数据集合

Vector vData=pages.getPage();

%>

分页显示

个人基本信息

编号 学号 姓名

for(int i=0;i

{

//显示数据数

String[] sData=(String[])vData.get(i);

%>

}

%>

共条 条/页  第页/共页  [首页]

//判断“上一页”链接是否要显示

if(showPage>1){

%>

[上一页]

}

else{

%>

[上一页]

}

//判断“下一页”链接是否显示

if(showPage

{

%>

[下一页]

}

else{

%>

[下一页]

}

%>

[尾页] 转到

for(int x=1;x<=pages.getPageCount();x++)

{

%>

if(showPage==x){

out.println("selected");

}

%> >

}

%>

分享:jsp验证码使用jsp验证码使用 yanzhe,jsp %@ page autoFlush=false import=java.awt.*,java.awt.image.*,com.sun.image.codec.jpeg.*,java.util.*% %@ page import=org.apache.commons.lang.RandomStringUtils% % RandomStringUtils rs=new RandomStringUtils(); Str

jsp mysql模板_jsp的分页查询的代码(mysql数据库)相关推荐

  1. mysql分页查询_4种MySQL分页查询优化的方法,你知道几个?

    前言 当需要从数据库查询的表有上万条记录的时候,一次性查询所有结果会变得很慢,特别是随着数据量的增加特别明显,这时需要使用分页查询.对于数据库分页查询,也有很多种方法和优化的点.下面简单说一下我知道的 ...

  2. Mysql给普通和分页查询结果加序号

    Mysql给普通和分页查询结果加序号 一.效果展示 1.普通查询加序号 2.分页查询加序号 二.表结构以及数据 三.解释说明 1.解释 2.相关知识点 3.= 和 := 的区别: 一.效果展示 1.普 ...

  3. mysql多表联查分页_sqlserver多表联合查询和多表分页查询的代码讲解

    sqlserver多表联合查询和多表分页查询的代码讲解 发布时间:2020-05-14 14:42:07 来源:亿速云 阅读:700 作者:Leah 这篇文章主要为大家详细介绍了sqlserver多表 ...

  4. mysql use mysql_1、设置mysql远程访问执行mysql 命令进入mysql 命令模式,执行如下SQL代码mysql use mysql; mysql GRANT ALL ON ...

    1.设置mysql远程访问 执行mysql 命令进入mysql 命令模式,执行如下SQL代码mysql> use mysql; mysql> GRANT ALL ON *.* TO adm ...

  5. jsp import mysql con_jsp的分页查询的代码(mysql数据库)

    [原来没有写过,听朋友说,比较难,就试一下,还是挺简单的,只不过,具体实用方面还得自己写,没有什么难的,自己看看就懂了.bean文件:package bean;/** * jsp+java bea 这 ...

  6. mysql jdbc 分页查询_JDBC与MySQL实现分页查询技术

    由于通过ResultSet的光标实现数据分页存在占用大量资源等性能方便的缺陷,所以,在实际开发中,通过采用数据库的分页机制来实现分页查询功能更为上上之策. 下面我就通过MySQL数据库提供的分页机制来 ...

  7. servlet mysql 分页_Java基础94 分页查询(以MySQL数据库为例,Servlet技术)

    1.概述 分页查询,也可叫做分批查询,基于数据库的分页语句(不同数据库是不同的). 本文使用的事MySql数据库. 假设:每页显示10条数据. Select * from contact  limit ...

  8. MySQL百万级数据分页查询及优化

    点击蓝色"程序猿DD"关注我哟 加个"星标",不忘签到哦 来源:https://www.cnblogs.com/geningchao 关注我,回复口令获取可获取 ...

  9. MySQL大数据量分页查询方法及其优化

    点击上方 好好学java ,选择 星标 公众号 重磅资讯.干货,第一时间送达 今日推荐:收藏了!7 个开源的 Spring Boot 前后端分离优质项目个人原创+1博客:点击前往,查看更多 链接:ht ...

最新文章

  1. android gradle 给所有的buildFlavor 的versionName 增加一个后缀
  2. DCMTK:演示状态查看器-网络接收组件(存储SCP)
  3. tcp为什么需要3次握手和3次握手的过程
  4. 基于云存储网关的Veeam备份归档上云方案
  5. 智能算法!数据平台自动生成报表,智慧景区的可视化有什么不同
  6. python采用强制自动缩进使得代码具有极佳的可读性_Python简介
  7. Django框架 之 Form表单和Ajax上传文件
  8. 大屏数据可视化效果如何提升
  9. 【SAS BASE】SAS函数
  10. 初学FPGA一些建议
  11. MySQL 8.0窗口函数介绍(一)
  12. c语言中cnt用法,如何使用PLC计数器(CNT)指令
  13. 二维码加logo demo
  14. 凸优化与非线性优化基础(3)-- 二次规划Quadratic Programming
  15. ssh连接本地虚拟机
  16. Android仿拼多多拼团堆叠头像
  17. 通过css实现图片过渡放大的效果
  18. 【LWIP】初学STM32+LWIP+网络遇到的基础问题记录
  19. Android学习计划
  20. 从软件工程师到IT猎头:我的一点经…

热门文章

  1. AI论文解读:基于Transformer的多目标跟踪方法TrackFormer
  2. 一文讲全了Python 类和对象内容
  3. 拥有5大核心竞争力的华为云GaussDB,成SACC2021最靓那一个…
  4. 【华为云技术分享】【DevCloud · 敏捷智库】如何避免重要需求遗漏?
  5. 化鲲为鹏,我有话说 ,鲲鹏ARM架构的优势
  6. 基于Docker快速搭建ELK
  7. Kotlin学习笔记17 反射Part1
  8. WORD开发工具的控件功能?
  9. 深圳python工程师 vue_Laravel 招聘:[深圳] [15K-25K] 明源云招聘 PYTHON [SAAS] [研发基地] | Laravel China 社区...
  10. idea项目没法继承httpservlet_SpringBoot项目发布为war