欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

spring框架各个数据类型的注入

程序员文章站 2022-07-12 16:07:29
...

demo

一个实体类(包含:int,String,数组,List集合,Set,Map,Properties,Date ):

//记得给上对应的get set方法,我在此省略了
public class People {
	private int pid; 
	private String pname;
	private String[] loves;
	private List<String> list;
	private Set<String> set;
	private Map<String,String> map; 
	private Properties pros;// Properties 外部文件资源
	private Date birthday;  //时间
	}

对应的applicationContext.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:p="http://www.springframework.org/schema/p"
	xsi:schemaLocation="http://www.springframework.org/schema/beans 
	http://www.springframework.org/schema/beans/spring-beans-3.0.xsd">
	
	<bean id="p" class="demo01.People"> //class对应的是实体类的地址也称全限定名
		<property name="pid" value="110"></property>
		<property name="pname" value="张三"></property>
		<property name="loves">
			<list>
				<value>足球</value>
				<value>篮球</value>
			</list>
		</property>
		<property name="list">
			<list>
				<value>list01</value>
				<value>list02</value>
			</list>
		</property>
		<property name="set">
			<set>
				<value>set01</value>
				<value>set02</value>
			</set>
		</property>
		<property name="map">
			<map>
				<entry key="map01">
					<value>map零妖</value>
				</entry>
				<entry key="map02" value="map零而"/>
			</map>
		</property>
		<property name="pros">
			<props>
				<prop key="pros01">pros01数据1</prop>
				<prop key="pros02">pros01数据2</prop>
			</props>
		</property>
	
		//date数据类型的注入方式分三种:
		// 第一种方式  参数内部就是一个 bean class指向引入的类
		 <property name="birthday">
			<bean class="java.util.Date"></bean>
		</property> 
		
		//第二种方式 参数 引入一个 外部 bean 使用 ref 链接
		<property name="birthday" ref="time"></property>
		<bean id="time" class="java.util.Date"></bean>
		
		//第三种  给一个参数   字符串 日期 转换为 Date 类型
		<property name="birthday" ref="date"></property>
	</bean>
	<bean id="date" class="java.util.Date" factory-bean="sdf" factory-method="parse">
	<constructor-arg value="1990-09-09"></constructor-arg>
	</bean>
	// constructor-arg  调用 构造方法
	<bean id="sdf" class="java.text.SimpleDateFormat">
		<constructor-arg value="yyyy-MM-dd"></constructor-arg>	
		
</beans>

text类 测试一下显示:

		ApplicationContext ac = new ClassPathXmlApplicationContext("applicationContext.xml");
		People p =(People)ac.getBean("p");
		System.out.println(p.getPid());
		System.out.println(p.getPanme());
		System.out.println(Arrays.toString(p.getLoves()));
		List<String> list =p.getList();
		for(String s:list){
			System.out.println(s);
		}
		System.out.println("-----------");
		Set<String> set = p.getSet();
		Iterator<String> itset=set.iterator();
		while(itset.hasNext()){
			System.out.println(itset.next());
		}
		System.out.println("=====================");
		Map<String,String> map =p.getMap();
		Set<String> keySet =map.keySet();
		Iterator<String> itkeys=keySet.iterator();
		while(itkeys.hasNext()){
			String key = itkeys.next();
			System.out.println(key+"=="+map.get(key));
		}
		
		System.out.println("=====================");
		Properties pros =p.getPros();
		System.out.println(pros.getProperty("pros01"));
		System.out.println(pros.getProperty("pros02"));

		System.out.println(p.getBirthday());
相关标签: 笔记 spring