Spring IOC注入(二)构造器注入
2016-07-15 14:29
465 查看
上一篇写了IOC注入方法中的set方法,这一篇就说一下基于构造器的注入~
基于构造器注入的方式: 配置<constructor-arg>元素
注意:在Bean中不用写set方法,但是要有相应的构造器
构造器注入有俩种形式 ,一个是根据参数类型 ,一个是根据参数位置的下标
1.先写Bean类-Student类:
2.根据Bean类写配置文件constructor.xml:
3.测试类ConstructionTest:
根据参数类型的构造器注入就这样讲完了,那开始讲根据参数位置的下标的构造器注入~
第二种方式:根据参数位置下标的构造器注入
只需要改变配置文件constructor.xml,代码如下:
运行效果如图:
好了,基于构造器注入的就说完了
下一篇讲一下自动注入~
ok,有问题的可以一起交流
基于构造器注入的方式: 配置<constructor-arg>元素
注意:在Bean中不用写set方法,但是要有相应的构造器
构造器注入有俩种形式 ,一个是根据参数类型 ,一个是根据参数位置的下标
<constructor-arg type="int" value=""> <constructor-arg index="0" value="">那就先开始说第一种形式:根据参数类型的构造器注入
1.先写Bean类-Student类:
public class Student { private long id; private String name; private int age; public Student(long id, String name, int age) { this.id = id; this.name = name; this.age = age; } public Student() { System.out.println("in Student()"); } }可以看到Student类中有三个数据类型~
2.根据Bean类写配置文件constructor.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:context="http://www.springframework.org/schema/context" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.2.xsd http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-3.2.xsd" > <bean name="student" class="com.x.spring.bean.Student"> <constructor-arg type="int" value="25"> </constructor-arg> <constructor-arg type="java.lang.String" value="tom"> </constructor-arg> <constructor-arg type="long" value="100"> </constructor-arg> </bean> </beans>
3.测试类ConstructionTest:
public class ConstructionTest { public static void main(String[] args) { String path = "constructor.xml"; //读取配置文件 ApplicationContext container = new ClassPathXmlApplicationContext(path); //获取对象 Student s = (Student) container.getBean("student"); System.out.println(s); System.out.println(s.getId()); System.out.println(s.getName()); System.out.println(s.getAge()); } }4.运行效果:
根据参数类型的构造器注入就这样讲完了,那开始讲根据参数位置的下标的构造器注入~
第二种方式:根据参数位置下标的构造器注入
只需要改变配置文件constructor.xml,代码如下:
<bean name="student" class="com.x.spring.bean.Student"> <constructor-arg index="2" value="20"></constructor-arg> <constructor-arg index="0" value="1001"></constructor-arg> <constructor-arg index="1" value="张三"></constructor-arg> </bean>
运行效果如图:
好了,基于构造器注入的就说完了
下一篇讲一下自动注入~
ok,有问题的可以一起交流
相关文章推荐
- 一个jar包里的网站
- 一个jar包里的网站之文件上传
- 一个jar包里的网站之返回对媒体类型
- Spring和ThreadLocal
- Spring Boot 开发微服务
- Spring AOP动态代理-切面
- Spring整合Quartz(JobDetailBean方式)
- Spring整合Quartz(JobDetailBean方式)
- 模拟Spring的简单实现
- Spring整合WebSocket应用示例(上)
- spring+html5实现安全传输随机数字密码键盘
- Spring中属性注入详解
- 监听器获取Spring配置文件的方法
- Java利用Sping框架编写RPC远程过程调用服务的教程
- springmvc 发送ajax出现中文乱码的解决方法汇总
- Spring MVC中Ajax实现二级联动的简单实例
- SpringMVC框架下JQuery传递并解析Json格式的数据是如何实现的
- 详解Java的MyBatis框架和Spring框架的整合运用
- struts2 spring整合fieldError问题