Spring实战之使用Resource作为属性操作示例
人气:0本文实例讲述了Spring实战之使用Resource作为属性操作。分享给大家供大家参考,具体如下:
一 配置文件
<?xml version="1.0" encoding="GBK"?> <beans xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://www.springframework.org/schema/beans" xmlns:p="http://www.springframework.org/schema/p" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-4.0.xsd"> <bean id="test" class="org.crazyit.app.service.TestBean" p:res="classpath:book.xml"/> </beans>
二 属性文件
<?xml version="1.0" encoding="GBK"?> <计算机书籍列表> <书> <书名>疯狂Java讲义</书名> <作者>李刚</作者> </书> <书> <书名>轻量级Java EE企业应用实战</书名> <作者>李刚</作者> </书> </计算机书籍列表>
三 Bean
package org.crazyit.app.service; import org.springframework.core.io.Resource; import org.dom4j.io.*; import org.dom4j.*; import java.util.*; public class TestBean { private Resource res; // res的setter方法 public void setRes(Resource res) { this.res = res; } public void parse()throws Exception { // 获取该资源的简单信息 System.out.println(res.getFilename()); System.out.println(res.getDescription()); // 创建基于SAX的dom4j的解析器 SAXReader reader = new SAXReader(); Document doc = reader.read(res.getFile()); // 获取根元素 Element el = doc.getRootElement(); List l = el.elements(); // 遍历根元素的全部子元素 for (Iterator it = l.iterator();it.hasNext() ; ) { // 每个节点都是<书>节点 Element book = (Element)it.next(); List ll = book.elements(); // 遍历<书>节点的全部子节点 for (Iterator it2 = ll.iterator();it2.hasNext() ; ) { Element eee = (Element)it2.next(); System.out.println(eee.getText()); } } } }
四 测试类
package lee; import org.springframework.context.*; import org.springframework.context.support.*; import org.springframework.core.io.*; import org.crazyit.app.service.*; public class SpringTest { public static void main(String[] args) throws Exception { ApplicationContext ctx = new ClassPathXmlApplicationContext("beans.xml"); TestBean tb = ctx.getBean("test" , TestBean.class); tb.parse(); } }
五 测试结果
book.xml
class path resource [book.xml]
疯狂Java讲义
李刚
轻量级Java EE企业应用实战
李刚
希望本文所述对大家java程序设计有所帮助。
您可能感兴趣的文章:
- Spring实战之ResourceLoaderAware加载资源用法示例
- Spring实战之ResourceLoader接口资源加载用法示例
- Spring实战之ServletContextResource访问资源文件示例
- Spring实战之FileSystemResource加载资源文件示例
- Spring实战之使用ClassPathResource加载xml资源示例
- Spring实战之使用@Resource配置依赖操作示例
- Spring 中 @Service 和 @Resource 注解的区别
- Spring框架中 @Autowired 和 @Resource 注解的区别
- 详解Spring注解--@Autowired、@Resource和@Service
- Springboot项目打war包docker包找不到resource下静态资源的解决方案
- 详解SpringBoot开发使用@ImportResource注解影响拦截器
加载全部内容