spring的PathMatchingResourcePatternResolver基于ant通配符匹配路径遍历项目所有xml文件

【1】代码 

public class MybatisTest9_spring {
	
	/**
	 * 遍历所有xml文件 
	 */
	@Test 
	public void dom4j_test2() {  
		System.out.println("dom4j_test2"); 
		ResourcePatternResolver loader = new PathMatchingResourcePatternResolver();
		try {
			Resource[] resources = loader.getResources("classpath*:com/swjtu/mybatis/**/*.mapper.xml");
			for (Resource r : resources) { 
				System.out.println(r.getFilename()); 
				Document doc = Dom4jUtil.load(r.getInputStream());
				/* 获取根节点 */
				Element root = doc.getRootElement();
				/* 遍历  */
				for (Iterator<Element> it = root.elementIterator(); it.hasNext();) {
					Element e = it.next();
					System.out.println(e.getText()); 
					/**
						SELECT id AS ID 
						       , last_name AS LASTNAME
						       , email AS EMAIL 
						       , gender AS GENDER
						  FROM emp_tbl 
						 WHERE id = #{ID}
					 */
				} 
			}
		} catch (IOException e) { 
			e.printStackTrace();
		}
	}
}
package com.swjtu.mybatis.test;

import java.io.File;
import java.io.InputStream;

import org.dom4j.Document;
import org.dom4j.io.SAXReader;

public class Dom4jUtil {
	
	public static Document load(String fileName) {
		Document doc = null;
		try {
			SAXReader reader = new SAXReader();
			doc = reader.read(new File(fileName));
		} catch(Exception e) {
			e.printStackTrace();
		}
		return doc;
	}
	
	public static Document load(InputStream input) {
		Document doc = null;
		try {
			SAXReader reader = new SAXReader();
			doc = reader.read(input);
		} catch(Exception e) {
			e.printStackTrace();
		}
		return doc;
	}
}

【2】打印结果

dom4j_test2
ERROR StatusLogger No Log4j 2 configuration file found. Using default configuration (logging only errors to the console), or user programmatically provided configurations. Set system property 'log4j2.debug' to show Log4j 2 internal initialization logging. See https://logging.apache.org/log4j/2.x/manual/configuration.html for instructions on how to configure Log4j 2
employee.mapper.xml

		SELECT id AS ID
		       , last_name AS LASTNAME
		       , email AS EMAIL
		       , gender AS GENDER
		  FROM emp_tbl 
		 WHERE id = #{ID}
	

		update emp_tbl
		   set id = #{ID}
		       , last_name = #{LASTNAME}
		       , email = #{EMAIL}
		       , gender = #{GENDER}
		 WHERE id = #{ID} 
	
zhangsan.mapper.xml

		SELECT id AS ID
		       , last_name AS LASTNAME
		       , email AS EMAIL
		       , gender AS GENDER
		  FROM emp_tbl 
		 WHERE id = #{ID}
	

		update emp_tbl
		   set id = #{ID}
		       , last_name = #{LASTNAME}
		       , email = #{EMAIL}
		       , gender = #{GENDER}
		 WHERE id = #{ID} 
	

 

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值