Spring 2.0的新标签----util实例

xiaoxiao2021-03-01  4

Spring 2.0的新标签----util实例

 经验技巧之Spring  

一个测试Bean:

 

package  util; public   class  TestBean  {   private Integer co;public Integer getCo() {    return co;}public void setCo(Integer co) {    this.co = co;}}

 一个测试属性文件config.properties

prop1=propValue1prop2=propValue2

配置文件:

<?xml version="1.0" encoding="UTF-8"?><beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:util="http://www.springframework.org/schema/util" xsi:schemaLocation="http://www.springframework.org/schema/beans                      http://www.springframework.org/schema/beans/spring-beans-2.0.xsd                     http://www.springframework.org/schema/util                     http://www.springframework.org/schema/util/spring-util-2.0.xsd">

<bean id="test" class="util.Test">   <property name="list" ref="list">   </property>    <property name="map" ref="map">   </property>    <property name="properties" ref="properties">   </property>    <property name="array" ref="array">   </property>    <property name="set" ref="set">   </property>   <property name="constantValue" ref="constantValue">   </property>

</bean>

<util:list id="list" list-class="java.util.ArrayList">  <value>listValue1</value>  <value>listValue2</value></util:list>

<util:map id="map">  <entry key="key1"  value="mapValue1"></entry>  <entry key="key12" value="mapValue2"></entry></util:map>

<util:set id="set" set-class="java.util.TreeSet">  <value>setValue1</value>  <value>setValue2</value></util:set>

<util:properties id="properties" location="classpath:/util/config.properties"></util:properties>

<util:list id="array">  <value>arrayValue1</value>  <value>arrayValue2</value></util:list><!-- 定义常量 --><util:constant id="constantValue" static-field="java.sql.Connection.TRANSACTION_SERIALIZABLE"/>

<!-- 为bean属性成员定义id,供其他bean引用,但自身属性不能使用,只能用在其他的bean上 -->

<util:property-path id="source" path="test.constantValue"/><bean id="testBean" class="util.TestBean">  <property name="co">    <ref bean="source"/>  </property></bean>

</beans>

测试程序:

package util;

import java.util.Enumeration;import java.util.Iterator;import java.util.List;import java.util.Map;import java.util.Properties;import java.util.Set;

import org.springframework.context.ApplicationContext;import org.springframework.context.support.ClassPathXmlApplicationContext;

 

public class Test {    private List list;    private Map map;    private String[] array;    private Set set;    private Properties properties;    private Integer constantValue;

 public Integer getConstantValue() {  return constantValue; } public void setConstantValue(Integer constantValue) {  this.constantValue = constantValue; } public List getList() {  return list; } public void setList(List list) {  this.list = list; } public Map getMap() {  return map; } public void setMap(Map map) {  this.map = map; } public String[] getArray() {  return array; } public void setArray(String[] array) {  this.array = array; } public Set getSet() {  return set; } public void setSet(Set set) {  this.set = set; } public Properties getProperties() {  return properties; } public void setProperties(Properties properties) {  this.properties = properties; } public static void main(String[] args) {            ApplicationContext ctx=new ClassPathXmlApplicationContext("util/applicationContext.xml");           Test t=(Test)ctx.getBean("test");           t.printArray(t.getArray());           t.printList(t.getList());           t.printMap(t.getMap());           t.printSet(t.getSet());           t.printProperties(t.getProperties());              System.out.println(t.getConstantValue());                      TestBean tb=(TestBean)ctx.getBean("testBean");           System.out.println("use util:property-path:"+tb.getCo());

 } public void printList(List result){  System.out.println("list value:");  for (Iterator iterator = result.iterator(); iterator.hasNext();) {   String element = (String) iterator.next();   System.out.println(element);  } } public void printMap(Map result){  System.out.println("map value:");  for (Iterator iterator = result.keySet().iterator(); iterator.hasNext();) {   String element = (String) iterator.next();   System.out.println(element);  } } public void printSet(Set result){  System.out.println("set value:");  for (Iterator iterator = result.iterator(); iterator.hasNext();) {   String element = (String) iterator.next();   System.out.println(element);  } } public void printArray(String[] result){  System.out.println("array value:");  for (int i = 0; i < result.length; i++) {   System.out.println(result[i]);  } } public void printProperties(Properties result){

  System.out.println("properties value:");  Enumeration enu2=result.propertyNames();  while(enu2.hasMoreElements()){      String key = (String)enu2.nextElement();      System.out.println(key);  }

 }

}

测试结果:

array value:arrayValue1arrayValue2list value:listValue1listValue2map value:key1key12set value:setValue1setValue2properties value:prop2prop18use util:property-path:8

转载请注明原文地址: https://www.6miu.com/read-3650294.html

最新回复(0)