- 浏览: 404595 次
- 性别:
- 来自: 北京
文章分类
- 全部博客 (325)
- 数据中台 (15)
- 设计模式 (7)
- 数据结构 (4)
- JavaScript (51)
- 网页设计与制作 (7)
- Flex (4)
- Fckeditor (7)
- Struts (12)
- Spring (19)
- Hibernate (14)
- EJB3.0 (19)
- Java EE 6 (2)
- JSP (22)
- 辅助框架 (9)
- WebService (1)
- XML (8)
- 正则表达式 (5)
- 并发(多线程) (2)
- Java网络 (10)
- 开发工具 (25)
- Oracle (15)
- MySQL (8)
- Git (4)
- SQL Server (2)
- C# (9)
- php (14)
- asp (2)
- ColdFusion (5)
- Tex (1)
- 云游戏 (1)
最新评论
-
CSDNBenbenChong:
...
SQL里desc和asc是什么意思 -
雪狐一号:
非常好 顶一个
SQL里desc和asc是什么意思 -
boyleichinasoft:
thinking...
该如何去使用设计模式呢? -
nforce_com:
写的很好,学习了!不过Student 一般情况下不会删除所有 ...
JPA多对多 -
TaoistWar:
那是FCKEditor的,详细信息只能查看官方文档,或者直接看 ...
1.fckeditor-java-2.5给上传图片添加水印
Spring的普通属性注入
参见Spring文档3.3.3
什么叫属性编辑器呢?
* 自定义属性编辑器,是将Spring配置文件中的字符串转换成相应的对象注入,
Spring已经内置了许多类型编辑器,我们可以定义自己的属性编辑器
如何定义属性编辑器?
* 继承PropertyEditorSupport类,覆写setAsText()方法,参见UtilDatePropertyEditor.java
* 将属性编辑器注册到Spring中,参见applicationContext-editor.xml
=======================================================================
Bean1.java
package com.bjsxt.spring;
import java.util.Date;
import java.util.List;
import java.util.Map;
import java.util.Set;
public class Bean1 {
private String strValue;
private int intValue;
private List listValue;
private Set setValue;
private String[] arrayValue;
private Map map;
private Date dateValue;
public String[] getArrayValue() {
return arrayValue;
}
public void setArrayValue(String[] arrayValue) {
this.arrayValue = arrayValue;
}
public int getIntValue() {
return intValue;
}
public void setIntValue(int intValue) {
this.intValue = intValue;
}
public List getListValue() {
return listValue;
}
public void setListValue(List listValue) {
this.listValue = listValue;
}
public Map getMap() {
return map;
}
public void setMap(Map map) {
this.map = map;
}
public Set getSetValue() {
return setValue;
}
public void setSetValue(Set setValue) {
this.setValue = setValue;
}
public String getStrValue() {
return strValue;
}
public void setStrValue(String strValue) {
this.strValue = strValue;
}
public Date getDateValue() {
return dateValue;
}
public void setDateValue(Date dateValue) {
this.dateValue = dateValue;
}
}
=======================================================================
UtilDatePropertyEditor.java
package com.bjsxt.spring;
import java.beans.PropertyEditorSupport;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;
public class UtilDatePropertyEditor extends PropertyEditorSupport{
private String format;
public void setAsText(String text) throws IllegalArgumentException {
System.out.println("UtilDatePropertyEditor.setAsText()-- text = " + text);
SimpleDateFormat sdf = new SimpleDateFormat(format);
try {
Date date = sdf.parse(text);
this.setValue(date);
} catch (ParseException e) {
e.printStackTrace();
}
}
public void setFormat(String format) {
this.format = format;
}
}
=======================================================================
applicationContext-beans.xml
<?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:aop="http://www.springframework.org/schema/aop"
xmlns:tx="http://www.springframework.org/schema/tx"
xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.0.xsd
http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop-2.0.xsd
http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-2.0.xsd">
<bean id="Bean1" class="com.bjsxt.spring.Bean1">
<property name="strValue" value="Hello"></property>
<property name="intValue" value="123"></property>
<property name="listValue">
<list>
<value>List1</value>
<value>List2</value>
<value>List3</value>
<value>List4</value>
</list>
</property>
<property name="setValue">
<set>
<value>set1</value>
<value>set2</value>
<value>set3</value>
<value>set4</value>
</set>
</property>
<property name="arrayValue">
<list>
<value>array1</value>
<value>array2</value>
<value>array3</value>
<value>array4</value>
</list>
</property>
<property name="map">
<map>
<entry key="key1" value="value1"></entry>
<entry key="key2" value="value2"></entry>
<entry key="key3" value="value3"></entry>
<entry key="key4" value="value4"></entry>
</map>
</property>
<property name="dateValue">
<value>2008-08-08</value>
</property>
</bean>
</beans>
=======================================================================
applicationContext-editor.xml
<?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:aop="http://www.springframework.org/schema/aop"
xmlns:tx="http://www.springframework.org/schema/tx"
xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.0.xsd
http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop-2.0.xsd
http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-2.0.xsd">
<!-- -->
<bean id="CustomEditorConfigurer"
class="org.springframework.beans.factory.config.CustomEditorConfigurer">
<property name="customEditors">
<map>
<entry key="java.util.Date">
<bean class="com.bjsxt.spring.UtilDatePropertyEditor">
<property name="format" value="yyyy-MM-dd"></property>
</bean>
</entry>
</map>
</property>
</bean>
</beans>
=======================================================================
InjectionTest.java
package com.bjsxt.spring;
import junit.framework.TestCase;
import org.springframework.beans.factory.BeanFactory;
import org.springframework.context.support.ClassPathXmlApplicationContext;
public class InjectionTest extends TestCase {
public void testInjection1() {
// 通过多个配置文件初始化bean工厂
// String[] array = new String[]{"applicationContext-beans.xml"};
// BeanFactory factory = new ClassPathXmlApplicationContext(array);
// 通过配置文件初始化bean工厂
BeanFactory factory = new ClassPathXmlApplicationContext(
"applicationContext-*.xml");
Bean1 bean1 = (Bean1) factory.getBean("Bean1");
System.out.println("strValue " + bean1.getStrValue());
System.out.println("intValue " + bean1.getIntValue());
System.out.println("listValue " + bean1.getListValue());
System.out.println("setValue " + bean1.getSetValue());
System.out.println("arrayValue " + bean1.getArrayValue());
System.out.println("mapValue " + bean1.getMap());
System.out.println("dateValue " + bean1.getDateValue());
}
}
- spring_injection.rar (2.7 MB)
- 下载次数: 7
发表评论
-
Spring基于注解形式的AOP
2010-01-19 17:17 9291.定义切面、通知、切入点 接口: packa ... -
spring自定义属性编辑器
2010-01-18 13:13 776属性编辑器,是将spring配置文件中的字符串转换成 ... -
Acegi
2009-11-08 22:43 707http://www.springside.org.cn/do ... -
1.Spring环境的搭建
2009-09-29 08:32 11681.所需jar包 Spring jar(10): spr ... -
Struts2+ Spring + Hibernate + Dwr + JBPM整合
2009-08-21 13:20 1264一、配置web.xml <?xml version=& ... -
Spring的定时调度--Quartz
2009-06-03 17:40 2299Quartz是一个强大的企业级任务调度框架,Spri ... -
Spring2.5 + JPA(Hibernate)实现
2009-04-14 01:00 40911.JPA的实现框架 使用MyEclips ... -
关于spring声明式事务配置方法
2009-02-06 00:48 3054对于spring的声明式事务的配置的使用常用的 ... -
spring声明式事务配置方法(六):aop:config切入
2009-02-06 00:32 8174<?xml version="1.0" ... -
spring声明式事务配置方法(五):DefaultAdvisorAutoProxyCreator
2009-02-06 00:31 1074<?xml version="1.0" ... -
spring声明式事务配置方法(四):BeanNameAutoProxyCreator注入Bean
2009-02-06 00:28 3348<?xml version="1.0" ... -
spring声明式事务配置方法(三):TransactionProxyFactoryBean继承方式
2009-02-06 00:27 1234<?xml version="1.0" ... -
spring声明式事务配置方法(二):TransactionProxyFactoryBean方式
2009-02-06 00:25 1065<?xml version="1.0" ... -
spring声明式事务配置方法(-):TransactionProxyFactoryBean方式
2009-02-06 00:24 1426<?xml version="1.0" ... -
Spring如何在jsp页面中获取Bean!
2009-02-03 19:03 1948在这几天做一个类似asp的标签功能,用了以前JUn ... -
定时调度
2008-12-19 11:26 738<!-- 自动生成autoCreatesiteMap - ... -
1.spring_whyspring
2008-10-10 17:20 590Spring出现以前的软件开发状态。 -
2.spring_beginning
2008-10-10 11:51 6251.Spring依赖库 * SPRING_HOME/dist/ ...
相关推荐
在Java开发领域,Spring框架无疑是最重要的依赖注入(Dependency Injection,简称DI)和面向切面编程(Aspect-Oriented Programming,简称AOP)框架之一。而`org.springframework.context`包是Spring框架的核心部分...
3. **数据访问集成(Data Access Integration)**:Spring支持多种数据访问技术,包括JDBC、ORM框架(如Hibernate和MyBatis),提供了事务管理、数据源连接池等功能,方便数据库操作。 4. **MVC框架**:Spring MVC...
《Spring in Action 第5版》是关于Spring框架的一本权威指南,由Manning出版社出版,主要聚焦于Spring框架的最新版本及其在实际开发中的应用。"Spring Action"这个标签突出了本书的核心内容,即如何实战操作Spring...
**Spring** 框架是Java企业级应用的核心,它提供了全面的依赖注入(DI,Dependency Injection)和面向切面编程(AOP,Aspect-Oriented Programming)支持。Spring不仅包括了数据访问、事务管理、远程服务等功能,还...
Spring以其依赖注入(Dependency Injection,DI)和面向切面编程(Aspect-Oriented Programming,AOP)的核心特性而著名,这使得代码更加模块化和易于管理。 在MVC模式中,Spring扮演着控制器的角色,连接模型和...
首先,Spring框架是Java开发中的核心组件,它提供了依赖注入(Dependency Injection,DI)和面向切面编程(Aspect-Oriented Programming,AOP)等特性,使得开发者可以更加灵活地管理和组织代码。在本项目中,Spring...
在Spring框架中,IOC主要体现在两个方面:依赖注入(Dependency Injection,简称DI)和Bean工厂。依赖注入是IOC的核心,它允许我们不通过硬编码的方式来指定对象之间的依赖关系,而是通过配置文件或注解来声明这些...
它支持依赖注入(Dependency Injection, DI),面向切面编程(Aspect-Oriented Programming, AOP),以及模型-视图-控制器(Model-View-Controller, MVC)等设计模式。Spring框架的核心特性可以用来构建任何Java应用...
2. **Spring框架**:Spring是一个全面的企业级应用框架,提供了DI(Dependency Injection)和AOP(Aspect-Oriented Programming)功能。DI允许开发者解耦组件,提高代码的可测试性和灵活性;AOP则允许定义横切关注点...
**Spring框架** 是一个全面的企业级应用开发框架,提供依赖注入(Dependency Injection,DI)和面向切面编程(Aspect-Oriented Programming,AOP),简化了Java应用的开发。Spring的核心是IoC容器,它负责创建对象、...
Spring框架是Java企业级应用的核心框架之一,它倡导DI(Dependency Injection)和AOP(Aspect-Oriented Programming)理念,为开发提供了一种松耦合的方式。Spring的IoC容器管理对象的生命周期和依赖关系,而Spring ...
2. **依赖注入(Dependency Injection, DI)** - Spring的核心特性之一就是DI,它允许开发者声明性地管理对象及其依赖关系,无需硬编码依赖。 - 在宠物商店项目中,可以看到服务类(如PetService)和DAO(如PetDAO...
标题中的"Spring_0300_IOC_Injection_Type"指的是Spring框架中的依赖注入(Dependency Injection,简称DI)机制,特别是关于类型注入(Type Injection)的知识点。在Spring框架中,依赖注入是核心特性之一,它使得...
标题“spring_injection1”可能指的是Spring框架中的依赖注入(Dependency Injection,简称DI)概念的讲解,这在Spring框架中是核心特性之一。这个压缩包可能包含了一些关于Spring DI的源代码示例或者教程文档。 ...
Spring的核心特性包括依赖注入(Dependency Injection,DI)和面向切面编程(Aspect-Oriented Programming,AOP)。依赖注入使得对象之间的关系在运行时动态管理,降低了代码的耦合度。而AOP则允许开发者定义“切面...
首先,我们要理解Spring的核心设计思想——依赖注入(Dependency Injection,DI)。Spring通过DI实现了组件之间的松耦合,使得代码更易于测试和维护。在5.1.x版本中,Spring对DI机制进行了优化,提供了更加灵活的...
Spring以其依赖注入(Dependency Injection, DI)和面向切面编程(Aspect-Oriented Programming, AOP)而闻名,它简化了组件的装配和管理,降低了系统的耦合度。在SSH CRM中,Spring将负责处理事务管理、数据访问层...
Spring的核心特性包括依赖注入(Dependency Injection, DI)、面向切面编程(Aspect-Oriented Programming, AOP)以及对各种数据库访问技术的支持。`org.springframework.core.jar`作为Spring框架的基础,扮演着至关...
dependency injection AOP的概念与好处 Spring简介 Spring应用IOC/DI(重要) xml annotation Spring应用AOP(重要) xml annotation Struts2.1.6 + Spring2.5.6 + Hibernate3.3.2整合(重要) ...