【Java】如何使用servlet作为Controller
【Java】如何使用servlet作为Controller
IDE: IntelliJ IDEA
准备工作
-
在main下面新建目录java,并标记为source root。
-
新建一个包,名称和要控制的jsp文件的目录相同。我这里是ch2.servletController。在包中新建一个class,
Controller.java。

-
在工程目录的pom.xml文件中添加依赖,
javax.servlet-api。具体可以从maven官网的仓库中搜索。<!-- https://mvnrepository.com/artifact/javax.servlet/javax.servlet-api --> <dependency> <groupId>javax.servlet</groupId> <artifactId>javax.servlet-api</artifactId> <version>4.0.1</version> <scope>provided</scope> </dependency>
具体代码编写
-
Controller.java文件。
- 注意包名。
- import相关库。
- 使用
@WebServlet(urlPatterns={""})来用URL标记servlet。 - class要是public,并且extend HttpServlet
- 在
doGet方法写入页面的逻辑关系。
package ch2.servletController; import java.io.IOException; import javax.servlet.RequestDispatcher; import javax.servlet.ServletException; import javax.servlet.annotation.WebServlet; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; /** * @author sleepyhermit * @date 2021/12/16-15:32 */ @WebServlet( urlPatterns={"/ch2/servletController/Controller"}) public class Controller extends HttpServlet{ protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { String address; if(request.getParameter("processButton") != null){ address = "Process.jsp"; } else if(request.getParameter("confirmButton") != null){ address = "Confirm.jsp"; } else { address = "Edit.jsp"; } RequestDispatcher dispatcher = request.getRequestDispatcher(address); dispatcher.forward(request,response); } } -
在jsp文件中,使用
<form action="Controller">即可。
运行
在maven中输入一下命令。如果清理项目异常,则需要将当前程序终止运行。[1]
mvn: clean tomcat7:run
参考资料
- 问题:Failed to delete XXX\target\tomcat\logs\access_log.2020-07-19: https://blog.csdn.net/LYN_xj94512/article/details/107441155
浙公网安备 33010602011771号