servlet学习笔记

Servlet 运行在服务端的Java小程序,是sun公司提供一套规范(接口),用来处理客户端请求、响应给浏览器的动态资源。但servlet的实质就是java代码,通过java的API 动态的向客户端输出内容

servlet规范:包含三个技术点
1)servlet技术
2)filter技术—过滤器
3)listener技术—监听器

Servlet快速入门
实现步骤:
	1)创建类实现Servlet接口
	2)覆盖尚未实现的方法---service方法
	3)在web.xml进行servlet的配置

init(ServletConfig config)

servlet对象创建时候执行
每次访问都会执行
ServletConfig : servlet对象的配置信息

getServletName()
getInitParameter();
getServletContext();
service(ServletRequest request, ServletResposne response)

destroy()

销毁的时候执行

servlet何时创建
默认第一次访问servlet时候创建该对象
servlet何时销毁
关闭服务器时销毁
每次访问必须执行的方法
service(ServletRequest request,ServiceResponse response)
servletrequest代表人文servletRequest内部封装的是http请求信息

servlet配置

基本配置

 <!-- servlet 类的配置-->
  <servlet>
  	<servlet-name>servlet</servlet-name>
  	<servlet-class>cn.niuability.servlet.ServletDemo</servlet-class>
  	<init-param>
  		<param-name>url</param-name>
  		<param-value>jdbc:mysql:///niuability</param-value>
  	</init-param>
  	<load-on-startup>3</load-on-startup>
  </servlet>
  <!-- servlet的虚拟路径配置 -->
  <servlet-mapping>
  	<servlet-name>servlet</servlet-name>
  	<url-pattern>/servlet</url-pattern>
  </servlet-mapping>

url-pattern
1)完全匹配
访问的资源与配置的资源完全相同才能访问到
2)目录匹配
格式:/虚拟的目录/*
/*
3)扩展名匹配
格式: *.扩展名
*.html
*.jsp

服务器启动实例化Servlet配置

servlet何时创建:默认第一次访问时创建
在servlet的配置是:加上一个配置 load-on-starup servlet对象在服务器起动时就创建

缺省servlet

将url-pattern配置成/
当你访问的资源地址所有的servlet都不匹配时,缺省的servlet负责处理
其实在web应用中所有的资源的响应都是servet负责

ServletContext对象

ServletContext代表的是一个web应用的环境(上下文)对象,ServletContext内部封装的是该web应用的信息,ServletContext对象一个web应用只有一个。

ServletContext的生命周期

创建:该web应用被加载(服务器启动或发布应用(服务器启动状态))
销毁:web应用被卸载(服务器关闭,移除该web应用)
获得ServletContext对象

ServletContext sc = config.getServletContext();
ServletContext sc = this.getServletContext();

ServletContext的作用
1)获得web应用全局初始化参数
web.xml中配置初始化参数

 <!--配置全局的初始化参数  -->
  <context-param>
  	<param-name>driver</param-name>
  	<param-value>com.mysql.jdbc.Driver</param-value>
  </context-param>
//1.获得ServletContext对象
ServletContext context = getServletContext();
//2.获得初始化参数
String initParameter = context.getInitParameter("deriver);

2)获得web应用中任何资源的绝对路径
相对于该web应用的相对地址

String path = getRealPath();

3)ServletContext是一个域对象
域对象:存储数据的区域就是域对象

ServletContext域对象的作用范围:整个web应用(所有的web资源可以随意向ServletContext域中存取数据,数据可以共享)

存:context.setAttribute(String name,Object value);
取:context.getAttribute(String name);
删:context.removeAttribute(String name);
ServletContext context = getServletContext();
context.setAttribute ();
name:zhangsan
name
ServletContext
servlet对象
Servlet对象
Servlet对象
Servlet对象
Servlet对象
  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值