ServletContext对象介绍

ServletContext对象介绍

/**
 *  ServletContext对象介绍
 * 		
 * */
@WebServlet("/servlet/context")
public class TestServletContext	extends HttpServlet {
	
	private static final long serialVersionUID = 1L;

	@Override
	protected void service(HttpServletRequest req, HttpServletResponse resp)
			throws ServletException, IOException {
		/**
		 *   拿到ServletContext对象有四种方法
		 * 
		 * */
		//1.父类支持拿到ServletContext对象
		ServletContext app1 = super.getServletContext();
		//2.通过ServletConfig来拿到ServletContext对象
		ServletContext app2 = super.getServletConfig().getServletContext();
		//3.从请求对象request中拿到ServletContext对象   新版本(Tomcat)之后才支持
		javax.servlet.ServletContext app3 = req.getServletContext();
		//4.从session对象中拿到ServletContext对象     支持以前的版本
		ServletContext app4 = req.getSession().getServletContext();
		
		/**
		 *   测试ServletContext中重要方法
		 * */
		//拿到上下文路径 
		System.out.println(app1.getContextPath());
		//拿到这个项目的真实路径(作用:以后做上传将文件保存在当前的项目中)
		System.out.println(app1.getRealPath("/"));
		
		//application中科院拿到全局的初始化参数(需要在web.xml中配置全局参数)
		System.out.println(app1.getInitParameter("encoding"));
	}
}

application中科院拿到全局的初始化参数(需要在web.xml中配置全局参数)web.xml文件如下:
<!-- 全局的参数配置 -->
 	<context-param>
 		<param-name>encoding</param-name>
 		<param-value>UTF-8</param-value>
 	</context-param>

重点:

req.getParameter(" ")req.getAttribute(" ")的区别?

req.getParameter :(浏览器)用户传过来的

req.getAttribute :从作用域里拿的(必需是放到作用域里的)

 


ServletConfig.getInitParameter 和 application.getInitParameter  有什么区别?

  ServletConfig.getInitParameter  :只作用于某一个Servlet,查看一个servlet中配置的初始化信息

在web.xml中配置如下:

	<servlet>
 		<servlet-name></servlet-name>
 		<servlet-class></servlet-class>
 		<init-param>
 			<param-name>email</param-name>
 			<param-value>xxxx@qq.com</param-value>
 		</init-param>
 	</servlet>

application.getInitParameter :表示整个应用都可以拿到   只是配置的方式不同  

         在web.xml中配置如下:  

 <!-- 全局的参数配置 -->
 	<context-param>
 		<param-name>encoding</param-name>
 		<param-value>UTF-8</param-value>
 	</context-param>





  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值