Servlet

概念

servlet是server applet的简写,是一段运行在服务器端(tomcat)的小程序,将来我们
要自定义一个类,实现servlet接口,复写方法。

快速入门

1.创建javaee项目
2.定义一个类,实现Servlet接口
3.实现接口中的抽象方法
4.配置servlet
把下面的代码写道web.xml文件的根标签下

<servlet>
		<!--给servlet类起一个名字-->
    <servlet-name>test01</servlet-name>
        <servlet-class>cn.yaowa.web.servlet.ServletTest01</servlet-class>
    </servlet>
       <!--给这个名字的servlet定一个访问路径-->
    <servlet-mapping>
        <servlet-name>test01</servlet-name>
        <url-pattern>/test01</url-pattern>
    </servlet-mapping>

在servlet3.0以上的版本还可以在servlet类中用注释配置
在servlet类中写一个注释:@WebServlet(“servlet的资源路径”)
资源路径有好多种:

精确查找
	/aaa  , /aaa/aaa  
	这种类型必须完全写对才会被允许访问
非精确查找
	“.do" 以.do为后缀的请求都会被允许访问
	"/*" 所有请求都会被允许访问
	"/"所有非动态资源请求会被允许访问
	"/aaa/*"所有以/aaa/开头的请求会被允许访问

5.执行原理
当服务器接收到来自客户端的信息时,会解析其中的url,在web.xml文件中找对应的,如果找到了,就找其对应的全类名对象,tomcat会把字节码文件加载进内存,并创建servlet对象,调用其方法。

五个方法

1.void init(ServletConfig var1) throws ServletException
在servlet对象被创建的时候执行一次,之后不再被执行
2.ServletConfig getServletConfig();
用来获取servletConfig对象的
3.void service(ServletRequest var1, ServletResponse var2) 
throws ServletException, IOException;
用户每发一次请求tomcat就会调用这个方法一次
4.String getServletInfo();
获取一些作者信息的方法(作者写这个方法)
5.void destroy();
在servlet对象被销毁,也就是tomcat服务器关闭的时候,被调用。

servlet对象的生命周期

*servlet通常情况下是在用户第一次访问时被创建(并调用init方法),在服务器停止服务时
被销毁(并调用destory方法)
但是为了提升用户体验,有些常用的servlet会让他在服务器启动时被创建。
在web.xml文件下的servlet标签中写<load-on-startup>非负整数</load-on-startup>就行了
*由于servlet内存中只存在一个对象,所以不要设可改变的成员变量。

IDEA与servlet的相关配置

     1)IDEA会为每一个tomcat服务器部署的项目单独建立一份配置文件
     	*查看控制台的log:Using CATALINA_BASE:
     2)工作空间项目 和 tomcat部署的web项目
     	*tomcat真正访问的是“tomcat部署的web项目”,“tomcat部署的web项目”对应着“工作
     	空间项目”的web'目录下的所有资源
     	*WEB-INF目录下的资源不能被浏览器所访问
     	*断点调试:使用debug启动项目
Logo

CSDN联合极客时间,共同打造面向开发者的精品内容学习社区,助力成长!

更多推荐