1 编写 新增商品 和 查询商品的页面
2 使用Servlet + JDBC 完成新增商品 和查询商品的功能
3 实现新增商品之后 重定向到 查询商品的页面
新增商品:
@WebServlet(name = "addProductServlet" , urlPatterns = "/addproduct")
public class addProductServlet extends HttpServlet {
ProductDao p= new ProductDao();
Product newproduct =new Product();
@Override
protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
try {
newproduct.setPid("13");
newproduct.setPname("这是新增");
newproduct.setPrice(12345);
newproduct.setPdesc("hhhhhhhhhh");
newproduct.setPflag(0);
newproduct.setCid("2");
int i = p.addProduct(newproduct);
if (i >0){
System.out.println("新增成功!");
}else{
System.out.println("新增失败!");
}
resp.sendRedirect("findAllProduct");
} catch (SQLException e) {
e.printStackTrace();
}
}
}
查询所有商品:
@WebServlet(name = "findAllProduct" , urlPatterns = "/findAllProduct")
public class FindAllProcudtServlet extends HttpServlet {
private ProductDao productDao= new ProductDao();
@Override
protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
try {
List<Product> allProduct = productDao.findAllProduct();
resp.setContentType("text/html;charset=utf-8");
PrintWriter writer = resp.getWriter();
writer.println("<table border=\"1\">");
for (Product p :allProduct){
writer.println("<h3>"+"<tr><td>" + p.getPname() +"</td><td>" + p.getPrice()+"</td><td>" +p.getPdesc() + "</td></tr>"+"</h3>");
}
} catch (SQLException e) {
e.printStackTrace();
}
}
}
public class ProductDao {
// 查询所有商品
public List<Product> findAllProduct() throws SQLException {
QueryRunner qr = new QueryRunner(DruidUtils.dataSource);
String sql = "select * from product";
List<Product> productList = qr.query(sql, new BeanListHandler<Product>(Product.class));
return productList;
}
// 新增商品
public int addProduct(Product product) throws SQLException {
QueryRunner qr = new QueryRunner(DruidUtils.dataSource);
String sql ="insert into product(pid,pname,price,pdesc,pflag,cid) values(?,?,?,?,?,?)";
int update = qr.update(sql, product.getPid(), product.getPname(), product.getPrice(), product.getPdesc(), product.getPflag(), product.getCid());
return update;
}
index.html 文件:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>主页</title>
</head>
<body>
<a href="findAllProduct">查询所有商品</a>
<form action="addproduct" method="get">
<input type="submit">
</body>
</html>
运行结果:
点击查询所有商品(因为我已经运行了一次了,所有图中有一个hhh):
点击提交(新增)直接出现表格(重新定位到查询页面):
图中新增了一个:这是新增