效果图:
2、Java类
package shop.hh;
public class Book {
// 编号
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;
}
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 getBookCount() {
return bookCount;
}
public void setBookCount(int bookCount) {
this.bookCount = bookCount;
}
public String getAuthor() {
return author;
}
public void setAuthor(String author) {
this.author = author;
}
}
package shop.hh;
import java.io.IOException;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import java.util.ArrayList;
import java.util.List;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
public class FindServlet extends HttpServlet {
private static final long serialVersionUID = 1L;
protected void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
try {
// 加载数据库驱动,注册到驱动管理器
Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");
// 数据库连接字符串
String url = "jdbc:sqlserver://DESKTOP-EO1BDL6;DatabaseName=hh";
// 数据库用户名
String username = "sa";
// 数据库密码
String password = "sa@12345";
// 创建Connection连接
Connection conn = DriverManager.getConnection(url, username, password);
// 获取Statement
Statement stmt = conn.createStatement();
// 添加图书信息的SQL语句
String sql = "select * from tb_books";
// 执行查询
ResultSet rs = stmt.executeQuery(sql);
// 实例化List对象
List list = new ArrayList();
// 判断光标向后移动,并判断是否有效
while (rs.next()) {
// 实例化Book对象
Book book = new Book();
// 对id属性赋值
book.setId(rs.getInt("id"));
// 对name属性赋值
book.setName(rs.getString("name"));
// 对price属性赋值
book.setPrice(rs.getDouble("price"));
// 对bookCount属性赋值
book.setBookCount(rs.getInt("bookCount"));
// 对author属性赋值
book.setAuthor(rs.getString("author"));
// 将图书对象添加到集合中
list.add(book);
}
// 将图书集合放置到request之中
request.setAttribute("list", list);
rs.close(); // 关闭ResultSet
stmt.close(); // 关闭Statement
conn.close(); // 关闭Connection
} catch (ClassNotFoundException e) {
e.printStackTrace();
} catch (SQLException e) {
e.printStackTrace();
}
// 请求转发到book_list.jsp
request.getRequestDispatcher("book_list.jsp").forward(request, response);
}
protected void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
int id = Integer.valueOf(request.getParameter("id"));
int bookCount=Integer.valueOf(request.getParameter("bookCount"));
try {
// 加载数据库驱动,注册到驱动管理器
Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");
// 数据库连接字符串
String url = "jdbc:sqlserver://DESKTOP-EO1BDL6;DatabaseName=hh";
// 数据库用户名
String username = "sa";
// 数据库密码
String password = "sa@12345";
Connection conn = DriverManager.getConnection(url, username, password);
String sql="update tb_book set bookcount=? where id=?";
PreparedStatement ps=conn.prepareStatement(sql);
ps.setInt(1, bookCount);
ps.setInt(2, id);
ps.executeUpdate();
ps.close();
conn.close();
} catch (Exception e) {
e.printStackTrace();
}
response.sendRedirect("FindServlet");
}
}
package shop.hh;
import java.io.IOException;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import java.util.ArrayList;
import java.util.List;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
public class UpdateServlet extends HttpServlet {
private static final long serialVersionUID = 1L;
protected void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
try {
// 加载数据库驱动,注册到驱动管理器
Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");
// 数据库连接字符串
String url = "jdbc:sqlserver://DESKTOP-EO1BDL6;DatabaseName=hh";
// 数据库用户名
String username = "sa";
// 数据库密码
String password = "sa@12345";
// 创建Connection连接
Connection conn = DriverManager.getConnection(url, username, password);
// 获取Statement
Statement stmt = conn.createStatement();
// 添加图书信息的SQL语句
String sql = "select * from tb_books";
// 执行查询
ResultSet rs = stmt.executeQuery(sql);
// 实例化List对象
List list = new ArrayList();
// 判断光标向后移动,并判断是否有效
while (rs.next()) {
// 实例化Book对象
Book book = new Book();
// 对id属性赋值
book.setId(rs.getInt("id"));
// 对name属性赋值
book.setName(rs.getString("name"));
// 对price属性赋值
book.setPrice(rs.getDouble("price"));
// 对bookCount属性赋值
book.setBookCount(rs.getInt("bookCount"));
// 对author属性赋值
book.setAuthor(rs.getString("author"));
// 将图书对象添加到集合中
list.add(book);
}
// 将图书集合放置到request之中
request.setAttribute("list", list);
rs.close(); // 关闭ResultSet
stmt.close(); // 关闭Statement
conn.close(); // 关闭Connection
} catch (ClassNotFoundException e) {
e.printStackTrace();
} catch (SQLException e) {
e.printStackTrace();
}
// 请求转发到book_list.jsp
request.getRequestDispatcher("book_list.jsp").forward(request, response);
}
protected void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
int id = Integer.valueOf(request.getParameter("id"));
int bookCount=Integer.valueOf(request.getParameter("bookCount"));
try {
// 加载数据库驱动,注册到驱动管理器
Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");
// 数据库连接字符串
String url = "jdbc:sqlserver://DESKTOP-EO1BDL6;DatabaseName=hh";
// 数据库用户名
String username = "sa";
// 数据库密码
String password = "sa@12345";
Connection conn = DriverManager.getConnection(url, username, password);
String sql="update tb_books set bookcount=? where id=?";
PreparedStatement ps=conn.prepareStatement(sql);
ps.setInt(1, bookCount);
ps.setInt(2, id);
ps.executeUpdate();
ps.close();
conn.close();
} catch (Exception e) {
e.printStackTrace();
}
response.sendRedirect("FindServlet");
}
}
<%@ page language="java" contentType="text/html; charset=utf-8"
pageEncoding="utf-8"%>
<%@page import="java.util.List"%>
<%@page import="shop.hh.Book"%>
Insert title here
所有图书信息
ID
图书名称
价格
数量
作者
<%
// 获取图书信息集合
List list=(List)request.getAttribute("list");
if(list==null || list.size()<1){
out.print("没有 数据!");
}
else{
for(Book book:list){
%>
<%=book.getId() %>
<%=book.getName() %>
<%=book.getPrice() %>
<%=book.getBookCount() %>
<%=book.getAuthor() %>
<%
}
}
%>
<%@ page language="java" contentType="text/html; charset=utf-8"
pageEncoding="utf-8"%>
Insert title here
查看所有图书
11.3
index.html
index.htm
index.jsp
default.html
default.htm
default.jsp
FindServlet
FindServlet
shop.hh.FindServlet
UpdateServlet
UpdateServlet
shop.hh.UpdateServlet
FindServlet
/FindServlet
UpdateServlet
/UpdateServlet