本篇文章给大家分享的是有关怎么在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();
}
}
以上就是怎么在Spring中使用Resource操作属性示例,小编相信有部分知识点可能是我们日常工作会见到或用到的。希望你能通过这篇文章学到更多知识。更多详情敬请关注亿速云行业资讯频道。
亿速云「云服务器」,即开即用、新一代英特尔至强铂金CPU、三副本存储NVMe SSD云盘,价格低至29元/月。点击查看>>
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。