目录 --------- Servlet学习笔记1------------ ----------Servlet学习笔记2------------ ----------Servlet学习笔记3------------
Servlet、ServletConfig、ServletContext 1.Servlet技术
1.1Servlet概述
什么是servlet:他是运行在web服务器端的一个java小程序,简单来说,他就是一个java类,在使用servelt时,需要导入javax.servlet下的jar包。比如:tomcat服务器提供了servlet的servlet-api.jar包,所以在开发时用tomcat服务器就不需要再导入servlet的jar包。Servlet他是一个资源,是用来被用户访问的资源,同时是一个动态资源,他是sun指定的servlet规范。 Servlet的作用:他是基于http协议的,主要是用来接收客户端发送的请求,处理请求,把数据响应给客户端。
1.2 Servlet的入门
代码语言:javascript复制1.Servlet的接口和实现类:
Servlet,他是一个接口,再javax.servlet包下面。
五个方法:
destroy():执行这个方法,销毁了servlet对象
init(ServletConfig config):在web服务器创建servlet对象以后,执行这个初始化方法
service(ServletRequest req,ServletResponse res):服务方法,用来接收客户端发送的请求,并且响应数据到客户端。
getServletConfig()
getServletInfo():返回servlet的信息,比如作者、版权和版本,这个方法在开发中不用。 GenericServlet,他是一个类,实现了Servlet接口 HttpServlet,他是一个类,实现了Servlet接口,同时也继承了GenericServlet。 2.创建servlet三种方式 (1)直接实现Servlet接口。 (2)继承GenericServlet类 (3)继承HttpServlet类 一般在开发中,创建servlet,通常去继承这个HttpServlet
比如:class MyServlet extends HttpServlet{ 重写咱们所需要的方法} 3.实现第一个入门的Servlet程序 (1)自己手动创建Servlet,自己通过Dos命令窗口编译Servlet,把编译好的class文件部署到tomcat服务器运行。 (2)通过Eclipse创建Servlet,部署到tomcat服务器,然后就可以访问咱们所需要的Servlet. 步骤: (1)创建HelloWordServlet,继承GenericServlet (2)重写父类GenericServlet的services()方法 (3)在服务方法里面,处理客户端的请求后,把数据响应给客户端。 导入jar包:先拷贝对应的jar包,放到WebContent下面的WEB-INF的lib文件夹下面。jar包的图标就变成小奶瓶
比如:
代码语言:javascript复制public class HelloWorldServlet extends GenericServlet{
public void service(ServletRequest arg0, ServletResponse arg1) throws ServletException, IOException {
// TODO Auto-generated method stub
//处理客户端发送的请求并且把数据响应给客户端
System.out.println("接受了客户端的请求-----------");
//把数据响应给客户端,与浏览器绑定的输出流,作用时向浏览器输出数据
PrintWriter pw=arg1.getWriter();
pw.print("Hello World");
}
}
访问Servlet,提供Servlet的访问路径
代码语言:javascript复制<!-- 配置/hello,访问的servlet -->
<servlet>
<servlet-name>helloworld</servlet-name>
<servlet-class>cn.itcast.firstmyapp.servlet.HelloWorldServlet</servlet-class>
</servlet>
<!-- 配置浏览器访问servlet的路径 -->
<servlet-mapping>
<servlet-name>helloworld</servlet-name>
<url-pattern>/hello</url-pattern>
通过浏览器访问: https://localhost:8080/webfirst/hello,就能找到对应的HelloWorldServler