`
mj4d
  • 浏览: 302301 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

Servlet初始参数及其他

    博客分类:
  • java
阅读更多

最近在做一个东西的时候,用到servlet中的参数突然就分不清楚以下两者的关系:

        req.getAttribute("name");
        req.getParameter("name");

 汗颜啦,赶紧补习下。

 

这两个接口都位于ServletRequest中,用来处理请求间参数传递。首先来看看

 

public String getParameter(String name);

客户端和服务端之间的数据传递。比如从客户端发出一个http请求(GET/POST),请求中带有请求参数,那么就可以通过这个接口获取,其中所有的参数将作为String或null返回。比如有如下请求路径:

    http://localhost:8080/sample/query.htm?name=aaa&age=12
那么可以通过以下方式获取到值

String name = req.getParameter("name")
String age = req.getParameter("age")

当然,对POST请求中form表单的数据同样采用这种方式获取,其他类似的接口有:

public Enumeration getParameterNames();
public String[] getParameterValues(String name);
public Map getParameterMap();

 

public Object getAttribute(String name);

req.getAttribute()和setAttribute(String name, Object o)同时使用。考虑常见的场景,在执行一个查询操作后,需要将查询结果返回到页面展现,那么这个数据传递可以考虑如下使用
在servlet中:

req.setAttribute("list", new ArrayList<E>());

在页面需要获取到该数据

List list= (ArrayList)req.getAttribute("list");

 当然在现在的框架下这样的代码很少写了。

 

 

另一则,以下内容参考了http://hain.iteye.com/blog/70731

 

继续我们来看看servlet中的参数,主要有两种context-param和init-param

 

1、context-param 对应application范围内的参数,存放在servletcontext中,在web.xml中配置如下:

	<context-param>
		<param-name>contextConfigLocation</param-name>
		<param-value>classpath:spring/spring-*.xml</param-value>
	</context-param>
	
	<listener>
		<listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
	</listener>

 这是一个常见的加载spring的配置,这里需要在web容器启动时将spring的配置文件加载并将servletcontext装换为spring的容器中。当然基于这样的一个配置param-name是固定的contextConfigLocation了,可在相应的监听ContextLoaderListener父类中ContextLoader:

	/**
	 * Name of servlet context parameter (i.e., {@value}) that can specify the
	 * config location for the root context, falling back to the implementation's
	 * default otherwise.
	 * @see org.springframework.web.context.support.XmlWebApplicationContext#DEFAULT_CONFIG_LOCATION
	 */
	public static final String CONFIG_LOCATION_PARAM = "contextConfigLocation";

这样就会根据这个路径去读取相关的配置文件完成加载,当然<context-param>是可以配置多个,同时也一般和一个listener相对应。
在servlet中获取该值使用

getServletContext().getInitParameter("contextConfigLocation"));

 

 

2、init-param 这个就对应servlet中的参数,配置如下

	<servlet>
		<servlet-name>sales</servlet-name>
		<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
		<init-param>
			<param-name>name</param-name>
			<param-value>this is a servlet init-param</param-value>
		</init-param>
		<load-on-startup>1</load-on-startup>
	</servlet>

 在servlet中获取

this.getInitParameter("name")
分享到:
评论

相关推荐

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

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

    Servlet获取初始化参数.doc

    "Servlet获取初始化参数" Servlet 获取初始化参数是 Servlet 编程中一个非常重要的主题。下面,我们将详细地讨论如何获取应用范围初始化参数和 servlet 初始化参数。 获取应用范围初始化参数 在 web.xml 文件中,...

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

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

    servlet读取初始化参数和属性文件的数据

    servlet读取初始化参数和属性文件的数据

    jsp页面中获取servlet请求中的参数的办法详解

    本文将深入探讨如何在JSP页面中获取Servlet请求中的参数,并将其传递到另一个JSP页面。 首先,我们需要配置`web.xml`文件,这是部署描述符,它定义了Servlet的映射和配置。以下是一个示例配置: ```xml &lt;servlet&gt; ...

    servlet传参

    理解 Servlet 的生命周期和接受参数信息是掌握 Servlet 技术的关键。 Servlet 的生命周期 Servlet 的生命周期可以分为四个阶段: 1. 初始化:Servlet 初始化时,会读取 web.xml 文件中的配置信息,并执行 init ...

    Servlet

    #### 三、Servlet初始化 Servlet的初始化是一个重要的步骤,涉及到资源的分配和准备。初始化过程主要由容器(如Tomcat)负责,具体步骤如下: 1. **加载Servlet类**:当服务器启动并接收到针对某个Servlet的第一个...

    用于servlet程序的开发的servlet-jar包

    2. **ServletConfig**:每个Servlet实例都有一个对应的ServletConfig对象,它提供了Servlet的初始化参数和ServletContext的引用。 3. **ServletContext**:代表整个web应用的上下文,提供了获取应用级资源、注册...

    servlet-api_servlet_

    4. **ServletConfig接口**:在Servlet初始化时,容器会传递一个ServletConfig对象,包含了Servlet的初始化参数和容器特定的信息。 5. **ServletContext接口**:代表了Servlet的运行时环境,提供了获取整个Web应用的...

    serlvet 源码 servlet-src 源文件

    4. **ServletConfig接口**:在Servlet初始化时,Servlet容器会传递一个ServletConfig对象给Servlet,这个对象包含了Servlet的配置信息,如Servlet名称、初始化参数等。 5. **ServletContext接口**:表示整个Web应用...

    javax.servlet jar包---解决找不到javax.servlet.*等问题

    - `ServletConfig`: 代表Servlet的配置信息,包含在web.xml中定义的Servlet特定的初始化参数。 - `ServletContext`: 表示整个Web应用的上下文,可以获取Web应用的信息,如初始化参数、资源路径等。 - `...

    servlet api servlet api

    Servlet通常在`web.xml`部署描述符文件中配置,包括Servlet的映射路径、初始化参数等。例如: ```xml &lt;servlet&gt; &lt;servlet-name&gt;MyServlet&lt;/servlet-name&gt; &lt;servlet-class&gt;com.example.MyServlet&lt;/servlet-class...

    SERVLET基本原理

    init() 方法是 SERVLET 生命周期的第一个阶段,在这个阶段,SERVLET 容器会将 SERVLET 的初始参数传递给 SERVLET。init() 方法只会被调用一次,用于完成 SERVLET 的初始化工作。 service() 方法是 SERVLET 生命周期...

    Servlet编程范例(4)

    在Servlet编程中,Servlet初始化参数和ServletContext对象是两个至关重要的概念。这些概念是构建Web应用程序的基础,特别是当涉及到服务器端的动态处理和应用配置时。 Servlet初始化参数是用于配置Servlet的特定...

    Servlet中文API文档 .docx

    2. `ServletConfig getServletConfig()`:返回Servlet的配置对象,可以从其中获取Servlet的初始化参数和其他配置信息。 3. `void service(ServletRequest request, ServletResponse response) throws ...

    servlet笔记,servlet的总结

    web.xml文件是Web应用的核心配置文件,用于描述Servlet的映射、初始化参数和其他Web组件的配置。例如,配置一个Servlet的基本语法如下: ```xml &lt;servlet&gt; &lt;servlet-name&gt;ServletName&lt;/servlet-name&gt; &lt;servlet-...

    servlet技术初步入门

    3. 如果Servlet尚未初始化,容器会创建Servlet实例并调用init()方法进行初始化。 4. 容器将请求封装成ServletRequest对象,将响应封装成ServletResponse对象,然后调用Servlet的service()方法。 5. service()方法...

    Servlet中文API文档 servlet

    5. **Servlet配置**:Servlet的配置通常在web.xml文件中进行,包括Servlet的注册、映射URL、设置初始化参数等。例如,`&lt;servlet&gt;`、`&lt;servlet-mapping&gt;`标签用于定义Servlet及其映射。 6. **Servlet上下文**:...

    servlet API 中文版

    - `getInitParameter(String name)`和`getInitParameterNames()`: 分别用于获取初始化参数的值和参数名的枚举,方便访问Servlet配置。 - `getServletConfig()`和`getServletContext()`: 获取Servlet配置和Servlet...

    Servlet-Servlet生命周期

    这个方法只执行一次,通常用于设置Servlet的初始状态,比如获取初始化参数、建立数据库连接等。 3. **请求处理**:当客户端发送请求时,Servlet会被调用以处理请求。请求处理主要通过`service()`方法实现。该方法...

Global site tag (gtag.js) - Google Analytics