这次介绍如何通过servlet在浏览器中显示hello servlet。首先,打开idea创建web项目并配置tomcat。
完成之后,导入servlet-api.jar,之后在WEB-INF目录下创建servlet配置文件web.xml。
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_4_0.xsd"
version="4.0">
<servlet>
<servlet-name>HelloServlet</servlet-name>
<servlet-class>HelloServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>HelloServlet</servlet-name>
<url-pattern>/hello</url-pattern>
</servlet-mapping>
</web-app>
这里主要关注两块servlet标签中的内容。这两个标签表示只要用户进入/hello路径,就将程序交由HelloServlet类操作。注意两处servlet-name标签内是HelloServlet类的别名,是自己取的。这里为了开发方便取了一样的名字。只要保证两处名字相同即可。
接下来开发一个HelloServlet类:
import javax.servlet.ServletConfig;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
import java.util.Date;
import java.util.Enumeration;
public class HelloServlet extends HttpServlet {
public void init(ServletConfig config) {
System.out.println("init of HelloServlet");
}
public void service(HttpServletRequest request, HttpServletResponse response) {
try {
response.getWriter().println("<h1>Hello Servelt!</h1>");
response.getWriter().println(new Date());
} catch (IOException e) {
e.printStackTrace();
}
}
}
我们写的所有servlet类都需要实现HttpServlet接口。其中,我们覆盖了两个方法。init方法是初始化方法。在servlet初始化的时候会自动调用,可以根据自己的需要来添加代码。service方法内是主要的操作逻辑。他有两个参数,request和response。用response的getWriter方法的println方法可以起到在网页上打印字符串的效果。