首页 > 其他 > 详细

servelet

时间:2019-11-30 22:52:50      阅读:87      评论:0      收藏:0      [点我收藏+]

sever applet

概念:运行在服务器端的小程序

servelet就是一个接口,定义了java类被浏览器访问到(Tomcat识别)的规则

将来我们自定义一个类,实现servelet接口,复写方法。

快速入门:

1.创建java ee项目

2定义一个类,实现servlet接口

public class servlet快速入门 implements Servlet

3实现接口中的抽象方法;

4配置servlet 

在web.xml中配置文件

    <!--配置servlet-->
<servlet>
<servlet-name>demo01</servlet-name>
<servlet-class>servlet.servlet快速入门</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>demo01</servlet-name>
<url-pattern>/demo01</url-pattern>
</servlet-mapping>
</web-app>


servlet执行原理
1当服务器接收到客户端浏览器的请求之后,会解析url路径,获取访问的servlet的资源路径,
2查找web.xml 文件,是否有对应的<url-pattern>标签体内容
3如果有则找到对应的<servlet-class>全类名
4Tomcat会将字节码文件加载进内存,并且创建其对象
5调用其方法

生命周期
1被创建 执行init方法 只执行一次
什么时候被创建:默认情况下,第一次被访问时被创建
可以配置执行servlet的创建时机
<!--配置servlet-->
<servlet>
<servlet-name>demo02</servlet-name>
<servlet-class>servlet.servlet方法讲解</servlet-class>
<!--指定servlet创建时机
1.第一次被访问时创建
load-on-starup的值默认为负数
2在服务器启动时创建
load-on-starup 值为0或者正整数
-->
<load-on-startup>5</load-on-startup>
</servlet>
servlet的init方法只执行一次,说明一个servlet在内存中只存在一个对象,Servlet是单例的
  多个用户同时访问时,可能存在线程安全问题
  解决方案:尽量不要在servlet中定义成员变量。即使定义了成员变量也不要对其修改值;
2提供服务 执行 service方法 执行多次
  每次访问servlet时,都会执行一次
3被销毁 执行destroy方法 销毁之前执行
服务器只有正常关闭时才会执行destroy方法,一般用于释放资源

Servlet3.0 :
1 好处:
  支持注解配置,不要web.xml
步骤:
  1创建java EE项目。选择servlet3.0版本以上,可以不创建web.xml
  2实现一个类,实现servlet接口
  3复写方法
  4在类上使用@webServlet注解,进行配置
@WebServlet(urlPatterns = "资源路径")
//@WebServlet(value = "/demo")
//@WebServlet("/demo")

IDEA与Tomcat的相关配置
1IDEA会为每一个Tomcat部属的项目单独建立一份配置文件
查看控制台的lo:using CATALINA_BASE:"C:\Users\fqy"
2工作空间项目 和 Tomcat web项目
Tomcat 真正访问的是“Tomcat web项目”对应着工作空间项目”的web目录下的所有资源;
WEB-INF目录下的资源不能被浏览器访问;
断点调试:使用小虫子启动











 

 

servelet

原文:https://www.cnblogs.com/Damocless/p/11964101.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!