@WebServlet("*.action") public class BaseServlet extends HttpServlet { //C:业务控制层 StudentService studentService = null; public BaseServlet() { studentService = new StudentService(); } protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { this.doGet(request, response); } protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { //1 request.getRequestURI():获取请求url String requestURI = request.getRequestURI(); if(requestURI.endsWith("load.action")){ //登录请求 //1 获取前端数据:request String username = request.getParameter("username"); //2 处理登录业务:JDBC+service+dao+utis Student student = studentService.loadStudent(username); // 3 根据结果响应:response if(student == null){ //登录失败,弹框"登录失败" 回到studentLoad.html } else{ //打印学生信息 } } else if(requestURI.endsWith("regedit.action")){ //注册业务 } } }
时间: 2024-02-15 13:27:58 浏览: 94
jsp 编程之@WebServlet详解
这段代码是一个基础的 Servlet 控制器,它通过继承 HttpServlet 类来实现对 HTTP 请求的处理。其中,doGet() 和 doPost() 方法分别处理 GET 和 POST 请求,并且在 doPost() 中调用了 doGet() 方法以统一处理两种类型的请求。
在 doGet() 方法中,首先通过 request.getRequestURI() 方法获取请求的 URL,然后根据 URL 的结尾字符串来判断具体的业务逻辑,例如登录请求和注册请求。对于登录请求,代码通过获取前端传来的用户名并调用 StudentService 类中的 loadStudent() 方法来处理登录业务;对于注册请求,可以在 else if 分支中编写相应的处理逻辑。
需要注意的是,这段代码中的 StudentService 类并没有给出具体的实现,我们只能看出它是一个业务逻辑层的类,用于处理学生信息相关的业务。此外,代码中还有一些注释,说明了一些方法或变量的作用,例如 request.getRequestURI() 方法的作用是获取请求的 URL。
阅读全文