servlet相关随笔,API

时间:2020-12-04 11:39:44   收藏:0   阅读:17

项目根目录:WebContent、src(所有的构建路径)

    ## 例如:
?
## WebContent中有一个文件index.jsp

src中有一个Servlet.java

如果:index.jsp中请求 < a href="abc" >...< /a > 则寻找范围:则会在src根目录中找,也会在WebContent根目录中找

 

如果:index.jsp中请求 < a href="a/abc" >...< a>

则寻找范围:则会在src或者WebContent中找a目

录,然后再在a目录中找

 

web.xml 中的 / : 代表项目根目录

http://localhost:8888/Servlet25Project/

jsp中的 / : 服务器根路径

http://localhost:8888/

 

构建路径、WebContent:根目录

Servlet生命周期:5个阶段

 

技术图片

 

加载、卸载:Servlet容器自动处理

初始化:init() , 该方法会在Servlet被加载实例化以后执行

a.默认第一次访问Servlet时会被执行(只执行这一次)

b.可以修改为Tomcat启动时自动执行。

服务:里面就是 service(); 具体就是 doget()、以及dopost() 方法

销毁:destroy(), Servlet被系统回收时执行

卸载:

 

第一次访问Servlet时,init() 会被执行(只执行这一次)

Servlet2.5 可以在Tomcat启动时自动执行

在xml文件中如下:

<servlet> <servlet-name>a</servlet-name> <servlet-class>org.ltz.servlet.WelcomeServlet</servlet-class> <load-on-startup>1</load-on-startup> </servlet>

其中 “1” 代表第一个servlet的加载

 

service() -> doGet() doPost:调用几次执行几次。

destroy(): 关闭tomcat服务时,执行一次。

 

Servlet API : 由两个软件包组成: 对应于HTTP协议的软件包、对应于除了HTTP协议以外的其他软件包,即Servlet可以适用于任何通信协议。

  1. ServletConfig:接口 (1)getServletContext():获取Servlet上下文对象 application。

    –ServletContext中的常见方法(application): ① getContextPath():相对路径 ② getRealPath():绝对路径 ③ setAttribute()、getAttribute() ④ getInitParameter(String name):在当前WEB容器范围内,获取名为name的参数值(初始化参数) (2)getInitParameter(String name):在当前Servlet范围内,获取名为name的参数值(初始化参数)

  2. Servlet3.0方式给当前Servlet设置初始值: @WebServlet(… initParams= {@WebInitParam(name=“servletparaname30”,value=“servletparavalue30”)} ) 注意,此注解只隶属于某一个具体的Servlet,因此无法为整个web容器设置初始值参数(如果要通过3.0方式设置web容器的初始值参数,仍然需要在web.xml中设置)

  3. HttpServletRequest中的方法:同request一样,例如setAttribute()、getCookies()、getMethod()

  4. HttpServletResponse中的方法:同response一样

Servlet使用层面

Eclipse中在src创建一个Servlet,然后重写doGet() doPost()就可以(doGet() doPost()只需要编写一个)。

评论(0
© 2014 mamicode.com 版权所有 京ICP备13008772号-2  联系我们:gaon5@hotmail.com
迷上了代码!