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

Servlet基础01 在web.xml中配置参数和值

    博客分类:
  • java
 
阅读更多

 

 

   我们知道,servlet是不错的控制层框架。我们有时候需要将某些参数配置化,就是写入到配置文件中去。

比如我们要配置数据库连接的驱动等等。

   下面我们来看下简单的一些操作,可能书上写的一样,但是没有经过代码的修饰是无法找到感觉和印象的。

 

 

 1.值给一个servlet配置参数,也就是说,我们在web.xml中配置的参数和值只能被一一个servlet所使用的

 

<?xml version="1.0" encoding="UTF-8"?>
<web-app version="2.4" 
	xmlns="http://java.sun.com/xml/ns/j2ee" 
	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
	xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee 
	http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">
  <servlet>
    <description>This is the description of my J2EE component</description>
    <display-name>This is the display name of my J2EE component</display-name>
    
    <servlet-name>ServletServer</servlet-name>
    <servlet-class>endual.ServletServer</servlet-class>
、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、、
    <init-param>
      <param-name>JDBC$MySql</param-name>
      <param-value>com.mysql.jdbc</param-value>
    </init-param>
,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,
  </servlet>
  
  <context-param>
   <param-name>web$name</param-name>
   <param-value>chenwei</param-value>
  </context-param>

  <servlet-mapping>
    <servlet-name>ServletServer</servlet-name>
    <url-pattern>/servlet/ServletServer</url-pattern>
  </servlet-mapping>
  <welcome-file-list>
    <welcome-file>index.jsp</welcome-file>
  </welcome-file-list>
</web-app>

 

以上的代码就是将配置的参数和值写入到servlet的配置中去,可以是多个参数的

 

<?xml version="1.0" encoding="UTF-8"?>
<web-app version="2.4" 
	xmlns="http://java.sun.com/xml/ns/j2ee" 
	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
	xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee 
	http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">
  <servlet>
    <description>This is the description of my J2EE component</description>
    <display-name>This is the display name of my J2EE component</display-name>
    
    <servlet-name>ServletServer</servlet-name>
    <servlet-class>endual.ServletServer</servlet-class>
    <init-param>
      <param-name>JDBC$MySql</param-name>
      <param-value>com.mysql.jdbc</param-value>
    </init-param>

    <init-param>
      <param-name>JDBC$MySql2</param-name>
      <param-value>com.mysql.jdbc2</param-value>
    </init-param>
    
  </servlet>
  
  <context-param>
   <param-name>web$name</param-name>
   <param-value>chenwei</param-value>
  </context-param>

  <servlet-mapping>
    <servlet-name>ServletServer</servlet-name>
    <url-pattern>/servlet/ServletServer</url-pattern>
  </servlet-mapping>
  <welcome-file-list>
    <welcome-file>index.jsp</welcome-file>
  </welcome-file-list>
</web-app>

 ,

下面我们来看再servlet中调用这些参数



	public void doGet(HttpServletRequest request, HttpServletResponse response)
			throws ServletException, IOException {
        

		//ServletContext servletContext = this.getServletConfig().getServletContext() ;
		
	//	String name = servletContext.getInitParameter("web$name") ;
	        
		String xxx = this.getInitParameter("JDBC$MySql"); //servlet类this对象本身有一个getInitParameter("JDBC$MySql")方法可以直接调用即可
		
		System.out.println(xxx);
	//	System.out.println(name) ;
}

 

多个参数的情况下还有一个方法是返回第数组类型的。

 

 

2.还有一种情况是的,我们好多个servlet都要用到同一个配置的参数和值,当然我们可以将这些参数和值每个servlet都配置

一遍,没有关系。

有一种更好的方法就是将配置的参数和值独立出来,这样我们就可以减少代码了的。下面看:

<?xml version="1.0" encoding="UTF-8"?>
<web-app version="2.4" 
	xmlns="http://java.sun.com/xml/ns/j2ee" 
	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
	xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee 
	http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">
  <servlet>
    <description>This is the description of my J2EE component</description>
    <display-name>This is the display name of my J2EE component</display-name>
    
    <servlet-name>ServletServer</servlet-name>
    <servlet-class>endual.ServletServer</servlet-class>
    <init-param>
      <param-name>JDBC$MySql</param-name>
      <param-value>com.mysql.jdbc</param-value>
    </init-param>
    
  </servlet>
  
、、、、、、、、、、、、、、、、、、、、、、、、、、、
  <context-param>
   <param-name>web$name</param-name>
   <param-value>chenwei</param-value>
  </context-param>
、、、、、、、、、、、、、、、、、、、、、、、、、、、、、

  <servlet-mapping>
    <servlet-name>ServletServer</servlet-name>
    <url-pattern>/servlet/ServletServer</url-pattern>
  </servlet-mapping>
  <welcome-file-list>
    <welcome-file>index.jsp</welcome-file>
  </welcome-file-list>
</web-app>

 

servlet调用的代码比第一个要多一点,如果有兴趣可以去看下它的源码的实现的,我找了一会儿,就没有找了,看不到原貌的实现。但还是恨简单的

public void doGet(HttpServletRequest request, HttpServletResponse response)
			throws ServletException, IOException {
        

		ServletContext servletContext = this.getServletConfig().getServletContext() ;
		String name = servletContext.getInitParameter("web$name") ;
		System.out.println(name) ;
}
 

 

 

 

 

 

 

分享到:
评论

相关推荐

    web.xml配置详解, web.xml web.xml 配置实例

    在 web.xml 文件中,第一个元素是 XML 头,用于声明 XML 版本和字符编码。紧接着是 DOCTYPE 声明,用于指定 Servlet 规范的版本和文档类型定义(DTD)。最后是 web-app 元素,作为根元素,包含了所有其他元素。 ...

    web.xml配置详解

    web.xml 配置详解 web.xml 配置详解是指在 ...web.xml 配置详解是 Java Web 应用程序中一个非常重要的配置文件,它包含了很多描述 servlet/JSP 应用的各个方面的元素,对于 Java Web 应用程序的开发和配置非常重要。

    web.xml配置文件详解

    ### web.xml配置文件详解 #### 一、概述 `web.xml`是Java Web应用程序的核心配置文件之一,主要用于定义Web应用程序的结构与行为。它是Servlet容器(如Tomcat)读取Web应用程序配置信息的主要来源,因此深入理解其...

    web.xml各种配置

    在大型Web工程中,web.xml文件非常重要,因为它提供了一个中央配置点,便于管理Web应用的各种资源和服务。 ### Servlet版本与web.xml的结构 不同版本的servlet规范定义了不同的web.xml结构。以Servlet 2.3和...

    Tomcat中用web.xml控制Web应用详解

    Tomcat 中 web.xml 文件是 Web 应用的核心配置文件,负责管理 Web 应用的生命周期、Servlet 的加载顺序、Filter 的配置等。下面对 web.xml 文件中的重要元素进行详细解释。 context-param 元素 context-param 元素...

    struts.xml和applicationContext.xml、web.xml的配置

    在Java Web开发中,`struts.xml`, `applicationContext.xml` 和 `web.xml` 是三个至关重要的配置文件,它们各自负责不同的职责,并协同工作来构建一个完整的应用框架。以下是关于这三个配置文件的详细说明。 首先,...

    web.xml文件配置.doc

    首先,加载顺序是web.xml配置的核心概念。加载顺序遵循以下规则:context-param -&gt; listener -&gt; filter -&gt; servlet。context-param用于设置应用程序上下文参数,这些参数可以在整个应用程序中被访问,包括在listener...

    JSPservlet中web.xml详细配置指南(包含所有情况)

    在 JSP/Servlet 中,web.xml 扮演着关键角色,用于配置 Web 应用程序的各个方面。本文将对 web.xml 的配置进行详细的解释,包括加载顺序、context-param、listener、filter、servlet 等配置节的使用和顺序。 加载...

    web.xml配置汇总(servlet2.3)

    ### Web.xml配置详解(Servlet 2.3) #### 一、概述 `web.xml`作为Java Web应用程序的核心配置文件,在Servlet 2.3规范中扮演着至关重要的角色。该文件通常位于WEB-INF目录下,用于定义和配置Web应用程序的各种...

    web.xml中配置过滤器

    在 web.xml 文件中配置过滤器 在 Java Servlet 编程中,过滤器是一个非常重要的概念,它允许开发者截取和修改进入一个 Servlet 或 JSP 页面的请求或从一个 Servlet 或 JSP 页面发出的响应。在 web.xml 文件中配置...

    项目配置文件( spring-mvc.xml spring-mybatis.xml web.xml log4j.properties)

    这里提到的四个关键配置文件——`spring-mvc.xml`、`spring-mybatis.xml`、`web.xml`以及`log4j.properties`,对于一个基于Java的Web应用来说至关重要,特别是使用Spring MVC和MyBatis框架的时候。接下来,我们将...

    web.xml的配置

    【web.xml配置详解】 在Java Web开发中,`web.xml`是Web应用程序的部署描述符,它是服务器理解和管理Web应用的核心配置文件。本文将详细解释`web.xml`中的一些主要配置元素及其作用。 1. **定义头和根元素** `web...

    struts1中web.xml配置详解

    在 struts1 框架中,web.xml 文件是必不可少的配置文件之一,它用于配置 Struts 应用程序的核心组件 ActionServlet。本文将详细解释 web.xml 文件中的配置项和相关知识点。 1. 配置 Struts 的 ActionServlet 在 ...

    web.xml详细配置说明

    以下是对web.xml配置文件中各个元素的详细说明: 1. **定义头和根元素** - **XML头**:文件开头必须包含XML声明,指定XML版本和字符编码,如`&lt;?xml version="1.0" encoding="UTF-8"?&gt;` - **DOCTYPE声明**:紧接着...

    java web项目 web.xml配置详解

    在Java Web开发中,`web.xml`文件是应用的核心配置文件,它定义了Servlet、过滤器、监听器等组件,并负责映射它们的行为。本文将深入解析`web.xml`配置,帮助开发者理解其背后的原理和用途。 一、web.xml文件概述 `...

Global site tag (gtag.js) - Google Analytics