首页 > 新闻系统 > 编程天地 > 文章正文

Spring学习笔记

2007-10-25 11:50:36 来源:IT168.com 作者:ducklyl 点击:
Spring提供了一个BeanFactoryPostProcessor接口的实现类:CustomEditorConfigurer。这个类可以实现java.beans.PropertyEditor接口的类,并将字符串值转换为指定类型的对象。

  Spring提供了一个BeanFactoryPostProcessor接口的实现类:CustomEditorConfigurer。这个类可以实现java.beans.PropertyEditor接口的类,并将字符串值转换为指定类型的对象。
  通过一个简单的例子来说明。
  导入Spring所需的包:commons-logging.jar,spring.jar 。(日志包和Spring包)
  包下载地址:
http://www.blogjava.net/Files/ducklyl/Spring.rar
		
undefined undefined ( 1 )创建User 类 package com.editor; public class User { private String name; private int number; public String getName() { return name; } public void setName(String name) { this .name = name; } public int getNumber() { return number; } public void setNumber( int number) { this .number = number; } } ( 2 )创建HelloBean 类 package com.editor; public class HelloBean { private String helloWord; private User user; public String getHelloWord() { return helloWord; } public void setHelloWord(String helloWord) { this .helloWord = helloWord; } public User getUser() { return user; } public void setUser(User user) { this .user = user; } } ( 3 )创建UserEditor 类 package com.editor; import java.beans.PropertyEditorSupport; public class UserEditor extends PropertyEditorSupport{ public void setAsText(String text) { String[] strs = text.split( " , " ); int number = Integer.parseInt(strs[ 1 ]); User user = new User(); user.setName(strs[ 0 ]); user.setNumber(number); setValue(user); } } ( 4 )在类路径下创建property - config.xml <? xml version = " 1.0 " encoding = " UTF-8 " ?> <! DOCTYPE beans PUBLIC " -//SPRING//DTD BEAN//EN " " http://www.springframework.org/dtd/spring-beans.dtd " > < beans > < bean id = " EditorConfigBean " class = " org.springframework.beans.factory.config.CustomEditorConfigurer " > < property name = " customEditors " ><!-- CustomEditorConfigurer类会加载 " customEditors " 属性设定的map --> < map > < entry key = " com.editor.User " > < bean id = " userEditor " class = " com.editor.UserEditor " /> </ entry > </ map > </ property > </ bean > < bean id = " helloBean " class = " com.editor.HelloBean " > < property name = " helloWord " > < value > Hello !</ value > </ property > < property name = " user " > < value > ducklyl, 123456 </ value > </ property > </ bean > </ beans > ( 5 )创建测试类 package com.editor; import org.springframework.context. * ; import org.springframework.context.support. * ; public class SpirngTest { public static void main(String[] args) { // 读取配置文件 ApplicationContext context = new FileSystemXmlApplicationContext( " property-config.xml " ); // 获取id="helloBean"对象 HelloBean hello = (HelloBean)context.getBean( " helloBean " ); // 调用helloBean对象getHelloWord()方法 System. out .println(hello.getHelloWord()); System. out .println( " Name: " + hello.getUser().getName()); System. out .println( " Number: " + hello.getUser().getNumber()); } } 如果以上正确设置,运行结果为: Hello ! Name:ducklyl Number: 123456
原文地址
9 7 3 1 2 4 8 :

精彩推荐
焦点大图推荐
本类热门文章

论坛美图

本周软件下载排行

广告联系 | 版权说明 | 意见建议 | 加入收藏 | 军网站群 [ 军软件园 - 军软件商城 - 军软件园论坛 ]

电信与信息服务业务经营许可证:京ICP证050203