我的第一个 Servlet 程序
- 1. 构建一个maven项目
- 1)构建一个普通的Maven项目
- 2)清除里面的scr项目
- 2. 在pom.xml中引入javax.servlet-api 4.0.1
- 3. 新建一个servlet项目
- 4. Maven环境优化
- 5. 编写一个Servlet程序
- 1) 建立java,resources等相关文件夹
- 2)编写一个普通类 FirstServlet
- 3)实现Servlet接口(继承HttpServlet)
- 6. 编写Servlet的映射
- 在web.xml里注册Servlet,添加servlet的请求路径
- 7. 配置Tomcat
- 8. 启动程序!
1. 构建一个maven项目
1)构建一个普通的Maven项目
编写好项目名,组号等信息,点击finish,构建完成
2)清除里面的scr项目
以后的学习就在这个项目里面建立Moudel;这个空的工程就题Maven主工程。
2. 在pom.xml中引入javax.servlet-api 4.0.1
因为所有的Servlet都必须实现接口Servlet,而该接口定义在javax.servlet-api这个软件包中。因此在我们的项目中需要引入
该软件包。
在一个maven项目中,引入软件包非常简单,在pom.xml文件的dependencies节点中添加如下代码:
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>javax.servlet-api</artifactId>
<version>4.0.1</version>
</dependency>
3. 新建一个servlet项目
4. Maven环境优化
将web.xml里配置为最新的。将maven的结构搭建完整。
<?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">
</web-app>
这里Maven父子工程就创建好了。
com.zhengchenfan是父工程。
servlet-day01是子工程。
5. 编写一个Servlet程序
1) 建立java,resources等相关文件夹
2)编写一个普通类 FirstServlet
3)实现Servlet接口(继承HttpServlet)
get或者post只是请求实现的不同的方式,可以相互调用,业务逻辑都一样!
代码功能如下:
向浏览器客户端返回一个 html 文档,内容是输出下面的内容:
“我的第一个 Servlet 程序“
“当前时间是://这里应该用 Java 类的对象输出时间“
package com.zhengchenfan.servlet;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
import java.io.PrintWriter;
import java.text.SimpleDateFormat;
import java.util.Date;
public class FirstServlet extends HttpServlet {
@Override
protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
SimpleDateFormat a = new SimpleDateFormat("yyyy年MM月dd日HH时mm分ss秒");
Date date = new Date();
String b=a.format(date);
//System.out.println(date);
//System.out.println(b);
resp.setContentType("text/html;charset=UTF-8");
req.setCharacterEncoding("UTF-8");
PrintWriter out = resp.getWriter();
out.println("<html>");
out.println("<head>");
out.println("<title>Hello 我的第一个Servlet程序</title>");
out.println("</head>");
out.println("<body>");
out.println("<h1>我的第一个 Servlet 程序!</h1>");
out.println("<h1>当前时间是:"+date+"</h1>");
out.println("</body>");
out.println("</html>");
}
@Override
protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
super.doPost(req, resp);
}
}
6. 编写Servlet的映射
为什么需要映射:
我们写的是JAVA程序,但是要通过浏览器访问,而浏览器需要连接web服务器,所以我们需要再web服务中注册我们写的Servlet,还需给他一个浏览器能够访问的路径;
在web.xml里注册Servlet,添加servlet的请求路径
<servlet>
<servlet-name>f1</servlet-name>
<servlet-class>com.zhengchenfan.servlet.FirstServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>f1</servlet-name>
<url-pattern>/f1</url-pattern>
</servlet-mapping>
7. 配置Tomcat
8. 启动程序!
输入f1: