spring BeanFactory

来源:互联网 发布:赛尔号刷米币软件安卓 编辑:程序博客网 时间:2024/05/21 17:57

package com.liyang.task;import javax.annotation.PostConstruct;import org.springframework.beans.factory.BeanFactory;import org.springframework.beans.factory.annotation.Autowired;import org.springframework.beans.factory.annotation.Value;import org.springframework.stereotype.Service;import com.liyang.entity.Man;import com.liyang.entity.Woman;@Servicepublic class TaskExecutor { private String info = null ;@Autowiredprotected  BeanFactory beanFactory;public String getInfo() {return info;}    @Value("#{liyang.info}") public void setInfo(String info) {this.info = info;}@PostConstructprivate void init(){     beanFactory.getBean("man" , Man.class).say() ;     beanFactory.getBean("woman" , Woman.class).say() ;     }}

package com.liyang.entity;import javax.persistence.MappedSuperclass;@MappedSuperclasspublic abstract class People {   protected abstract void say() ;}

package com.liyang.entity;import org.springframework.beans.factory.annotation.Value;import org.springframework.context.annotation.Scope;import org.springframework.stereotype.Service;@Service@Scope("prototype")public class Man extends People {private String name ;private String sex ;private int age ;public String getName() {return name;}@Value("#{liyang['name']}")public void setName(String name) {this.name = name;}public String getSex() {return sex;}@Value("#{liyang.mansex}")public void setSex(String sex) {this.sex = sex;}public int getAge() {return age;}@Value("#{liyang['age']}")public void setAge(int age) {this.age = age;}    @Overridepublic String toString() {return "Man [name=" + name + ", sex=" + sex + ", age=" + age + "]";}public Man() {// TODO Auto-generated constructor stub}@Overridepublic void say() {// TODO Auto-generated method stubSystem.out.println("Man saying!" + this)  ;}}


package com.liyang.entity;import org.springframework.beans.factory.annotation.Value;import org.springframework.context.annotation.Scope;import org.springframework.stereotype.Service;@Service@Scope("prototype")public class Woman extends People {private String name ;private String sex ;private int age ;public String getName() {return name;}@Value("#{liyang['name']}")public void setName(String name) {this.name = name;}public String getSex() {return sex;}@Value("#{liyang.womansex}")public void setSex(String sex) {this.sex = sex;}public int getAge() {return age;}@Value("#{liyang['age']}")public void setAge(int age) {this.age = age;}    @Overridepublic String toString() {return "Man [name=" + name + ", sex=" + sex + ", age=" + age + "]";}public Woman() {// TODO Auto-generated constructor stub}@Overridepublic void say() {// TODO Auto-generated method stubSystem.out.println("Woman saying!" + this)  ;}}






0 0
原创粉丝点击