获取ServletConfig对象
方式一:通过init方法获取
private ServletConfig config;
@Override
public void init(ServletConfig config) throws ServletException {
super.init(config);
// 给成员变量赋值
this.config = config;
}
方式二:直接调用父类的方法
ServletConfig myConfig = this.getServletConfig();
在xml中可以使用标签配置Servlet配置信息
<init-param>
<param-name>xxx</param-name>
<param-value>yy</param-value>
</init-param>
ServletConfig对象可以调用getInitParameter来获取对应配置信息的vlaue
getInitParameterNames方法可以获取所有配置信息的name
application域
ServletContext对象 域对象
作用范围最大的域,整个工程都能使用该对象,并且整个项目只有一个该对象,是单例对象。
作用:
1.可以进行传值;
2.获取全局配置信息
3.可以获取服务器上所有资源的真实路径(在服务器上的路径)
getRealPath
4.可以进行请求转发
该对象内部维护了一个集合。
ServletContext对象的获取
方式1:通过ServletConfig对象来获取
方式2:通过父类中的get方法来获取
向域中保存一个值
setAttribute(String key,Object object);
ServletContext也可以在xml文件中使用标签进行配置
<context-param>
<param-name>yyy</param-name>
<param-value>xxx</param-value>
</context-param>
请求转发
通过ServletContext对象获取请求转发器。
RequestDispatcher dispatcher = this.getServletContext().getRequestDispatcher(path);
请求转发
dispatcher.forward(request, response);
注意:
1.请求转发只能是站内转发;
2.转发的路径是相对于工程的。
响应 HttpServletResponse
响应行
响应头
响应体
响应浏览器的内容
设置响应头
response.setHeader();
重定向头
response.setHeader("location", "http://www.baidu.com");
response.setStatus(302);
servlet在接到请求后,执行服务,执行完服务后,给服务器返回一个响应,响应中带着响应头的信息,会根据重定向响应头进行请求重定向。