package net.cybclass.sp.config; import net.cybclass.sp.domain.VideoOrder; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; import org.springframework.context.annotation.Scope; @Configuration public class AppConfig { //使用@Bean注解,表明这个bean交给spring进行管理,如果没有指定名称,默认采用方法名首字母小写 //@Bean @Bean(value = "videoOrder",initMethod = "init",destroyMethod = "destroy") @Scope public VideoOrder videoOrder(){ return new VideoOrder(); } }
package net.cybclass.sp.domain; public class VideoOrder { public VideoOrder(){ } public void init(){ System.out.println("VideoOrder init被调用"); } public void destroy(){ System.out.println("VideoOrder destroy被调用"); } public VideoOrder(Video video){ this.video=video; } private int id; //订单号 private String outTradeNo; private Video video; public int getId() { return id; } public void setId(int id) { this.id = id; } public String getOutTradeNo() { return outTradeNo; } public void setOutTradeNo(String outTradeNo) { this.outTradeNo = outTradeNo; } public Video getVideo() { return video; } public void setVideo(Video video) { this.video = video; } @Override public String toString() { return "VideoOrder{" + "id=" + id + ", outTradeNo=‘" + outTradeNo + ‘\‘‘ + ", video=" + video + ‘}‘; } }
Spring的@Configuration和@Bean注解定义第三方bean
原文:https://www.cnblogs.com/chenyanbin/p/13307323.html