`
peng_jian_ming
  • 浏览: 259133 次
  • 性别: Icon_minigender_1
  • 来自: 济南
社区版块
存档分类
最新评论

ServletConfig和ServletConfig参数访问

    博客分类:
  • Java
阅读更多
HttpServletRequest,HttpServletResponse:这两个属性的作用范围最小。
    时间上:只是本身请求和应答完成就失效,当然转发是把当前的request对象取出来传给另一
          个资源,其实本身的request对象还是只生存到本次请求结束,response也同样。
    空间上:只能发送请求的客户端有效。

    HttpSession:一次连结到客户端关闭,时间作用范围比上面两个大,空间任用范围相同。

    ServletConfig:从一个servlet被实例化后,对任何客户端在任何时候访问有效,但仅对本servlet
    有效,一个servlet的ServletConfig对象不能被另一个servlet访问。

    ServletContext:对任何servlet,任何人在任何时间都有效,这才是真正全局的对象。那么,ServletConfig参数和ServletContext参数到底应该如何使用,如何取得?

    一般来说,对整个应用的配置,为了不使用"硬编码",应该配置为ServletContext参数,比如字
    符集设定。
    <web-app>
        .................
        <init-param>
            <param-name>charset</param-name>
            <param-value>GB2312</param-value>
        </init-param>
        .................
    </web-app>
    注意以上格式只是2。0以后的标准格式,旧容器(引擎)采用服务商自己的格式配置。注意它的
    父元素应该是<web-app>也就是说它是对一个应用作用的。

    而如果只有一个特定的servlet要设定的参数,其它servlet不能共享,应该配置为ServletConfig
    参数,如一个读取附件的servlet要用到绝对目录,而别的servlet不会用到:
    <servlet>
            <servlet-name>GetAtt</servlet-name>
        <servlet-class>mail.GetAttServlet</servlet-class>
        <init-param>
            <param-name>absPath</param-name>
            <param-value>/usr/mail/ax/axman/Maildir/</param-value>
        </init-param>
    </servlet>
    不用说,因为在<servlet>标签中已经指定了name和class,也就是说只有mail.GetAttServlet这个
    servlet中才能取到path,而别的Servlet是不能取到的。

    那么如何访问这两个对象的参数呢?
    访问ServletConfig参数:
        首先要取得ServletConfig对象,然后调用它的getInitParameter();方法。要访问
    ServletConfig对象,jsp中直接使用config内置对象,但因为你的JSP编译后的servlet一般不会被
    加到web.xml中的,所以一般不会通过jsp来取对本JSP编译后的servlet的配置参数,那么在servlet
    中要得到ServletConfig对象有两种方法:

    在inii()方法中取到:通过init的重载方法传递

    .....
    public class Test extends HttpServlet
    {
        ServletConfig config;
        public void init(ServletConfig config) throws ServletException {
            this.config = config;
        }
        ..................
    }
    然后在下面的方法中就可以访问config对象。但要注意,为了确保能从构造方法中到到当前servlet的
    config对象,应该调用父类的构造方法:
    .....
    public class Test extends HttpServlet
    {
        ServletConfig config;
        public void init(ServletConfig config) throws ServletException {
            super.init(config);
            this.config = config;
        }
        ..................
    }

    通过getServletConfig()方法直接到时,这样做的好处是不必调手工传递属性,想在任何时候都可
    以得到。

    还有第三种方法,要自己实现一些接口,这里作为一般讨论就不介绍了。

    要访问ServletContext对象,只要从现有的ServletConfig对象getServletContext()就可以了,然后
    调用它的getInitParameter()方法就可以获取它的参数。
分享到:
评论

相关推荐

    ServletContext与ServletConfig关系

    在访问 ServletConfig 对象参数时,可以通过 getInitParameter() 方法获取参数值,而在访问 ServletContext 对象参数时,可以通过 getInitParameter() 方法或 getAttribute() 方法获取参数值。 ServletConfig 和 ...

    javaWEB总结(3):ServletConfig对象

    - ServletConfig主要存储Servlet的个性化配置信息,而ServletContext则提供了全局的资源访问和通信。 5. **实际应用场景** - 配置数据库连接信息,如URL、用户名和密码。 - 设置日志级别或日志文件路径。 - ...

    ServletConfig

    ServletConfig对象是由Servlet容器创建的,它包含了Servlet的初始化参数和Servlet的名称。当我们定义一个Servlet时,可以通过`&lt;servlet&gt;`和`&lt;servlet-config&gt;`元素在`web.xml`中指定ServletConfig。ServletConfig...

    ServletContext与ServletConfig的深度分析

    `ServletContext`提供了整个Web应用程序级别的共享环境,用于存储初始化参数、共享数据、访问资源和记录日志等;而`ServletConfig`则为每个Servlet提供了单独的配置信息,使得每个Servlet可以根据自己的需求进行初始...

    Servlet获取初始化参数.doc

    "Servlet获取初始化参数" Servlet 获取初始化参数是 Servlet 编程中一个非常重要的主题。...通过使用 `ServletContext` 和 `ServletConfig` 对象,我们可以轻松地获取这些参数,从而实现更好的 Web 应用程序开发。

    有关ServletConfig与ServletContext的访问

    例如,你可以定义一个`url`参数,表示数据库的连接URL,所有Servlet都可以访问。 ```java // 通过ServletConfig获取ServletContext ServletConfig config = getServletConfig(); ServletContext context = config....

    JavaEE中关于ServletConfig的小结

    ServletConfig在JavaEE中是Servlet的一个重要组成部分,它主要用于存储和提供Servlet的初始化参数和配置信息。这个概念是在Servlet API中定义的,是每个Servlet实例的配置对象,它包含了Servlet在部署描述符(web....

    Servlet初始化参数和上下文初始化参数训练及处理数据库示例[汇编].pdf

    Servlet 初始化参数和上下文初始化参数训练及处理数据库示例 本文主要讲解 Servlet 初始化参数和上下文初始化参数的概念、定义、配置和获取方法。同时,通过实践演示,展示了如何在 Servlet 中读取初始化参数和上...

    servletAPI中文版(TXT格式,自己翻译)

    - **`ServletConfig` 的获取**:`GenericServlet` 实现了 `ServletConfig` 接口,允许开发者在 `init()` 方法中获取 `ServletConfig` 对象,并可以使用它来访问初始化参数。 - **其他方法**: - **`void destroy...

    Servlet初始化参数演示例子[源代码]

    Servlet初始化参数是在Servlet容器启动时设置的,这些参数可以在整个应用生命周期中被Servlet访问,通常用来配置Servlet的行为或应用的配置信息。本示例提供了对Servlet初始化参数的演示,帮助开发者了解如何在实际...

    javaweb Servlet开发总结(二).docx

    在JavaWeb开发中,`ServletConfig` 是一个非常重要的接口,它允许开发者访问Servlet的一些特定配置信息。这部分内容主要讨论如何在 `web.xml` 文件中为Servlet配置初始化参数。 **配置示例**: ```xml ...

    Web实验报告一.docx

    实验内容包括了Servlet的基本使用,如HttpServlet的继承,ServletConfig和ServletContext对象的使用,以及通过Servlet实现网站访问计数和用户登录验证功能。 【实验目的】 1. 熟悉Servlet的编程模型,了解其在Web...

    servlect常用对象的总结.pdf

    在这个例子中,我们可以看到,ServletConfig 对象获取了四个初始化参数的值,分别是 aaaa、age、height 和 weight。 ServletContext 对象 ServletContext 对象是 Servlet 生命周期中的一部分,它提供了关于整个 ...

    实验3 Servlet基础.docx

    在这个实验中,我们将深入理解并实践Servlet的基础知识,包括HttpServlet的doGet()和doPost()方法、ServletConfig对象的使用以及ServletContext接口的数据共享功能。 首先,我们来看HttpServlet的doGet()和doPost()...

    Tomact容器相关知识

    而如果某个Servlet需要访问特定的本地文件系统路径,那么这个路径应作为该Servlet的ServletConfig初始化参数。 总结起来,Tomcat作为Servlet容器,是运行Java Web应用程序的基础,而ServletContext和ServletConfig...

    Jsp中九个隐含对象的区别.doc

    - `pageContext`是JSP页面特有的,主要用于在JSP标签库和自定义标签中访问和存储数据,而`ServletContext`是整个Web应用程序的共享上下文,提供了与Web服务器交互的方法,如读取初始化参数和在不同Servlet之间共享...

    struts2中action如何获取jsp页面参数1.pdf

    通过以上介绍,我们可以了解到在Struts2中,Action可以通过`ActionContext`和`ServletActionContext`来获取JSP页面传递的参数以及处理与Servlet相关的请求和响应。理解这些概念对于进行Struts2应用开发是非常重要的...

Global site tag (gtag.js) - Google Analytics