易截截图软件、单文件、免安装、纯绿色、仅160KB

为UrlRewrite的多个XML配置文件的加载提供模糊匹配

 
为UrlRewrite的多个XML配置文件的加载提供模糊匹配
 
@for&ever 2009-11-27
 
之前写了一篇文章,《修改UrlRewriter使其由单配置文件到支持多配置文件》,网址http://blog.csdn.net/forandever/archive/2009/08/07/4423808.aspx ,对 UrlRewrite的代码进行了简单修改,
文章中的能够支持多个配置文件的情况。
        
         最近,在项目中使用觉得还是不太方便,每次增加一个配置文件,都需要修改web.xml ,于是,在上次修改的基础上,继续修改代码,增加模糊匹配某个目录下的一定规则的文件的功能。
                  
一、需求:
         能够实现在 web.xml 中通过 * 的方式配置,一次即可配置好一系列的配置文件。例如:
                  
在web.xml中如下配置:
        
    <filter>
        <filter-name>UrlRewriteFilter</filter-name>
        <filter-class>org.tuckey.web.filters.urlrewrite.UrlRewriteFilter</filter-class>
        <init-param>
            <param-name>confPath</param-name>
            <param-value>/WEB-INF/urlrewrite.xml /WEB-INF/conf/urlrewrite/abc*.xml</param-value>
        </init-param>
    </filter>
 
要能够实现加载文件/WEB-INF/urlrewrite.xml和/WEB-INF/conf/urlrewrite/目录下所有文件名匹配abc*.xml格式的文件的功能。
 
二、实现:                     


相关文档:

DOM4J生成XML文档


public int createXMLFile(String filename) {
  int returnValue = 0;
  Document document = DocumentHelper.createDocument();    //生成Document,用于管理XML文档
  
  Element booksElement = document.addElement("books");    //添加 ......

javascript动态装入XML数据


使用javascript创建Microsoft XML DOM,就可以完成这一工作.
// 装入数据.
var source = new ActiveXObject("Microsoft.XMLDOM");
source.async = false
source.load("history.xml");
// 装入样式表.
var stylesheet = new ActiveXObject("Microsoft.XMLDOM");
stylesheet.async = false
stylesheet.load( ......

java SAX解析XML文件

import java.io.File;
import java.io.FileNotFoundException;
import org.dom4j.Document;
import org.dom4j.DocumentException;
import org.dom4j.Element;
import org.dom4j.io.SAXReader;
public class ResolveXmlFile {
 
 public void resolverXml() throws DocumentException, FileNotFoundExcept ......

XML特殊符號

在web.config做參數設定時遇到特殊字元 value="http://www.yahoo.com.tw/default.aspx?sid=111111111&uid=test"
&uid這地方會出錯...換成&amp;uid 就OK了~~
幾個
對照如下:
< 小於
&lt;
> 大於
&gt;
&
&amp ......

有反型java 对象转到xml xstream方式

package com.jcauto.action;
import java.util.ArrayList;
import java.util.List;
public class ContentRsp {

private String resultCode;

List<ContentInfo> contentList = new ArrayList<ContentInfo>();

public void addContent(ContentInfo contentInfo) {
contentList.add(contentI ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号