JSP+MySQL MVC综合案例:完整的分页查询

JSP+MySQL数据库开发教程,MVC综合案例,完整的分页查询代码。

JSP+MySQL MVC综合案例:完整的分页查询

JSP+MySQL MVC综合案例125建站网原创,转载请务必注明出处http://www.125jz.com/1381.html。

完整的分页查询开发思路:

1.MySQL数据db_book书信息表tb_book

2.JavaBean封装图书信:BookBean.java

3.BookDao.java于封装商品对的数据库相关操作

  • getConnection()创建数据库连接方法
  • find()实现商品信息的分页查询
  • findCount()法:获取商品信息的总记录数,用于计算商品信息的总页数

4.FindServlet,doGet()方法对分页请求进行处理。

5.bookList.jsp获取图书信息并分页显示。

1.创建MySQL数据库db_book

MySQL数据库db_book中创建图书信息表tb_book

  • Sql句创建图书馆数据
create database db_book;
  • Sql句创图书信息表tb_book
create table tb_book(
id int not null primary key auto_increment,
name varchar(50) not null,
price double null,
bookCount int null,
author varchar(45) null
);

也可用可视化数据库开发工具:

JSP+MySQL MVC综合案例:完整的分页查询

2.创建BookBean.java

创建名称为BookBean的类,用于封装图书对象信息

package com;
public class BookBean {
  private int id;				// 编号
  private String name;			// 图书名称
  private double price;			// 定价
  private int bookCount;		// 数量
  private String author;		// 作者
  public int getId() {  return id; }
  public void setId(int id) {  this.id = id; }
  // 省略了其他属性的Setter与Getter方法
}

3.创建BookDao类

BookDao.java用于封装商品对的数据库相关操作。

package com;
import java.sql.*;
import java.util.*;
import com.BookBean;
public class BookDao {

//getConnection()创建数据库连接方法
public Connection getConnection(){
Connection conn = null; // 数据库连接
try {  Class.forName("com.mysql.jdbc.Driver"); 
String url = "jdbc:mysql://localhost:3306/db_book";
String username = "root";// 数据库用户名
String password = "root";// 数据库密码
conn = DriverManager.getConnection(url,username,password);
} catch (Exception e) { e.printStackTrace(); } 
  return conn; 
}

//find()实现商品信息的分页查询
public List<BookBean> find(int page){
  List<BookBean> list = new ArrayList<BookBean>();
  Connection conn = getConnection();// 获取数据库连接
   String sql = "select * from tb_Book order by id desc limit ?,?";
try {     
  PreparedStatement ps = conn.prepareStatement(sql); 
  ps.setInt(1, (page - 1) * BookBean.PAGE_SIZE); 
  ps.setInt(2, BookBean.PAGE_SIZE); 
  ResultSet rs = ps.executeQuery();// 执行查询操作
while(rs.next()){// 光标向后移动,并判断是否有效
  BookBean b = new BookBean();// 实例化BookBean
  b.setId(rs.getInt("id"));// 对id属性赋值
  b.setName(rs.getString("name"));
  b.setPrice(rs.getDouble("price"));
  b.setBookCount(rs.getInt("bookCount"));
  b.setAuthor(rs.getString("author"));
  list.add(b); // 将BookBean添加到List集合中   }
rs.close();// 关闭ResultSet
ps.close();// 关闭PreparedStatement
conn.close();// 关闭Connection
  } catch (SQLException e) { e.printStackTrace(); }
return list;
}

//findCount()方法:获取商品信息的总记录数
public int findCount(){
  int count = 0; // 总记录数
  Connection conn = getConnection();// 获取数据库连接
  String sql = "select count(*) from tb_book"; 
try {    Statement stmt = conn.createStatement();// 创建Statement
  ResultSet rs = stmt.executeQuery(sql); 
  if(rs.next()){ count = rs.getInt(1); }
  rs.close();// 关闭ResultSet
  conn.close();// 关闭Connection
} catch (SQLException e) { e.printStackTrace(); }
  return count; // 返回总记录数
}

125jz网原创文章。发布者:江山如画,转载请注明出处:http://www.125jz.com/1381.html

(5)
江山如画的头像江山如画管理团队
上一篇 2018年2月22日 上午9:22
下一篇 2018年2月22日 上午10:05

99%的人还看了以下文章

  • 图片上传并压缩源码免费下载(等比例压缩或者原尺寸压缩)-java

    项目开发时,需要手机拍照,然后上传图片,因为项目记录数非常多,每条记录需要3张照片,而手机相机越来越好,分辨率也高,就要压缩后再上传。 中国网页设计今天分享的图片上传并压缩方法支持等比例压缩或者原尺寸压缩两种。 可自行设置图片质量参数quality,能够同时处理jpg和png格式,也可把PNG转jpg或jpg转PNG。 宽度和高度可以根据项目实际需求自行设置…

    2019年6月24日
    6.5K0
  • 基于jspSmartUpload的Jsp文件上传实例

    SmartUpload是一个免费的文件上传下载组件1、使用简单:仅三五行代码就可以搞定文件的上传2、方便存取:利用组件提供的对象,可以获得全部上传文件的信息(包括文件名,大小,类型,扩展名,文件数据等)。3、能对上传的文件在大小、类型等方面做出限制。如此可以滤掉不符合要求的文件。 下载jsmartcom_zh_CN.jar文件:http://www.125j…

    2018年12月11日
    2.9K0
  • servlet共享变量实现计数器功能(servlet入门)

    servlet类中定义的成员变量,被所有的客户线程共享。 要求利用servlet共享变量实现计数器功能。 Count.java package com.servlet; import java.io.I.*; import javax.servlet.*; import javax.servlet.http.*; public class Count ext…

    2018年11月27日
    5.5K0
  • dao service view pojo utils tools都放什么? jsp的(MVC)三层架构入门

    java的(MVC)三层架构(dao、service、view) Java EE典型架构,分层的目的:高内聚,低耦合。 一般java都是三层架构   (还可加一个:工具类:util比如处理多语言功能,网站非法信息过滤等等功能的代码集); 三层架构体系,是逻辑上的三层,按照完成功能不同,所做事宜不同,将项目分为三个层次 1:数据访问层(dao) 2:业务逻辑层…

    2020年10月24日
    9.0K0
  • 1.Spring框架概述

    1.1、资源 1.2、Spring历史 1.3、框架特征与功能 1.4、Spring组成 1.5、Spring Boot与Spring Cloud 一、Spring框架概述 Spring是一个开源免费的框架,为了解决企业应用开发的复杂性而创建。Spring框架是一个轻量级的解决方案,可以一站式地构建企业级应用。Spring是模块化的,所以可以只使用其中需要的…

    2023年1月19日 编程开发
    5.0K0
  • 表单method方式为post或get中文乱码的解决方法

    表单method方式为post中文乱码解决方法 ■设置请求和响应的编码方式 request.setCharacterEncoding(“utf-8”); response.setCharacterEncoding(“utf-8”); 表单method方式为get中文乱码解决方法 ■治标的方法: new String(s.getBytes(”iso-8859-…

    2019年12月17日
    6.0K0

发表回复

登录后才能评论