- Servlet的编写
package com.wfy.servlet;?import javax.servlet.ServletException;import javax.servlet.http.HttpServlet;import javax.servlet.http.HttpServletRequest;import javax.servlet.http.HttpServletResponse;import java.io.IOException;import java.lang.reflect.InvocationTargetException;import java.lang.reflect.Method;?//替换HttpServlet ,根据请求的最后一段路径来进行方法分发public class BaseServlet extends HttpServlet { //根据请求的最后一段路径来进行方法的分发 @Override protected void service(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { //1.获取请求路径 String uri = req.getRequestURI(); //BrandTest/brand/SelectAllServlet // System.out.println(uri); //2.获取最后一段路径----方法名 int index=uri.lastIndexOf('/'); String methodName = uri.substring(index+1); //System.out.println(methodName); //3.执行方法 //3-1获取BrandServlet的字节码对象 class // this:指代关系谁调用我(this 所在的方法),我(this)代表谁 // System.out.println(this);//com.wfy.servlet.BrandServlet@61f761f5 Class<? extends BaseServlet> cls = this.getClass(); //3-2.获取方法的Method对象 try { Method method = cls.getMethod(methodName, HttpServletRequest.class, HttpServletResponse.class); //3-3执行方法 method.invoke(this,req,resp); } catch (NoSuchMethodException e) { throw new RuntimeException(e); } catch (InvocationTargetException e) { throw new RuntimeException(e); } catch (IllegalAccessException e) { throw new RuntimeException(e); } }}package com.wfy.servlet;?import com.alibaba.fastjson.JSON;import com.wfy.pojo.Brand;import com.wfy.pojo.PageBean;import com.wfy.service.BrandService;import com.wfy.service.impl.BrandServiceImpl;?import javax.servlet.ServletException;import javax.servlet.annotation.WebServlet;import javax.servlet.http.HttpServletRequest;import javax.servlet.http.HttpServletResponse;import java.io.BufferedReader;import java.io.IOException;import java.util.List;?@WebServlet("/brand/*")public class BrandServlet extends BaseServlet{ private BrandService service = new BrandServiceImpl();? //获取全部信息 public void selectAll(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { //1.调用service查询 List<Brand> brands = service.SelectAll(); //2.将数据转换为JSON String toJSONString = JSON.toJSONString(brands); //3.写数据 response.setContentType("text/json;charset=utf-8"); response.getWriter().write(toJSONString); } //新增信息 public void add(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException{ //1.接收品牌的数据 BufferedReader reader = request.getReader(); String params = reader.readLine();//json字符串 Brand brand = JSON.parseObject(params, Brand.class); //2.调用service service.AddBrand(brand); //3.响应成功标识 response.getWriter().write("success"); } //更改指定数据信息 //1-根据id查找指定数据,进行数据的回显操作 public void selectById(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { //1.接收从web层传输过来的id BufferedReader reader = request.getReader(); String params = reader.readLine(); Integer id = JSON.parseObject(params, int.class); Brand brand = service.SelectById(new Integer(id).intValue()); //2.将数据转化为JSON String toJSONString = JSON.toJSONString(brand); //3.写入数据 response.setContentType("text/json;charset=utf-8"); response.getWriter().write(toJSONString);?? }? //2-更改品牌的信息 public void updateBrand(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { //1.接收web层传输过来的数据 BufferedReader reader = request.getReader(); String params = reader.readLine(); Brand brand = JSON.parseObject(params, Brand.class); //将数据进行回显操作 // System.out.println(brand); service.UpdateBrand(brand); //3.响应成功标识 response.getWriter().write("success"); } //删除指定数据 public void deleteById(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException{ //1.接收用户传递的id BufferedReader reader = request.getReader(); String params = reader.readLine(); //将JSON数据转换为java数据 Integer id = JSON.parseObject(params, int.class); service.DeleteById(new Integer(id).intValue()); //响应成功标识 response.getWriter().write("success"); } //删除多条数据 public void deleteByIds(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException{ //1.接收需要删除品牌数据的ids BufferedReader reader = request.getReader(); String params = reader.readLine(); //System.out.println(params); //1-2将接收到的信息转换为int[] int[] ids = JSON.parseObject(params, int[].class);// for(int id:ids){// System.out.println(id);// } //2.调用service service.DeleteByIds(ids);? //3.响应成功标识 response.getWriter().write("success"); }? //分页查询 public void selectByPage(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { //1.接收参数 当前页码 和 每页展示的条数在url后进行拼接 url?currentPage=1&pageSize=5 String _currentPage = request.getParameter("currentPage"); String _pageSize = request.getParameter("pageSize"); int currentPage = Integer.parseInt(_currentPage); int pageSize = Integer.parseInt(_pageSize);? //2.调用service进行查询 PageBean<Brand> pageBean = service.SelectByPage(currentPage, pageSize); //3.转换成JSON对象 String jsonString = JSON.toJSONString(pageBean); //4.将数据写入 response.setContentType("text/json;charset=utf-8"); response.getWriter().write(jsonString); } //分页条件查询 public void selectByPageAndCondition(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { //1.接收参数 当前页码 和 每页展示的条数在url后进行拼接 url?currentPage=1&pageSize=5 String _currentPage = request.getParameter("currentPage"); String _pageSize = request.getParameter("pageSize"); int currentPage = Integer.parseInt(_currentPage); int pageSize = Integer.parseInt(_pageSize);? //获取条件查询的对象 BufferedReader reader = request.getReader(); String params = reader.readLine(); Brand brand = JSON.parseObject(params, Brand.class);? //2.调用service进行查询 PageBean<Brand> pageBean = service.SelectByPageAndCondition(currentPage,pageSize,brand); //3.转换成JSON对象 String jsonString = JSON.toJSONString(pageBean); //4.将数据写入 response.setContentType("text/json;charset=utf-8"); response.getWriter().write(jsonString); }}
经验总结扩展阅读
- 含具体案例 Java8新特性之Stream流
- 电影爱人完整剧情介绍?
- 会话跟踪技术 - Cookie 和 Session 快速上手 + 登陆注册案例
- 案例分享-https证书链不完整导致请求失败
- 不明原因不孕怎么办啊
- JavaWeb505错误,IDEA版问题解决
- 一 CPS攻击案例——基于脉冲宽度调制PWM的无人机攻击
- 黑蒜的制作方法
- 教育案例怎么写
- 大鱼歌词完整版
