servlet
什么是servlet
servlet是提供基于协议的请求/响应服务的java类
http servlets是能被http命令调用的servlet
Servlet的生命周期
Servlet生命周期通过WEb容器控制
Servlet类---->实例化和加载---->初始化:init(ServletConfig)
---->就绪:service(_request,_response)
---->销毁:destroy()
---->垃圾回收:finalize()
init()
仅在servlet首次载如时执行一次,不是每次请求都要调用。
service
在新线程中由服务器为每个请求而调用。发送到doGet.doPost等。不要覆盖这个方法
doGet,doPost,doXxx
处理GET,POST,等请求。
覆盖这些方法以提供期望的行为。
destroy
在服务器删除servlet的实例时调用。不是每次请求后都调用。
ServletContext
是一个接口,呈现了Web应用的Servlet视图
在Servlet中通过getServletContext()方法获得
能访问应用范围的初始化参数和属性
能访问Web应用的静态资源
横跨多个请求,用户和Servlets
ServletConfig
Context初始化参数
使用getServletContex()方法访问ServletContext初始化参数
在web.xml中配置初始化参数:
<web-app>
<context-param>
<param-name>feedback</param-name>
<param-value>feedback123@bea.com</param-value>
</context-param>
<web-app>
从Servlets访问context-wide初始化参数:
ServletContext ctx=getServletContext();
ctx.getInitParameter("feedback"));
Context属性
Servlet context属性是:
通过变成方式绑定
作为Web应用全局变量可以被所有Servlet和JSPs访问到
设置Context属性
ServletContext ctx=getServletContext();
ctx.setAttribute("employee1",new Employee("john Doe"));
ctx.setAttribute("employee2",new Employee("B.Clark"));
获得Context属性
ServletContext ctx = getServletContext();
Enumeration aNames=ctx.getAttributeNames();
while(aNames.hasMoreElements()){
String aName=(String)aNames.nextElement();
Employee e=(Employee)ctx.getAttribute(aName);
ctx.removeAttribute(aName);
}
Sevlet configuration
ServletConfig:
表示单独的Servlet初始配置
使用getServletConfig()方法获得
ServletConfig借口提供方法,该方法返回:
Servlet名
Servlet上下文
初始化的参数
配置初始化参数
Servlet配置初始化参数可以被指定的Servlet访问
在web.xml中初始化Servlets:
<web-app>
<servlet>
<servlet-name>myServlet</servlet-name>
<servlet-clas>myPackage.MyServlet</servlet-class>
<init-param>
<param-name>cache</param-name>
<param-value>OFF</param-value>
</init-parm>
</servlet>
</webapp>
从Servlets访问初始化参数
ServletConfig config=getServletConfig();
if(config.getInitParameter("cache").equals("OFF")){
res.setHeader("parama","no-cache"):
}
使用Servlet init()方法
Servlet借口中的init()方法能够访问ServletConfig
在init()方法中处理配置参数:
import javax.servlet.htttp.*;
public class MyServlet extends HttpServlet{
Stirng cache;
pulbic void init(SevletConfig config){
cache=config.getInitParameter("cache");
}
}
设置和访问初始化参数
设置和访问应用属性
servlet是提供基于协议的请求/响应服务的java类
http servlets是能被http命令调用的servlet
Servlet的生命周期
Servlet生命周期通过WEb容器控制
Servlet类---->实例化和加载---->初始化:init(ServletConfig)
---->就绪:service(_request,_response)
---->销毁:destroy()
---->垃圾回收:finalize()
init()
仅在servlet首次载如时执行一次,不是每次请求都要调用。
service
在新线程中由服务器为每个请求而调用。发送到doGet.doPost等。不要覆盖这个方法
doGet,doPost,doXxx
处理GET,POST,等请求。
覆盖这些方法以提供期望的行为。
destroy
在服务器删除servlet的实例时调用。不是每次请求后都调用。
ServletContext
是一个接口,呈现了Web应用的Servlet视图
在Servlet中通过getServletContext()方法获得
能访问应用范围的初始化参数和属性
能访问Web应用的静态资源
横跨多个请求,用户和Servlets
ServletConfig
Context初始化参数
使用getServletContex()方法访问ServletContext初始化参数
在web.xml中配置初始化参数:
<web-app>
<context-param>
<param-name>feedback</param-name>
<param-value>feedback123@bea.com</param-value>
</context-param>
<web-app>
从Servlets访问context-wide初始化参数:
ServletContext ctx=getServletContext();
ctx.getInitParameter("feedback"));
Context属性
Servlet context属性是:
通过变成方式绑定
作为Web应用全局变量可以被所有Servlet和JSPs访问到
设置Context属性
ServletContext ctx=getServletContext();
ctx.setAttribute("employee1",new Employee("john Doe"));
ctx.setAttribute("employee2",new Employee("B.Clark"));
获得Context属性
ServletContext ctx = getServletContext();
Enumeration aNames=ctx.getAttributeNames();
while(aNames.hasMoreElements()){
String aName=(String)aNames.nextElement();
Employee e=(Employee)ctx.getAttribute(aName);
ctx.removeAttribute(aName);
}
Sevlet configuration
ServletConfig:
表示单独的Servlet初始配置
使用getServletConfig()方法获得
ServletConfig借口提供方法,该方法返回:
Servlet名
Servlet上下文
初始化的参数
配置初始化参数
Servlet配置初始化参数可以被指定的Servlet访问
在web.xml中初始化Servlets:
<web-app>
<servlet>
<servlet-name>myServlet</servlet-name>
<servlet-clas>myPackage.MyServlet</servlet-class>
<init-param>
<param-name>cache</param-name>
<param-value>OFF</param-value>
</init-parm>
</servlet>
</webapp>
从Servlets访问初始化参数
ServletConfig config=getServletConfig();
if(config.getInitParameter("cache").equals("OFF")){
res.setHeader("parama","no-cache"):
}
使用Servlet init()方法
Servlet借口中的init()方法能够访问ServletConfig
在init()方法中处理配置参数:
import javax.servlet.htttp.*;
public class MyServlet extends HttpServlet{
Stirng cache;
pulbic void init(SevletConfig config){
cache=config.getInitParameter("cache");
}
}
设置和访问初始化参数
设置和访问应用属性
lunzi
2007-09-14 03:05:16
评论:0
阅读:229
引用:0
