`

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

阅读更多
 

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=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

  • 大小: 112.9 KB
分享到:
评论

相关推荐

    ActiveMQ与Spring线程池整合实例

    ActiveMQ与Spring线程池整合的一个实例。 lib库没有上传。 对于实例的讲解,在竹子的论坛有我对这个实例的帖子(http://www.java2000.net/viewthread.jsp?tid=1167) lib中包含: apache-activemq-4.1.1.jar ...

    spring-hibernate-dwr实例

    spring-hibernate-dwr做的AJAX操作CRUD实例 环境:myeclipse6.0+jdk1.6 所需lib列表,请自行加入 mysql-connector-java-3.1.7-bin.jar antlr-2.7.6rc1.jar asm-attrs.jar cglib-2.1.3.jar ...

    Spring 2.0 开发参考手册

    2. Spring 2.0 的新特性 2.1. 简介 2.2. 控制反转(IoC)容器 2.2.1. 更简单的XML配置 2.2.2. 新的bean作用域 2.2.3. 可扩展的XML编写 2.3. 面向切面编程(AOP) 2.3.1. 更加简单的AOP XML配置 2.3.2. 对@...

    spring-data-hadoop-1.0.1.RELEASE.zip

    它支持通过Spring的依赖注入来管理Hadoop的客户端实例,允许开发者通过声明式的方式定义MapReduce作业,极大地提高了开发效率和代码可维护性。此外,它还提供了对Hadoop生态系统其他组件如YARN、Hive、Pig等的集成,...

    Spring-Reference_zh_CN(Spring中文参考手册)

    2. Spring 2.0 的新特性 2.1. 简介 2.2. 控制反转(IoC)容器 2.2.1. 更简单的XML配置 2.2.2. 新的bean作用域 2.2.3. 可扩展的XML编写 2.3. 面向切面编程(AOP) 2.3.1. 更加简单的AOP XML配置 2.3.2. 对@AspectJ 切面的...

    spring+struts+hibernate+dwr+jstl做的实例

    以用户管理为例,结合spring struts hibernate dwr jstl做的实例,struts hibernate dwr 与Spring完全结合,实现用户列表、信息增、删、改、查、维护时用户重名提示等功能,还包括页面自动转码设置(web.xml),...

    spring chm文档

    2. Spring 2.0 的新特性 2.1. 简介 2.2. 控制反转(IoC)容器 2.2.1. 更简单的XML配置 2.2.2. 新的bean作用域 2.2.3. 可扩展的XML编写 2.3. 面向切面编程(AOP) 2.3.1. 更加简单的AOP XML配置 2.3.2. 对@...

    Struts2.1.6+Spring2.5.6+Hibernate3.3.1全注解实例详解(一)

    Spring2.5.6中,为了防止报错,需包含backport-util-concurrent.jar,但使用分类jar包时可省略。同时,由于使用了基于slf4j的日志接口,需要确保包含相应的日志实现库。 3. **Hibernate**:使用Hibernate3.3.1,...

    Spring+Ibatis集成开发实例.doc

    在Spring和iBatis的集成开发中,我们通常利用Spring的IoC(Inversion of Control,控制反转)和AOP(Aspect Oriented Programming,面向切面编程)特性,结合iBatis的简单灵活的SQL映射功能,实现数据访问层的高效...

    学习Acegi-认证 文档

    - `spring2.0.jar` - `commons-codec-1.3.jar` 此外,还需要对项目的`web.xml`文件进行配置,以支持Acegi的过滤器链代理。下面是一段配置示例: ```xml &lt;web-app&gt; &lt;!-- 定义应用的上下文参数 --&gt; &lt;context-param...

    Spring API

    2. Spring 2.0和 2.5的新特性 2.1. 简介 2.2. 控制反转(IoC)容器 2.2.1. 新的bean作用域 2.2.2. 更简单的XML配置 2.2.3. 可扩展的XML编写 2.2.4. Annotation(注解)驱动配置 2.2.5. 在classpath中自动搜索组件...

    struts2.3+spring4.1+mybatis3.2.docx

    ### Struts2.3 + Spring4.1 + MyBatis3.2 整合实践 在Java Web开发领域,Struts2、Spring 和 MyBatis 是三个非常流行的开源框架,它们各自解决了不同的问题:Struts2 用于MVC模式的实现;Spring 作为轻量级的IoC...

    Spring中文帮助文档

    2.5.4. Spring MVC的表单标签库 2.5.5. 对Tiles 2 支持 2.5.6. 对JSF 1.2支持 2.5.7. JAX-WS支持 2.6. 其他 2.6.1. 动态语言支持 2.6.2. 增强的测试支持 2.6.3. JMX 支持 2.6.4. 将Spring 应用程序上下文...

    activemq-rar-4.1.1.rar

    5. **backport-util-concurrent-2.1.jar**:这个库提供了Java 5的并发特性的回移植到Java 1.4及更低版本,帮助ActiveMQ在不支持新并发API的环境中运行。 6. **xbean-spring-2.8.jar**:XBean是Apache项目的一部分,...

    基于最新的Java 21和SpringBoot 3.2 根据eladmin项目进行改造+源代码+文档说明

    - 使用最新技术栈,社区资源丰富,基于Java 21(Core Module Support 17-21)、Spring Boot 3.2。 (Support Virtual Threads/fibre/loom) - 基于注解的动态查询(Specification),可根据需要扩充查询注解。 - 支持...

    使用 Spring 2.5 基于注解驱动的 Spring MVC

    自从Spring 2.0版本对Spring MVC框架进行了重大升级之后,Spring 2.5再次对该框架进行了显著改进,引入了注解驱动的功能。这使得开发人员能够更加灵活高效地构建Web应用。在Spring 2.5中,无需让Controller继承特定...

    Spring对IBatis的整合

    Spring支持IBatis的不同版本,包括1.3.x和2.0版本。这意味着开发者可以根据项目的实际需求选择合适的IBatis版本进行集成。 #### 四、异常处理 对于异常处理,Spring提供了一致性的处理方式,这使得开发者在处理...

    spring+struts+hibernate实现分页

    在配置文件中,我们可以通过Spring的 `&lt;bean&gt;` 标签声明一个SessionFactory,并注入到需要使用Hibernate操作数据库的类中。这样,我们就可以在DAO层方便地获取到一个HibernateTemplate实例,它封装了基本的CRUD操作...

Global site tag (gtag.js) - Google Analytics