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框架的aop(详解Spring框架aop)
-
ASP.NET MVC4+EF5+EasyUI+Unity2.x注入的后台管理系统之前端页面框架构建源码分享
-
Spring Boot集成Quartz注入Spring管理的类的方法
-
详解 Spring注解的(List&Map)特殊注入功能
-
JSP 开发之servlet中调用注入spring管理的dao
-
对于ThinkPHP框架早期版本的一个SQL注入漏洞详细分析
-
因Spring AOP导致@Autowired依赖注入失败的解决方法
-
什么是spring框架的aop(spring中aop的概念)
-
Spring学习之依赖注入的方法(三种)
-
浅析依赖注入框架Autofac的使用