共计 2148 个字符,预计需要花费 6 分钟才能阅读完成。
Servlet 是 Server Applet 的缩写,是服务端小程序的意思。应用 Java 语言编写的服务器端程序,次要性能在于交互式地浏览和生成数据,生成动静 Web 内容,Servlet 次要运行在服务器端,并由服务器调用执行,是一种依照 Servlet 规范来开发的类。是 SUN 公司提供的一门用于开发动静 Web 资源的技术。(话中有话:要实现 web 开发,须要实现 Servlet 规范)
Servlet 实质上也是 Java 类,但要遵循 Servlet 标准进行编写,没有 main() 办法,它的创立、应用、销毁都由 Servlet 容器进行治理 ( 如 Tomcat)。(话中有话:写本人的类,不必写 main 办法,他人主动调用)
Servlet 是和 HTTP 协定是紧密联系的,其能够解决 HTTP 协定相干的所有内容。这也是 Servlet 利用宽泛的起因之一。
提供了 Servlet 性能的服务器,叫做 Servlet 容器,其常见容器有很多,如 Tomcat, Jetty, WebLogic Server, WebSphere, JBoss 等等。
Servlet 实现形式
- 创立动静 web 我的项目
- 新建类
- 实现 Servlet 标准
- 重写 service 办法
- 配置 web.xml
- 公布我的项目
- 启动我的项目
- 拜访并查看后果
案例实操
1)创立动静 web 我的项目
2)新建类
`package com.xxx.web;
public class HelloWeb {
}`
* 1
* 2
* 3
* 4
* 5
3)实现 Servlet 标准
实现 Servlet 标准,即继承 HttpServlet 类,并导入相应的包,该类中曾经实现了通信的规定,咱们只须要进行业务的实现即可。
`package com.xxx.web;
import javax.servlet.http.HttpServlet;
public class HelloWeb extends HttpServlet {
}`
* 1
* 2
* 3
* 4
* 5
* 6
* 7
4)重写 service 办法
满足 Servlet 标准只是让咱们的类可能满足接管申请的要求,接管到申请后须要对申请进行剖析,以及进行业务逻辑解决,计算出后果,则须要增加代码,在标准中有一个叫做 service 的办法,专门用来做申请解决的操作,业务代码则能够写在该办法中。
`package com.xxx.web;
import java.io.IOException;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
public class HelloWeb extends HttpServlet {
@Override
protected void service(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {System.out.println("I received a request");
resp.getWriter().write("<h1>Hello World!</h1>");
}
}`
* 1
* 2
* 3
* 4
* 5
* 6
* 7
* 8
* 9
* 10
* 11
* 12
* 13
* 14
* 15
* 16
* 17
* 18
5)配置 web.xml
在实现好了所有代码的编写后,还须要向服务器阐明,特定申请对应特定资源,此时通过一个名叫 web.xml 的配置文件实现。
`<!-- 配置 servlet -->
<servlet>
<servlet-name>helloweb</servlet-name><!-- 给服务器看的 -->
<servlet-class>com.xxx.web.HelloWeb</servlet-class><!-- servlet 对应的资源门路 -->
</servlet>
<servlet-mapping>
<servlet-name>helloweb</servlet-name><!-- 给服务器看的 -->
<url-pattern>/helloweb</url-pattern><!-- 给浏览器看的,对外拜访门路 -->
</servlet-mapping>`
* 1
* 2
* 3
* 4
* 5
* 6
* 7
* 8
* 9
6)公布我的项目
到此,须要编写和配置的中央曾经实现,我的项目曾经残缺了,然而如果须要外界可能拜访,还须要将我的项目公布到服务器上并运行服务器。
7)启动我的项目
看到相似一长串信息示意启动胜利,接下来就能够拜访我的项目了
8)拜访并查看后果
在我的项目正确公布到服务器上之后,用户即可通过浏览器拜访该我的项目中的资源。留神 url 的格局正确,tomcat 的端口为 8080。http://localhost:8080/hw/helloweb,页面后果
后盾后果
到这里咱们的第一个 Servlet 就实现了!
扩大
工作原理
执行过程
客户端发出请求依据 web.xml 文件的配置,找到对应的 url-pattern 读取其中的值,找到对应的 servlet-name,找到指定的 class 并加载执行该 class,返回后果由 Web 服务器将后果响应给客户端