首页 > 代码库 > Spring系列【3】应用构造器注入法实现Bean的注入
Spring系列【3】应用构造器注入法实现Bean的注入
package cn.com.xf;public class User { private String name; private int age; private String remark; //省略setter/getter方法 @Override public String toString() { return "User [name=" + name + ", age=" + age + ", remark=" + remark + "]"; }}
package cn.com.xf;public class UserUtil { private User user; public User getUser() { return user; } //注意这个构造方法 public UserUtil(User u){ this.user=u; } public boolean isUser() { if (user != null) { return true; } else { return false; } }}
以下是Spring配置文件
<?xml version="1.0" encoding="UTF-8"?><beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.0.xsd"> <bean id="user" class="cn.com.xf.User"> <property name="name" value="jikoy"></property> <property name="age" value="28"></property> <property name="remark" value="this is remark"></property> </bean> <bean id="userUtil" class="cn.com.xf.UserUtil"> <constructor-arg ref="user"></constructor-arg> </bean></beans>
以上,我跟前一篇不一样,没有使用P标签,但效果是一样的,注意 <constructor-arg ref="user"></constructor-arg>
package cn.com.xf;import org.springframework.context.ConfigurableApplicationContext;import org.springframework.context.support.ClassPathXmlApplicationContext;public class Test { public static void main(String[] args) { ConfigurableApplicationContext ctx=new ClassPathXmlApplicationContext("applicationContext.xml"); User user=(User) ctx.getBean("user"); ctx.close(); System.out.println(user); }}
测试类仍是使用了ApplicationContext的子接口方法,并提供了关闭方法。
Spring系列【3】应用构造器注入法实现Bean的注入
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。