JSP中初始化参数的设置和获取方法
Get Init Parameter in JSP Page
By Reawer 2008-8-13
InitParamter访问方法一(内置对象):
一、By ServletConfig :
Parameter1: {config.getInitParameter("p1") }
Parameter2: {config.getInitParameter("p2") }
Parameter3: {config.getInitParameter("p3") }
config遍历所有Parameter:
二、By ServletContext :
Parameter1: {application.getInitParameter("p1") }
Parameter2: {application.getInitParameter("p2") }
Parameter3: {application.getInitParameter("p3") }
application遍历所有Parameter:
InitParamter访问方法二(JSF):
InitParamter访问方法三(EL)--相当于application对象访问:
= ${initParam.p1}
= ${initParam.p2}
= ${initParam.p3}
JSP中的initParameter使用方法及体会
1. 使用JSP对应的Servlet初始化参数
给JSP页面提供初始化参数在三个方面不同于给servlet提供初始化参数。
1)需要使用使用jsp-file元素代替servlet-class。因此,WEB-INF/web.xml文件的servlet元素如下所示:
<servlet>
<description>initParameter</description>
<display-name>initParameterJsp</display-name>
<servlet-name>initParameterJsp</servlet-name>
<jsp-file>/jsp/initParameter.jsp</jsp-file>
<init-param>
<description>parameter Test</description>
<param-name>paraName</param-name>
<param-value>paraValue</param-value>
</init-param>
</servlet>
2) 几乎总是分配一个明确的URL模式。对servlet,一般相应地使用以
http://localhost:8080/webApp/servlet/
开始的缺省URL。
只需记住,使用注册名而不是原名称即可。这对于JSP页面在技术上也是合法的。例如,可用URL
http://localhost:8080/webApp/servlet/PageName
访问*.jsp的对初始化参数具有访问权的版本。但在用于JSP页面时,我们经常似乎不喜欢应用常规的servlet的URL。
因此,好的办法是使用url-pattern将JSP页面的原URL与注册的 servlet名相关联。
这样,客户机可使用JSP页面的指定名称,进行访问。例如,给本JSP的servlet定义,可使用下面的 servlet-mapping定义:
<servlet-mapping>
<servlet-name>initParameterJsp</servlet-name>
<!-- 关联URL模式.此处若不写成:/jsp/initParameter.jsp则在使用URL(/jsp/initParameter.jsp)访问时无法取到Servlet中的initParamter值 -->
<url-pattern>/jsp/initParameter</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>initParameterJsp</servlet-name>
<url-pattern>*.do</url-pattern>
</servlet-mapping>
3)JSP页使用jspInit而不是init。自动从JSP页面建立的servlet或许已经使用了inti方法。
一般如上在url-pattern中未写成/jsp/initParameter.jsp形式,则
http://localhost:8080/webApp/
*.jsp
形式的URL将激活此页面的不具有初始化参数访问权的版本,从而将对参数paraName失去访问权,如本页中使用config内置对象访问:
config.getInitParameter("paraName") ---- 得到结果: null。
但是, web.xml文件中已为本JSP页分配了一个注册名,该注册名已与URL模式/jsp/initParameter相关联。这时使用如下形式访问:
http://localhost:8080/webApp/jsp/initParameter
即则可得到参数:
config.getInitParameter("paraName"); //---- 得到结果: paraValue。
2. 使用应用范围内(项目)的初始化参数
一般,对单个地servlet或JSP页面分配初始化参数。指定的servlet或JSP页面利用ServletConfig的getInitParameter方法读取这些参数。
但是,在某些情形下,希望设置可由任意servlet或JSP页面借助ServletContext的getInitParameter方法读取的系统范围内的初始化参数。
可利用context-param元素声明这些系统范围内的初始化值。
1)context-param元素应该包含param-name、param-value以及可选的description子元素,如下所示:
<context-param>
<description>这是一个示例参数的描述信息</description>
<!-- 参数名 -->
<param-name>appParaName</param-name>
<!-- 参数值 -->
<param-value>appParaValue</param-value>
</context-param>
2)访问方法,使用内置的application对象:
String value = application.getInitParameter("参数名");//---- 得到结果: appParaValue。
分享到:
相关推荐
JSP页面中的JavaScript脚本初始化表格 #### 函数`doOnLoad()`的作用: 该函数主要负责在页面加载完成后执行一系列初始化操作,包括获取表单数据、设置表格属性等。 #### 关键步骤: - **获取表单值**:通过`...
本文将深入探讨如何在JSP页面中获取Servlet请求中的参数,并将其传递到另一个JSP页面。 首先,我们需要配置`web.xml`文件,这是部署描述符,它定义了Servlet的映射和配置。以下是一个示例配置: ```xml ...
`ActionServlet`在初始化过程中主要负责配置和管理整个Struts应用的环境,包括但不限于配置文件的加载、拦截器的注册以及控制器的设置等。 #### 三、Struts的初始化流程 **1. 初始化方法init()** - `Action...
除了获取单个参数外,`JSPSmartUpload`还提供了获取所有参数的集合,以及获取单个文件、多个文件、甚至所有文件的相关方法,这使得处理文件上传与表单数据变得更加灵活和方便。 总的来说,`JSPSmartUpload`通过其...
- `getInitParameter(String name)`:获取指定名称的初始化参数值。 - `getInitParameterNames()`:返回一个枚举,包含所有初始化参数的名称。 - `getServletContext()`:返回`ServletContext`对象,可以通过它获取...
- **参数:** `ServletConfig config`,这个对象包含了Servlet的配置信息,包括初始化参数和上下文配置。 - **异常:** 如果在`init()`方法中抛出`UnavailableException`,则表示Servlet暂时不可用,容器将不会...
- `getInitParameter(String name)`: 根据给定名称获取初始化参数的值。 - `getServletContext()`: 返回当前Web应用的ServletContext对象,用于获取应用级别的信息。 3. **FilterChain接口** - `doFilter...
- `getInitParameter`:获取初始化参数的值。 - `getServletContext`:获取Servlet上下文。 3. **`exception` 对象**:捕获并处理异常。 - `getMessage`:获取异常信息。 - `getStackTrace`:获取异常堆栈跟踪...
在这个"JSP参数接收工具类.rar"压缩包中,包含了两个重要的文件:"JSP参数接收工具类(ParamUtils.txt)"和"类加载工具.txt"。这些文件很可能是为了帮助开发者更方便地管理和处理JSP页面传入的请求参数,以及理解类...
1. **创建和初始化参数字段**:创建一个`JRParameter`对象,并对其进行初始化。 2. **设置参数值**:根据需要,为每个参数字段分配具体的值。这通常是通过用户的输入获取的。 3. **传递参数给报告**:在加载报告时,...
本实例深入探讨了JSP中的几个关键特性,包括初始化参数的获取、过滤器、监听器以及JSP的组成部分。 ### **初始化参数的获取** 在JSP应用中,我们经常需要设置一些全局的配置参数。这些参数可以通过`web.xml`部署...
8. **config**:包含了Servlet的初始化参数。 9. **exception**:如果页面抛出异常,它将引用该异常。 ### JSP表达式语言(EL) EL(Expression Language)是一种简洁的语法,用于从JSP页面获取和设置JavaBeans的...
- `pageContext.getInitParameter()`: 获取Web应用初始化参数。 2. **request对象** - `request.getParameter()`: 获取请求参数的值。 - `request.getParameterValues()`: 获取多个同名请求参数的值。 - `...
通过以上介绍,我们可以了解到在Struts2中,Action可以通过`ActionContext`和`ServletActionContext`来获取JSP页面传递的参数以及处理与Servlet相关的请求和响应。理解这些概念对于进行Struts2应用开发是非常重要的...
5. **EL(Expression Language):** EL是一种简洁的表达式语言,用于从页面上下文中获取和设置值。例如,`${bean.property}`可以用来访问JavaBean的属性。 6. **JSTL(JavaServer Pages Standard Tag Library):*...
2. **初始化**:Servlet实例化并调用`init()`方法,可以在此设置初始化参数。 3. **服务**:每次请求JSP时,都会调用`service()`方法来处理请求和响应。 4. **清理和销毁**:当Servlet不再需要时,容器调用`destroy...
1. **页面生命周期**:JSP页面会经历编译、初始化、服务和销毁四个阶段。 2. **指令元素**:包括`page`、`include`和`taglib`指令,它们是全局的,对整个JSP页面生效。 3. **动作元素**:如`jsp:include`、`jsp:...
4. **ServletContext接口**:代表了整个Web应用程序的上下文,提供全局信息和资源,如共享的初始化参数、加载静态资源等。 而jsp-api.jar文件则包含了JSP的相关API,它使开发者能够用Java编写动态网页。关键组件...
在doGet或doPost方法内部,通过request.getParameter("action")获取参数值,然后根据不同的参数调用自定义方法dispatch(),将请求转发到相应的JSP页面。dispatch方法利用RequestDispatcher的forward方法完成页面间的...
JSP & Servlet 技术总结 ...6. 在web.xml里配置的初始化参数怎么才能读回来? 12 7. 如何获得网页中form表单中的参数 12 8. session跨请求(页面)传数据怎么实现? 12 9. 过滤器如何使用? 13 10. 监听器如何使用? 13