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
相关推荐
代码小将1 小时前
Leetcode209做题笔记专注_每天进步一点点1 小时前
idea 启动Springboot项目在编译阶段报错:java: OutOfMemoryError: insufficient memorydhxhsgrx2 小时前
PYTHON训练营DAY25不知几秋3 小时前
数字取证-内存取证(volatility)chxii6 小时前
5java集合框架yychen_java7 小时前
R-tree详解JANYI20188 小时前
嵌入式设计模式基础--C语言的继承封装与多态xrkhy8 小时前
反射, 注解, 动态代理Ten peaches8 小时前
Selenium-Java版(操作元素)lyw2056199 小时前
RabbitMQ,Kafka八股(自用笔记)