ServletConfigServletContext都有getInitParameter方法, 这两个方法的都能从web.xml中获取参数,但是是有区别的。

1. web.xml文件

  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <web-app id="WebApp_ID" version="2.5" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd">
  3. <context-param>
  4. <param-name>webParam</param-name>
  5. <param-value>aaa</param-value>
  6. </context-param>
  7. <servlet>
  8. <servlet-name>test</servlet-name>
  9. <servlet-class>Test</servlet-class>
  10. <init-param>
  11. <param-name>servletParam</param-name>
  12. <param-value>bbb</param-value>
  13. </init-param>
  14. </servlet>
  15. <servlet-mapping>
  16. <servlet-name>test</servlet-name>
  17. <url-pattern>/test</url-pattern>
  18. </servlet-mapping>
  19. </web-app>

 注:区分配置文件中,对参数的配置的不同. servletParam这个参数是属于Test这个Servlet的; 而webParam这个参数是属于web应用的,被各个servlet共享。

    2. 调用代码

  1. public class Test extends HttpServlet {
  2. public void doGet(HttpServletRequest request, HttpServletResponse response)
  3. throws ServletException, IOException {
  4. response.setContentType("text/html");
  5. PrintWriter out = response.getWriter();
  6. String s1 = this.getInitParameter("servletParam");
  7. String s2 = this.getServletContext().getInitParameter("webParam");
  8. //注意区别,一个是独属于Test这个Servlet的参数,一个是web范围的参数,
  9. out.println("<HTML>");
  10. out.println("  <HEAD><TITLE>A Servlet</TITLE></HEAD>");
  11. out.println("  <BODY>");
  12. out.println(s1);
  13. out.println(s2);
  14. out.println("  </BODY>");
  15. out.println("</HTML>");
  16. out.flush();
  17. out.close();
  18. }
  19. }

3. 运行结果

 bbb aaa

 

getInitParameter方法的更多相关文章

  1. jsp的appilication.getInitParameter()方法无法获取到值的问题

    背景介绍 今天研究jsp的内置对象时发现,使用appilication.getInitParameter()从web.xml文件中获取值的时候,死活获取不到,折腾了将近一个小时,后来出现问题的原因却让 ...

  2. getInitParameter()

      getInitParameter()方法是在GenericServlet接口中新定义的一个方法,用来调用初始化在web.xml中存放的参量.在web.xml配置文件中一个servlet中参量的初始 ...

  3. init()方法必须使用super.init(config)的原因--Servlet

    原 因: 一个servlet在它的init()方法中传递它的ServletConfig实例,在其他的方法中却不可以.当一个servlet在 init()方法外需要调用config对象时就会产生问题.使 ...

  4. Web.xml配置详解

    (转自:http://www.cnblogs.com/chinafine/archive/2010/09/02/1815980.html) 1 定义头和根元素 部署描述符文件就像所有XML文件一样,必 ...

  5. Web.xml配置参数详解

    1 定义头和根元素 部署描述符文件就像所有XML文件一样,必须以一个XML头开始.这个头声明可以使用的XML版本并给出文件的字符编码.DOCYTPE声明必须立即出现在此头之后.这个声明告诉服务器适用的 ...

  6. JSP内置对象之application对象

    虽然常把Web应用称为B/S架构的应用,但其实Web应用一样是C/S结构的应用,只是这种应用的服务器是Web服务器,而客户端是浏览器. 现在抛开Web应用直接看Web服务器和浏览器. Web服务器负责 ...

  7. SpringMVC源码剖析(三)- DispatcherServlet的初始化流程

    在我们第一次学Servlet编程,学Java Web的时候,还没有那么多框架.我们开发一个简单的功能要做的事情很简单,就是继承HttpServlet,根据需要重写一下doGet,doPost方法,跳转 ...

  8. filter-自己的理解

    在配置filter中的拦截功能时候 ,我们在web.xml中进行配置文件.filter过滤文件有系统自己带有的,还有就是我们手写的filter文件.网页调用servlter的时候,我们可以在此之前调用 ...

  9. JSP数据交互(二)和Servlet基础

    01.Application原理与应用 01.application对象的作用域范围是整个应用服务,而它在应用中所承担的责任就类似于一个全局变量.只要服务启动,则application对象就会存在. ...

随机推荐

  1. android 增量更新原理

    原理如下:服务器端设计增量表,记录数据操作顺序id,和增删改查信息.在进行数据库表操作的时候同时进行将信息保存在增量表. android客户端在请求的时候上传最后保存的id.服务端判断最后的id,返回 ...

  2. Hdu 1009 FatMouse' Trade 2016-05-05 23:02 86人阅读 评论(0) 收藏

    FatMouse' Trade Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others) Tot ...

  3. 11:self关键字

    本小节知识点: 类方法中的self 对象方法中的self 全局变量成员变量局部变量 self总结 self使用注意 OC提

  4. 6.form表单四种提交方式

    一.使用jquery的ajax方式提交: 二.使用easyui的form组件内置的submit方法提交: 三.先定义表单,然后使用submit方法提交: 四.先定义表单,然后按下enter键时提交:

  5. js-数组方法push

    <script type="text/javascript">        var arr=[1,2,3,4,5]        arr.push(6,7)      ...

  6. 异步多线程 Thread ThreadPool Task

    一.线程 Thread ThreadPool 线程是Windows任务调度的最小单位,线程是程序中的一个执行流,每个线程都有自己的专有寄存器(栈指针.程序计数器等),但代码区是共享的,即不同的线程可以 ...

  7. 实验5 IIC通讯与AD/接DA接口

    1.利用单片机控制PCF8591的AD转换,控制AD0和AD1电位器,在数码光上显示DA转换的值. 2.利用单片机控制PCF8591的DA转换,让发光二极管D1由暗到亮变化,整个过程时间差不多2s左右 ...

  8. JS学习笔记1_基础与常识

    1.六种数据类型 5种基础的:Undefined,Null,Boolean,Number,String(其中Undefined派生自Null) 1种复杂的:Object(本质是一组无序键值对) 2.字 ...

  9. 针对 easyui boolean 布尔值 的处理

    1.html代码 <select class="easyui-combobox" data-options="editable:false,panelHeight: ...

  10. 【C#】简单的发送socket字符串

    1 打开VS,新建一个C#窗口程序 2 添加按钮 3 写按钮的事件代码 双击这个按钮 进入代码界面 输入如下内容,注意IP和端口 private void button1_Click(object s ...