- 浏览: 187744 次
- 性别:
- 来自: 北京
文章分类
最新评论
-
grzrt:
zkf55915 写道哥们怎么用啊
好久不用了,就是看帮助资 ...
淘宝MetaQ开源消息队列安装 -
zkf55915:
哥们怎么用啊
淘宝MetaQ开源消息队列安装 -
grzrt:
jinnianshilongnian 写道整这个了?
没有 看 ...
linux内核中链表的实现 -
jinnianshilongnian:
整这个了?
linux内核中链表的实现
一、关于webAppRootKey的定义
默
认情况下webAppRootKey属性的值为webapp.root(就是说系统会把“web目录的路径”压入一个叫webapp.root的系统变
量,也就是说我们可以在以后的properties文件设置中,使用${webapp.root.webtools}来代替“web目录的路径”,此例为
tomcat/webapp/webtools) 因为一个tomcat下面可能部署了多个基于spring、log4j的应用,webapp.root会产生冲突错误(也就是说不知道webapp.root具体代表那个应用的路径了),所以我们可以为具体应用具体配置,而不使用默认值。 如下: <context-param> 这样我们就把“web目录的路径”压入一个叫webapp.root.webtools的系统变量。 二、spring以及log4j的配置
<!-- Spring ApplicationContext配置文件的路径,可使用通配符。多个路径用逗号分隔。此参数用于后面的Spring-Context loader -->
<context-param>
<!--由Spring载入的Log4j配置文件位置-->
<!--Spring默认刷新Log4j配置文件的间隔,单位为millisecond--> //Log4jConfigListener会去log4j.propeties 读取配置文件;开一条watchdog线程每60秒扫描一下配置文件的变化; <listener> //根据spring的配置文件加载spring。 <listener> 三、Spring 刷新Introspector防止内存泄露
<listener> 它主要负责处理由JavaBeans Introspector的使用而引起的缓冲泄露
。 spring中对它的描述如下: 四、编码问题的配置
1、字符编码过滤器(将通过此url的访问的字符编码都强制转换成UTF-8) <filter> <filter-mapping> 2、解决struts2中文乱码问题 <filter-mapping> 3、再者建立数据库时要统一编码为UTF-8 4、jsp页面要统一编码 <%@ page language="java" contentType="text/html; charset=UTF-8" 五、添加struts配置
(将所有一下的url访问拦截下来转发给action) <filter> //默认为classpath下或src下 <filter-mapping>
<param-name>webAppRootKey</param-name>
<param-value>webapp.root.webtools</param-value>
</context-param>
<param-name>contextConfigLocation</param-name>
<param-value>classpath:spring/*.xml</param-value>
</context-param>
<context-param>
<param-name>log4jConfigLocation</param-name>
<param-value>/WEB-INF/classes/log4j.properties</param-value>
</context-param>
<context-param>
<param-name>log4jRefreshInterval</param-name>
<param-value>60000</param-value>
</context-param>
<listener-class>
org.springframework.web.util.Log4jConfigListener
</listener-class>
</listener>
<listener-class>
org.springframework.web.context.ContextLoaderListener
</listener-class>
</listener>
<listener-class>
org.springframework.web.util.IntrospectorCleanupListener
</listener-class>
</listener>
它是一个在web应用关闭的时候,清除JavaBeans Introspector
的监听器.在web.xml中注册这个listener.可以保证在web 应用关闭的时候释放与掉这个web 应用相关的class loader 和由它管理的类。
如果你使用了JavaBeans Introspector来分析应用中的类,Introspector 缓冲中会保留这些类的引用.结果在你的应用关闭的时候,这些类以及web 应用相关的class loader没有被垃圾回收.
不幸的是,清除Introspector的唯一方式是刷新整个缓冲.这是因为我们没法判断哪些是属于你的应用的引用.所以删除被缓冲的introspection会导致把这台电脑上的所有应用的introspection都删掉.
需要注意的是,spring 托管的bean不需要使用这个监听器.因为spring它自己的introspection所使用的缓冲在分析完一个类之后会被马上从javaBeans Introspector缓冲中清除掉.
应用程序中的类从来不直接使用JavaBeans Introspector.所以他们一般不会导致内部查看资源泄露.但是一些类库和框架往往会产生这个问题.例如:Struts
<filter-name>encodingFilter</filter-name>
<filter-class>
org.springframework.web.filter.CharacterEncodingFilter
</filter-class>
<init-param>
<param-name>encoding</param-name>
<param-value>UTF-8</param-value>
</init-param>
<init-param>
<param-name>forceEncoding</param-name>
<param-value>true</param-value>
</init-param>
</filter>
<filter-name>encodingFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
<filter>
<filter-name>struts-cleanup</filter-name>
<filter-class>
org.apache.struts2.dispatcher.ActionContextCleanUp
</filter-class>
</filter>
<filter-name>struts-cleanup</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
pageEncoding="UTF-8"%>
<filter-name>struts2</filter-name>
<filter-class>
org.apache.struts2.dispatcher.FilterDispatcher
</filter-class>
<init-param>
<param-name>config</param-name>
<param-value>
struts-default.xml,struts-plugin.xml,struts/struts.xml
</param-value>
</init-param>
</filter>
<filter-name>struts2</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
发表评论
-
项目代码质量控制
2014-10-20 17:15 829在以后的开发项目时可以适当使用工具进行程序检查: 1、F ... -
WorkbookFactory 找不到
2013-11-08 10:46 994在最近的POI版本中,poi-3.9.jar包中找不到Work ... -
记一次JVM GC日志分析
2013-03-08 21:36 1748这几天在准备升级JDK版本到1.6,对目前线上JVM(版 ... -
Eclipse 相同变量的高亮 及颜色
2013-02-18 17:26 1646在Eclipse/MyEclipse中如果不小心把变量的高 ... -
java jstack dump 线程 介绍 解释
2013-02-05 15:52 1211hi,all: 最近抽时间把JVM运行 ... -
[转载]JDMK 基本JMX配置( html adaptor)
2013-01-07 13:37 1728原文地址: JDMK 基本JMX配置( html adap ... -
JAVA中的继承分析
2012-12-27 11:43 5146为什么写这篇博客,之前对继承的理解知识大体理论上,最近 ... -
JVM学习之:虚拟机中的运行时栈帧总结(二)
2012-12-12 19:46 838在 JVM学习之:虚拟机 ... -
JVM学习之:虚拟机中的运行时栈帧总结(一)
2012-12-12 19:45 868每 个人都知道,各种各样的动画视频,都是由一帧一帧图片连 ... -
JAVA字符串占位符
2012-12-06 08:24 3219包 java.text.MessageFormat java ... -
copy项目是容易出现的错误--webAppRootKey错误
2012-12-05 21:18 727Tomcat 发布多个项目时抛的webAppRootKey错误 ... -
spring组件扫描<context:component-scan/>使用详解
2012-12-05 19:14 730关于spring自动检测组件的使用方式网上太多了,而且也不 ... -
spring组件扫描<context:component-scan/>使用详解 (
2012-11-28 08:57 716关于spring自动检测组件的使用方式网上太多了,而且也不 ... -
static class 静态类(Java)
2012-11-23 20:20 871一般情况下是不可以用static 修饰类的。 ... -
java jvm 调优实战
2012-11-13 10:01 8111.eclipse 打印gc日志 eclipse根目录 ... -
Zookeeper的一致性协议:Zab
2012-11-04 16:14 1225Zookeeper使用了一种称为 ... -
浅谈java内存模型
2012-10-30 19:29 834不同的平台,内存模 ... -
JVM分代垃圾回收策略的基础概念
2012-08-15 12:43 698由于不同对象的生命周期不一样,因此在JVM的垃圾回收策略中有分 ... -
bloom filter 的Java 版
2012-07-26 21:50 884属于转贴:http://www.cnblo ... -
JAVA 条件表达式 陷阱
2012-07-25 18:34 1278代码: Map<String, Integer& ...
相关推荐
### web.xml配置文件详解 #### 一、概述 `web.xml`是Java Web应用程序的核心配置文件之一,主要用于定义Web应用程序的结构与行为。它是Servlet容器(如Tomcat)读取Web应用程序配置信息的主要来源,因此深入理解其...
### 在web.xml中引入其他XML配置文件的步骤 在Java Web开发中,`web.xml`作为Web应用程序的核心配置文件,负责定义应用级别的配置信息。为了提高代码的可维护性和复用性,有时需要将一部分配置内容提取到独立的XML...
4. **通过web.xml配置Log4j** - 在web.xml中,我们可以使用`<context-param>`标签来指定Log4j配置文件的位置,例如: ```xml <param-name>log4jConfigLocation <param-value>/WEB-INF/classes/log4j....
### 在web.xml中配置action或.do的理解与实践 #### 一、引言 在Web开发领域,特别是基于Java的Web应用程序开发中,`web.xml`文件扮演着至关重要的角色。它不仅定义了Web应用的基本配置,还管理着诸如Servlet、过滤...
在Java Web开发中,`web.xml`文件是应用的核心配置文件,它定义了Servlet、过滤器、监听器等组件,并负责映射它们的行为。本文将深入解析`web.xml`配置,帮助开发者理解其背后的原理和用途。 一、web.xml文件概述 `...
在这个主题中,我们将深入理解Filter的使用方法以及如何在`web.xml`中进行配置。 首先,Filter的工作原理是基于Servlet规范中的请求链模型,当用户发送请求到服务器时,Filter会先于Servlet拦截请求,执行预定义的...
### Web.xml配置详解 #### 一、Web.xml概述 `web.xml` 文件是Java Web应用程序的核心配置文件之一,主要用于配置应用程序级别的各种初始化参数、监听器、过滤器、Servlet映射等。通过`web.xml`,开发者可以灵活地...
总结来说,`struts.xml` 负责Struts2的Action配置,`applicationContext.xml` 管理Spring的Bean和依赖,而`web.xml` 定义了Web应用的基本结构和组件。这三个文件共同协作,构建了一个功能完善的Java Web应用,实现了...
总结来说,Spring在`web.xml`中的配置更加独立,它不依赖于任何特定的应用框架,而是在Web应用启动时独立初始化ApplicationContext。而在Struts中,Spring作为插件集成,依赖于Struts的执行流程来管理Bean。这两种...
在现代的Web开发中,"Web项目没有web.xml配置文件"是一个常见的现象,尤其是在使用Spring Boot、Spring MVC等框架时。传统的Java Web应用通常依赖于`web.xml`文件来配置Servlet、过滤器、监听器等核心组件,但在最新...
《Web.xml配置文件详解》 在Java Web应用中,`Web.xml`文件是核心的部署描述符,它定义了应用程序的结构、行为以及服务器如何处理请求。这份文档将深入探讨`Web.xml`配置文件的各个关键元素,帮助开发者更好地理解...
### WebLogic.xml配置详解 #### 一、概述 `weblogic.xml` 文件是 WebLogic Server 应用服务器中专门用于自定义和配置部署在该服务器上的 Web 应用程序的一个重要配置文件。它允许开发人员和系统管理员针对 ...
标题 "Spring全注解project示例 (无web.xml配置)" 提供了我们即将探讨的核心主题:一个使用Spring框架,完全依赖注解配置的项目,且没有传统的web.xml部署描述符。这种配置方式在现代Spring应用中非常常见,因为它...
总结,SpringMVC的零配置方式借助了Spring Boot的强大功能,简化了传统的XML配置,使开发更加便捷。通过Java代码配置,我们可以更加灵活地控制SpringMVC的行为,同时降低了维护成本。在实际开发中,这种方式可以显著...
Tomcat 配置文件 web.xml 与 server.xml 解析 Tomcat 配置文件 web.xml 和 server.xml 是 Tomcat 自身的配置文件,用于配置 Tomcat 服务器的行为和性能。在本文中,我们将对 web.xml 和 server.xml 中的主要配置项...
总结,`web.xml`是Java Web开发中的关键配置文件,它定义了应用程序的运行环境和行为,理解和熟练使用`web.xml`对于提升开发效率和维护性至关重要。通过深入学习和实践,开发者可以更好地掌控Web应用的运行逻辑,...
总结来说,"spring无web.xml零配置"意味着使用Java配置和Spring Boot的自动配置机制,替代了传统的XML配置方式,使得Spring应用的配置更加简洁、直观,同时也增强了可测试性和可维护性。通过这种方式,开发者可以更...
### web.xml文件中配置(servlet, spring, filter, listener)的加载顺序 在Java Web应用开发中,`web.xml`文件是整个Web应用程序的核心配置文件之一,它定义了Servlet容器如何启动、初始化以及配置各个组件如...
上述配置表示Spring将加载`/WEB-INF/classes`目录下以`applicationContext-`开头的XML配置文件,以及类路径(`classpath*:`)下的所有匹配文件。这里的`*`是一个通配符,允许加载多个同名前缀的XML配置文件。 ### ...
### Web.xml配置详解 在Java Web开发中,`web.xml`是至关重要的配置文件之一,它主要用于定义Web应用的各种配置信息。本文将详细介绍`web.xml`中的主要标签及其作用,并提供具体的配置示例。 #### 一、Web.xml概述...