运行一个简单的servlet程序,部署在tomcat服务器上
用的是idea2022的web框架,idea一定要是专业版不然无法创建框架。
一、创建框架
1、在idea中新建一个Java框架
2、创建成功后右键框架名,选择
即添加框架支持,选择web框架,OK.
框架创建完成,此时列表中会多出一个web文件夹
二、后端逻辑代码
这个程序是希望在网页中展示“HelloWorld”字符。
在src文件夹中新建Java文件,命名为“Hello”,在文件中添加如下代码
// 导入必需的 java 库
import java.io.*;
import jakarta.servlet.*;
import jakarta.servlet.http.*;
// 扩展 HttpServlet 类
public class Hello extends HttpServlet {
private String message;
public void init() throws ServletException
{
// 执行必需的初始化
message = "Hello World";
}
public void doGet(HttpServletRequest request,
HttpServletResponse response)
throws ServletException, IOException
{
// 设置响应内容类型
response.setContentType("text/html");
// 实际的逻辑是在这里
PrintWriter out = response.getWriter();
out.println("<h1>" + message + "</h1>");
}
public void destroy()
{
// 什么也不做
}
}
此时Jakarta会报错,这是由于没有加入tomcat插件且未导入servlet的API文件。
先下载tomcat插件,下载完成后找到下图所示位置:
点击“+”,选择smart tomcat
deployment directory一定要定位到项目文件夹下的web文件夹,否则会出现404 not found错误。
然后加入servlet的API:右键点击项目名:
选择libraries,点击“+”,选择Java
按照如下路径找到servlet-api.jar文件,选择后点击OK。
报错解决。
运行时一定要选择tomcat服务器:在右上角工具栏处。
运行后会出现一个网址:http://localhost:8080/tomcattest
8080后是项目名称。浏览器打开后出现如下页面:
此时tomcat服务器启动成功。
三、配置web.xml文件
找到web.xml文件在<web-app>标签中添加如下代码,不用删除原本的内容
<servlet>
<servlet-name>HelloW</servlet-name>
<servlet-class>Hello</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>HelloW</servlet-name>
<url-pattern>/Hello</url-pattern>
</servlet-mapping>
第一个标签<servlet>中的两个标签分别是设置这个servlet的名字和设置这个servlet类的名字,类的名字必须与上文中后端逻辑代码的类名相同。
第二个标签<servlet-mapping>中的两个标签分别是servlet映射名字和访问路径的名字,映射名字必须与第一个标签中的servlet名字相同,接下来是访问路径名字,用于访问页面。
运行后访问localhost:8080/tomcattest/Hello
得到如下页面:
运行成功
注意在访问自己写的页面时不要直接点击运行成功后在终端显示的网址,这样会还是进入第一次那个end界面,因为这个界面是框架自带的index.jsp文件的运行结果,点击终端链接默认进入index界面。需要在链接后面加上自己在web.xml文件里设置的url路径才能进入自己设计的界面。