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

原创 2007年09月26日 23:36:00

一个测试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=propValue1
prop2=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:
arrayValue1
arrayValue2
list value:
listValue1
listValue2
map value:
key1
key12
set value:
setValue1
setValue2
properties value:
prop2
prop1
8
use util:property-path:8

Spring配置中使用util标签

需要在applicationContext.xml文件中的开头部分加入以下描述:xmlns:util="http://www.springframework.org/schema/util",并在xs...
  • lzghxjt
  • lzghxjt
  • 2016年07月10日 10:39
  • 5698

Spring依赖注入 — util命名空间配置

要使用标签,必须在XML中加入util名称空间(namespace): xmlns:util="http://http://www.springframework.org/sch...
  • u012045597
  • u012045597
  • 2013年10月18日 14:57
  • 18417

Spring使用util Schema

spring-beans-3.0.xsd是Spring的内核,其它的Schema大多都用于简化某些方面的配置
  • u014470581
  • u014470581
  • 2016年03月12日 18:39
  • 2271

Spring的util标签的使用

探索命名空间 首先在spring的配置文件中添加 Xml代码 xmlns="http://www.springframework.org/schema/beans" xml...
  • fygkchina
  • fygkchina
  • 2015年04月23日 09:11
  • 2654

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

一个测试Bean: package util;public class TestBean ...{   private Integer co;public Integer getCo() ...{  ...
  • daryl715
  • daryl715
  • 2007年09月26日 23:36
  • 8283

Spring2.0配置文件加载util标签的Schema

Spring2.0的配置文件已经是基于XML Schema的了,如果我们需要使用2.0新增的util标签,则需要进行如下的schema配置  xmlns="http://www.springframe...
  • daryl715
  • daryl715
  • 2007年09月26日 15:24
  • 2408

spring 3.1.13中新增的util @value注解,给类或方法注入值

在spring 3.0中,可以通过使用@value,对一些如xxx.properties文件  中的文件,进行键值对的注入,例子如下:  1 首先在applicationContext.xml...
  • qing419925094
  • qing419925094
  • 2014年09月26日 11:46
  • 3097

spring boot 2.0 半月的实战_阶段性总结1

springboot2.0 是包含并基于spring 5 的,而且M7相对于M2也有很不小的改变 freemarker的使用过程中,也有不小的挑战,因为资料也不算特别多,而且对freemar...
  • freexyxyz
  • freexyxyz
  • 2018年01月08日 15:27
  • 365

org.springframework.web.util.IntrospectorCleanupListener作用

spring中提供了一个名为org.springframework.web.util.IntrospectorCleanupListener的监听器。它主要负责处理由JavaBeans Introsp...
  • jintianhen1
  • jintianhen1
  • 2013年11月17日 09:54
  • 916

springmvc常用注解标签详解

1、@Controller 在SpringMVC 中,控制器Controller 负责处理由DispatcherServlet 分发的请求,它把用户请求的数据经过业务处理层处理之后封装成一个Mo...
  • qq_1017097573
  • qq_1017097573
  • 2017年04月19日 12:08
  • 379
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:Spring 2.0的新标签----util实例
举报原因:
原因补充:

(最多只允许输入30个字)