1. 程式人生 > 程式設計 >Spring實戰之使用Resource作為屬性操作示例

Spring實戰之使用Resource作為屬性操作示例

本文例項講述了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框架入門與進階教程》、《Java資料結構與演算法教程》、《Java操作DOM節點技巧總結》、《Java檔案與目錄操作技巧彙總》和《Java快取操作技巧彙總》

希望本文所述對大家java程式設計有所幫助。