从 .java 类而不是 .jsp 在 intelliJ 中运行 servlet
Posted
技术标签:
【中文标题】从 .java 类而不是 .jsp 在 intelliJ 中运行 servlet【英文标题】:Running a servlet in intelliJ from .java class, not .jsp 【发布时间】:2021-04-20 15:07:02 【问题描述】:我正在尝试在 IntelliJ 中创建和运行一个 servlet。我遇到的问题是我正在关注 Eclipse 教程,它们的工作方式似乎非常不同。在 Eclipse 中,创建了一个 servlet.java 类并在 Tomcat 上运行。在 IntelliJ 中创建了一个 .java 类和 .jsp 文件。浏览器指向.jsp,而不是.java。 java 类似乎根本没有做任何事情。
为什么它们如此不同,我如何指向 .java 类而不是 .jsp?
我在下面添加了 .java 和 .jsp 代码,它们都是 IntelliJ 在创建新 servlet 项目时创建的标准存根。
@WebServlet(name = "helloServlet", value = "/hello-servlet")
public class HelloServlet extends HttpServlet
private String message;
public void init()
message = "The Tomcat server does not point to this code in IntelliJ";
public void doGet(HttpServletRequest request, HttpServletResponse response) throws IOException
response.setContentType("text/html");
// Hello
PrintWriter out = response.getWriter();
out.println("<html><body>");
out.println("<h1>" + message + "</h1>");
out.println("</body></html>");
public void destroy()
<!DOCTYPE html>
<html>
<head>
<title>JSP - Hello World</title>
</head>
<body>
<h1><%= "Tomcat points to this .jsp file, not the .java code" %>
</h1>
<br/>
<a href="hello-servlet">Hello Servlet</a>
</body>
</html>
【问题讨论】:
【参考方案1】:servlet 类有一个注解指示要使用的 URI,因此无论您的应用程序使用什么 URL 访问,后跟 /hello-servlet
。
他们生成的这些文件在 99% 的情况下都是无用的,这有点奇怪。
【讨论】:
以上是关于从 .java 类而不是 .jsp 在 intelliJ 中运行 servlet的主要内容,如果未能解决你的问题,请参考以下文章
为啥java的一些概念需要使用包装类而不是原始数据类型[重复]