Spring---->属性的注入

一、普通属性的注入


  
  
   
    123
   
   
    
     list1
     list2
    
   
   
    
     set1
     set2
    
   
   
    
     array1
     array2
    
   
   
    
     
     
    
   
 

二、自定义属性编辑器

1、什么是属性编辑器,作用?
自定义属性编辑器,spring配置文件中的字符串转换成相应的对象进行注入。
spring已经有内置的属性编辑器,我们可以根据需求自己定义属性编辑器。

2、 如何定义属性编辑器?
继承PropertyEditorSupport类,覆写setAsText()方法。

例子:自定义属性编辑器,将日期字符串转换成java.util.Date对象,注入到bean中。


		
			2008-12-14
		
	

UtilDatePropertyEditor.java

package com.ncepu.spring;

import java.beans.PropertyEditorSupport;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;

import org.omg.CORBA.PRIVATE_MEMBER;

public class UtilDatePropertyEditor extends PropertyEditorSupport {

 private String format;
	@Override
	public void setAsText(String text) throws IllegalArgumentException {
		
		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;
	}

}

将属性编辑器注册到spring配置文件中


		
			
				
					
						
					
				
			
		

	

三、公共属性的注入

1、解决配置量大的问题

分文件factory = new ClassPathXmlApplicationContext("applicationContext-*.xml");

将公共的注入提取出来
 --通过标签定义公共的属性,指定abstract=true
 --具有相同属性的类在标签中指定其parent属性

比如bean2中有id,name,password,email四个属性,bean3中有id,name,password,telephone四个属性,它们有公共属性id,name,password。


		
		
		
	

	
		
	

	
		
	


    
  
   

 

转载于:https://my.oschina.net/wangshengzhuang/blog/785196

你可能感兴趣的:(java)