Servlet

来源:互联网 发布:小提琴制作材料淘宝 编辑:程序博客网 时间:2024/06/05 15:52

1:Servlet:

1) Servlet的基本概念:

servlet是一个普通的Java类,必须继承HttpServlet,Servlet类是不能直接运行的,需要交给tomcat来运行

2) Servlet程序的执行过程

先运行项目下的web.xml文件,然后在web.xml中url-pattern中找相应的名称,然后在通过servlet-name找到相应的路径,

然后通过servlet-class找到class文件,通过反射进行加载类,然后调用server()方法,它是程序的入口,然后在执行相应的

doGet()或者doPust()方法.

3) 映射路径

映射路径就是在地址栏中最终访问的地址,在web.xml中设置url-pattern;

精确匹配: 就在url-pattern中设置的是一个精确的地址,

模糊匹配: 第一个是/* ; 表示的是其他没有出现的地址;

第二个是*.(action,do,html) 表示以其结尾的地址

精确匹配优先于/* 优先于 *.(action,do,html)

4) servlet的生命周期

servlet是一个单例的,只创建一个对象, 使用init()方法,来进行初始化;

使用server()方法,来运行这个类,  destory()方法,来对这个servlet进行销毁.

自动加载: 在web.xml文件中servlet标签下添加一个<load-on-startup>1</load-on-startup>

其中数字越小,优先级越高,

servlet是一个单例的,但是是一个多线程的,所以在servlet类中如果有成员变量,在使用时,就需要注意使用同步方法.

5) ServletConfig

用来对servlet进行配置,只能对当前servlet有效,对其他的servlet没有作用,

在servlet标签下    <init-param> 设置名称和值 </init-param>

getInitParamater(String name) ;  获取参数的值,  getInitParameterNames() ; 获取所有的参数,返回值是一个Enumeration

6) ServletContext

代表的是上下文路径, 获取的是getContextPath() ; 获取到是项目名称

设置全局参数<context-param> 设置名称和值 </context-param>

getInitParameter(String name) ;   获取到参数的值,

还可以作为域对象,来进行数据的发送,

添加数据: setAttribute("name","value") ; 

获取数据: getAttribute("name") ; value的类型是任意的,可以是字符串,也可以是数组,集合.

7) 请求转发:

 请求转发是,通过context的getQuestDispatcher(uri).forward(request,response);

请求转发是服务器行为,只有一次request,并且地址栏不会发生改变,同时,request中的数据也会被转发,

但是不可以访问外部资源,只可以访问项目中的资源.

重定向: 是通过response的sendRedirect("uri"); 

重定向是浏览器行为,有两次request,地址栏也会发生变换,不能通过request进行数据的传输,

但是可以访问外部资源;

阅读全文
'); })();
0 0
原创粉丝点击
热门IT博客
热门问题 老师的惩罚 人脸识别 我在镇武司摸鱼那些年 重生之率土为王 我在大康的咸鱼生活 盘龙之生命进化 天生仙种 凡人之先天五行 春回大明朝 姑娘不必设防,我是瞎子 童装画报 男宝宝画报 淘画报 春节画报 安全小画报 画报三角梅 小学画报 蓝车画报 点石斋画报 校园画报 学生画报 学校画报 女人画报 小朋友画报 科技画报 军训画报 淘宝淘画报 手机画报 画报边框 文明画报 汽车画报 语文画报 宜家画报 画报尺寸 数字画报 民族画报 足球画报 手画报图片 卫生画报 法制画报 国庆手画报 画报装饰 识字画报 画报排版 美术画报 桌面画报 美食画报 画报软件 手工画报 英文画报 秋的画报