ServletContext应用

简介: ServletContext应用

ServletContext应用


获取初始化参数


可以在web.xml下配置初始化参数使用context-param

里边的param-name为键,param-value为值,

public class ServletDemo04 extends HttpServlet {
    @Override
    protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
        resp.setContentType("text/html");
        resp.setCharacterEncoding("utf-8");
        ServletContext servletContext = this.getServletContext();
        String url = servletContext.getInitParameter("url");
        resp.getWriter().print(url);
    }


然后使用getServletContext()的getInitParameter方法获取值,此方法就位获取初始化的参数


转发

public class ServletDemo05 extends HttpServlet {
    @Override
    protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
        System.out.println("进入了Demo05");
        ServletContext context = this.getServletContext();
        context.getRequestDispatcher("/csh").forward(req,resp);
    }


转发为地址不变然后跳转,转发和重定向的理解可以用这样一个场景来简单形容


张三想借钱和李四去借结果李四也没钱了出于人际关系李四就帮助张三去和王五借钱然后将借来的钱给了张三,在整个过程中张三并没有和王五有任何交集这就是转发

张三想借钱去和李四接,结果李四也没有钱了然后就告诉张三王五那有钱让张三去和王五借,然后张三就又去和王五借钱。这就是重定向


这个可以用一个图来形容

e961565416e24a1e970332ffdad1d8e0.png


上边图就为转发,下边为重定向,abc分别是张三李四王五。


读取资源文件


Properties


  • 在java目录下新建properties
  • 在resources目录下新建properties


我们发现他们都被打包到了同一个路径下

:classes,俗称为classpath

public class ServletDemo06 extends HttpServlet {
    @Override
    protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
        InputStream is = this.getServletContext().getResourceAsStream("/WEB-INF/classes/db.properties");
        Properties properties = new Properties();
        properties.load(is);
        String name = properties.getProperty("user");
        String psw = properties.getProperty("password");
        resp.getWriter().print("xingming:"+name+psw);
    }


创建一个servletcontext对象然后使用getResourceAsStream方法获得流

创建properties对象调用load方法将流丢入 使用getProperty方法可以读取其中数据





相关文章
|
存储 应用服务中间件 数据库
【JavaWeb】知识总结Ⅸ(ServletConfig, ServletContext)
ServletConfig 类是为 Servlet 程序的配置信息的类 2. Servlet 程序和 ServletConfig 对象都是由 Tomcat 负责创建 3. Servlet 程序默认是第 1 次访问的时候创建, ServletConfig 在 Servlet 程序创建时,就创 建一个对应的 ServletConfig ServletConfig 类能干什么 1. 获取 Servlet 程序的 servlet-name 的值 2. 获取初始化参数 init-param 3. 获取 ServletContext 对象
|
存储 对象存储
07JavaWeb基础 - ServletContext对象
07JavaWeb基础 - ServletContext对象
44 0
|
存储 应用服务中间件 测试技术
Servlet中的ServletConfig对象、ServletContext对象以及Servlet3.0
Servlet中的ServletConfig对象、ServletContext对象以及Servlet3.0
73 1
|
应用服务中间件
初识ServletConfig
初识ServletConfig
80 0
|
应用服务中间件 容器
一文带你了解ServletContext
ServletContext是一个全局的储存信息的空间,服务器开始就存在,服务器关闭才释放 架构图示: 我们可以把ServletContext当成一个公用的空间,可以被所有的客户访问,WEB容器在启动时,它会为每个Web应用程序都创建一个对应的ServletContext,它代表当前Web应用,并且它被所有客户端共享,公共聊天室就会用到它 同时,多个Servlet也可以通过ServletContext来进行通信操作 当web应用关闭、Tomcat关闭或者Web应用reload的时候,ServletContext对象会被销毁🙌
112 10
一文带你了解ServletContext
|
应用服务中间件 容器
ServletConfig、ServletContext概述、配置及ServletContext的三个作用
ServletConfig、ServletContext概述、配置及ServletContext的三个作用
161 0
Servlet——ServletContext对象功能
Servlet——ServletContext对象功能
98 0
|
XML Java 应用服务中间件
谈谈 ServletConfig 和 ServletContext
我们都知道Servlet是框架的灵魂,学习web框架最底层离不开Servlet的支持,那么Servlet 是什么呢?如何创建一个Servlet 不是本文的重点,相关文章可以参考
96 0
ServletContext对象
ServletContext对象原理介绍
ServletContext对象