Servlet 是 Server 与 Applet 的缩写,是服务端小程序的意思。使用 Java 语言编写的服务器端程序,可以生成动态的 WEB 页, Servlet 主要运行在服务器端,并由服务器调用执行,是一种按照 Servlet 标准来开发的类。是 SUN 公司提供的一门用于开发动态 Web 资源的技术。(言外之意:要实现 web 开发,需要实现 Servlet 标准)。
Servlel 本质上也是 Java 类,但要遵循 Servlel 规范进行编写,没有main0)方法,它的创建、使用、销毁都由 Servlet 容器进行管理(如 Tomcat )。(言外之意:写自己的类,不用写 main 方法,别人自动调用)
Servlet 是和 HTTP 协议是紧密联系的,其可以处理 HTTP 协议相关的所有内容。这也是 Servlet 应用广泛原因之一。
提供了 Servlet 功能的服务器,미叫做 Servlet 容器,其常见容器有很多,如 Tomcat , Jetty , WebLogic Server , WebSphere , JBoss 等等
个人感悟:因为当在浏览器搜索栏输入网址的时候,也就是输入url,然后浏览器向服务器发送请求,得到回复以后,跳转相应界面(此处不是很严谨),然后在新网站进行资源搜索(简单举例),这一过程中我这么分析:
因为大多网址都是http——超文本传输协议。
而且servlet与http关系密切,你所有在http下操作的数据,指令都会返回到servlet这个大类中,然后根据你在servlet自定义编写的方法中进行处理用户指令和请求,多说一句,servlet这个类比较笼统,可以细分很有小类。
更正一下,httpservlet需要被继承才可以完成servlet规范。
实现 Servlet 规范
实现 Servlet 规范,即继承 HttpServlet 类(或者引入httpservlet的api),并到如响应的包,该类中已经完成了通信的规则,我们只需要进行业务的实现即可
举一个例子:
package com . XxxX . servlet ;
import javax . servlet . http . Httpservlet ;
public class Servlet01 extends Httpservlet {
}
这就是一个最基本的代码,个人简单解释一下,就是说,一个servlet只有在继承httpservlet以后,才可以与http超文本传输协议挂钩,这有这样,才可能在输入网址以后,被搜索到,而不是报错404,因为只有继承httpservlet以后,才满足http协议,才能让服务器解析知道你输入的什么意思。
又因为httpservlet里面有很多方法,只有这些方法对我们才有价值,因为我们继承类就是为了里面的方法,不然继承就毫无意义,so:
实现servlet规范第一部就是继承httpservlet这个大类,再重写方法……
重写 service 方法
满足 Servlet 规范只是让我们的类能够满足接收请求的要求,接收到请求后需要对请求解析,以及进行
业务逻辑处理,计算出结果,
则需要添加代码,在规范中有一个叫做 service 的方法,专门用来做请求处理的操作,业务代码则可以写在该方法中。
package com . Xxxx .serv1et;
import javax .serv1et.Serv1etException;
import javax .serv1et. http . HttpServlet ;
import javax .serv1et. http . HttpServletRequest ; import javax .serv1et. http .HttpServ1etResponse;
import java . io . IOException ;
public class Serv1et01 extends ttpServ1et{
@ override
protected void service (HttpServ1etRequest req ,HttpServ1etResponse resp ) thr Serv1etException, IOException {
System . out . printIn (" Hello serv1et!");
resp . getwriterO . write (" Hello wor1d");
最后,设置注解
开发 servlet 项目,使用@ WebServlet 将一个继承于 javax . servlet . http . HttpServlet 的类定义为 Servlet 组件。在Servlet3.0中,可以使用@ webServlet 注解将一个继承于 javax . servlet . http . HttpServlet 的类标注为可以处理用户请求的 Servlet
package com . Xxxx .serv1et;
import javax .serv1et.Serv1etException;
import javax . servlet . annotation .Webserv1et; import javax .serv1et. http .HttpServ1et;
import javax .serv1et. http .HttpServ1etRequest;
import javax . servlet . http .Httpserv1etResponse; import java . io . IOException ;
CwebServ1et("/ser01"")
public class Servlet01 extends HttpServlet {
@ override
protected void
Tservice (Httpserv1etRequest req ,HttpServ1etResponse resp ) throws
Serv1etException, IOException {
System . out . print InC "“ Hello Serv1et!");
resp . getwriterO . write (" Hello world ");
也就是说,当在写上注解以后,就可以直接输入URL以后,再直接跳转到注解对应的service服务
未完待续……



