本文共 6036 字,大约阅读时间需要 20 分钟。
public class Product { public static final int PAGE_SIZE = 2; private int id; private String name; private double price; private int num; private String unit; 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 double getPrice() { return price; } public void setPrice(double price) { this.price = price; } public int getNum() { return num; } public void setNum(int num) { this.num = num; } public String getUnit() { return unit; } public void setUnit(String unit) { this.unit = unit; }}
import java.sql.*;import java.util.ArrayList;import java.util.List;public class ProductDao { public Connection getConnection(){ Connection conn; try{ Class.forName("com.mysql.jdbc.Driver"); String url = "jdbc:mysql://localhost:3306/test?serverTimezone=GMT%2B8"; String username = "root"; String password = "********"; try{ conn = DriverManager.getConnection(url, username, password); if(conn != null) { return conn; } }catch (SQLException e){ e.printStackTrace(); } }catch (ClassNotFoundException e){ e.printStackTrace(); } return null; } public Listfind(int page){ List list = new ArrayList<>(); Connection conn = getConnection(); String sql = "select * from tb_product order by id desc limit ?,?"; try{ PreparedStatement ps = conn.prepareStatement(sql); ps.setInt(1, (page-1)*Product.PAGE_SIZE); ps.setInt(2, Product.PAGE_SIZE); ResultSet rs = ps.executeQuery(); while(rs.next()){ Product p = new Product(); p.setId(rs.getInt("id")); p.setName(rs.getString("name")); p.setPrice(rs.getDouble("price")); p.setNum(rs.getInt("num")); p.setUnit(rs.getString("unit")); list.add(p); } rs.close(); ps.close(); conn.close(); } catch (SQLException e){ e.printStackTrace(); } return list; } public int findCount(){ int count = 0; Connection conn = getConnection(); String sql = "select count(*) from tb_product"; try{ Statement stmt = conn.createStatement(); ResultSet rs = stmt.executeQuery(sql); if(rs.next()){ count = rs.getInt(1); } rs.close(); stmt.close(); conn.close(); } catch (SQLException e){ e.printStackTrace(); } return count; }}
<%@ page contentType="text/html;charset=UTF-8" language="java" %><%@ page import="com.lyq.bean.Product" %><%@ page import="java.util.List" %>商品信息条目 list = (List )request.getAttribute("list"); for(Product p : list){ %>
所有商品信息 | ||||
ID | 商品名称 | 价格 | 数量 | 单位 |
<%=p.getId()%> | <%=p.getName()%> | <%=p.getPrice()%> | <%=p.getNum()%> | <%=p.getUnit()%> |
<%=request.getAttribute("bar")%> |
import com.lyq.bean.Product;import com.lyq.bean.ProductDao;import javax.servlet.ServletException;import javax.servlet.annotation.WebServlet;import javax.servlet.http.HttpServlet;import javax.servlet.http.HttpServletRequest;import javax.servlet.http.HttpServletResponse;import java.io.IOException;import java.util.List;@WebServlet(name = "FindProductServlet", urlPatterns = "/FindProductServlet")public class FindProductServlet extends HttpServlet { protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { } protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { int currPage = 1; if(request.getParameter("page") != null){ currPage = Integer.parseInt(request.getParameter("page")); } ProductDao dao = new ProductDao(); Listlist = dao.find(currPage); request.setAttribute("list", list); int pages; int count = dao.findCount(); if(count % Product.PAGE_SIZE == 0){ pages = count/Product.PAGE_SIZE; }else{ pages = count/Product.PAGE_SIZE + 1; } StringBuffer sb = new StringBuffer(); for(int i=1; i<=pages; i++){ if(i == currPage){ sb.append("『").append(i).append("』"); }else{ sb.append(" ").append(i).append(""); } sb.append(" "); } request.setAttribute("bar", sb.toString()); request.getRequestDispatcher("/JDBCOption/Product_list.jsp").forward(request, response); }}
转载地址:http://laqgn.baihongyu.com/