XML<packaging>war</packaging> <dependencies> <dependency> <groupId>jakarta.servlet</groupId> <artifactId>jakarta.servlet-api</artifactId> <version>6.0.0</version> </dependency> <dependency> <groupId>com.csdn</groupId> <artifactId>pro03-fruit-optimize</artifactId> <version>1.0-SNAPSHOT</version> </dependency> </dependencies>
- pro03-fruit-optimize是我自己封装的一个jar包,功能是可以实现水果系统的增删改查
1、查询水果清单IndexServlet
javapackage com.csdn.fruit.servlet; import com.csdn.fruit.dao.FruitDao; import com.csdn.fruit.dao.impl.FruitDaoImpl; import com.csdn.fruit.pojo.Fruit; import jakarta.servlet.ServletException; import jakarta.servlet.annotation.WebServlet; import jakarta.servlet.http.HttpServlet; import jakarta.servlet.http.HttpServletRequest; import jakarta.servlet.http.HttpServletResponse; import java.io.IOException; import java.util.List; @WebServlet("/index") public class IndexServlet extends HttpServlet { private FruitDao fruitDao = new FruitDaoImpl(); @Override protected void service(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { List<Fruit> fruitList = fruitDao.getFruitList(); fruitList.stream().forEach(System.out::println); } }
- 这里面的FruitDao水果数据访问对象接口,FruitDaoImpl水果数据访问对象实现类,都在pro03-fruit-optimize这个jar包里面
2、通过水果名查询水果EditServlet
javapackage com.csdn.fruit.servlet; import com.csdn.fruit.dao.FruitDao; import com.csdn.fruit.dao.impl.FruitDaoImpl; import com.csdn.fruit.pojo.Fruit; import jakarta.servlet.ServletException; import jakarta.servlet.annotation.WebServlet; import jakarta.servlet.http.HttpServlet; import jakarta.servlet.http.HttpServletRequest; import jakarta.servlet.http.HttpServletResponse; import java.io.IOException; @WebServlet("/edit") public class EditServlet extends HttpServlet { FruitDao fruitDao = new FruitDaoImpl(); @Override protected void service(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { String fname = req.getParameter("fname"); Fruit fruit = fruitDao.getFruitByFname(fname); System.out.println(fruit); } }
3、 根据水果名修改库存量UpdateServlet
javapackage com.csdn.fruit.servlet; import com.csdn.fruit.dao.FruitDao; import com.csdn.fruit.dao.impl.FruitDaoImpl; import com.csdn.fruit.pojo.Fruit; import jakarta.servlet.ServletException; import jakarta.servlet.annotation.WebServlet; import jakarta.servlet.http.HttpServlet; import jakarta.servlet.http.HttpServletRequest; import jakarta.servlet.http.HttpServletResponse; import java.io.IOException; @WebServlet("/update") public class UpdateServlet extends HttpServlet { private FruitDao fruitDao = new FruitDaoImpl(); @Override protected void service(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { //String fidStr = req.getParameter("fid"); //Integer fid = Integer.parseInt(fidStr); String fname = req.getParameter("fname"); //Integer price = Integer.parseInt(req.getParameter("price")); Integer fcount = Integer.parseInt(req.getParameter("fcount")); //String remark = req.getParameter("remark"); fruitDao.updateFruit(new Fruit(0,fname, 0, fcount, null)); System.out.println("修改成功"); } }
- 因为我底层也就是FruitDaoImpl写的就是通过水果名,修改水果的库存量,所以这里只能修改库存量fcount
String sql = "update t_fruit set fcount=? where fname = ?";
4、根据水果名删除水果记录DelServlet
javapackage com.csdn.fruit.servlet; import com.csdn.fruit.dao.FruitDao; import com.csdn.fruit.dao.impl.FruitDaoImpl; import jakarta.servlet.ServletException; import jakarta.servlet.annotation.WebServlet; import jakarta.servlet.http.HttpServlet; import jakarta.servlet.http.HttpServletRequest; import jakarta.servlet.http.HttpServletResponse; import java.io.IOException; @WebServlet("/del") public class DelServlet extends HttpServlet { FruitDao fruitDao = new FruitDaoImpl(); @Override protected void service(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { String fname = req.getParameter("fname"); fruitDao.delFruit(fname); System.out.println("删除成功!"); } }
5、添加水果AddServlet
javapackage com.csdn.fruit.servlet; import com.csdn.fruit.dao.FruitDao; import com.csdn.fruit.dao.impl.FruitDaoImpl; import com.csdn.fruit.pojo.Fruit; import jakarta.servlet.ServletException; import jakarta.servlet.annotation.WebServlet; import jakarta.servlet.http.HttpServlet; import jakarta.servlet.http.HttpServletRequest; import jakarta.servlet.http.HttpServletResponse; import java.io.IOException; @WebServlet("/add") public class AddServlet extends HttpServlet { private FruitDao fruitDao = new FruitDaoImpl(); @Override protected void service(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { String fname = req.getParameter("fname"); Integer price = Integer.parseInt(req.getParameter("price")); Integer fcount = Integer.parseInt(req.getParameter("fcount")); String remark = req.getParameter("remark"); Fruit fruit = new Fruit(fname, price, fcount, remark); fruitDao.addFruit(fruit); System.out.println("添加成功!"); } }
- 注意:这里面的 Post 请求,要把 enctype 的值调成 x-www-form-urlencoded
使用Servlet修改水果库存系统,并使用PostMan测试Servlet请求
丁总学Java2023-11-04 16:03
相关推荐
极客先躯29 分钟前
说说高级java每日一道面试题-2025年2月13日-数据库篇-请说说 MySQL 数据库的锁 ?程序员侠客行32 分钟前
Spring事务原理 二小猫猫猫◍˃ᵕ˂◍1 小时前
备忘录模式:快速恢复原始数据liuyuzhongcc1 小时前
List 接口中的 sort 和 forEach 方法五月茶1 小时前
Spring MVCsjsjsbbsbsn1 小时前
Spring Boot定时任务原理yqcoder1 小时前
Express + MongoDB 实现在筛选时间段中用户名的模糊查询菜鸟蹦迪2 小时前
八股文实战之JUC:ArrayList不安全性2501_903238652 小时前
Spring MVC配置与自定义的深度解析逻各斯2 小时前
redis中的Lua脚本,redis的事务机制