Spring @value @Scope @PostConstruct @predestory

1.@value

2.@Scope

作用: 用于指定bean的作用范围
属性:  value:指定范围的取值
取值: singleton prototype request session globalsession

@PostConstruct

构造方法之后调用(类似mybatis里面的@BeforeEach注解)

@predestory

销毁对象之前调用(类似mybatis里面的@AfterEach注解)

注意;@AfterEach和@BeforeEach是Junit5情况下的

/*
 * 注入Bean类型
 * 1、Autowired:自动装配,可以根据类型来实现自动注入,如果存在多个相同类型的bean,则会按照变量名继续查找
 * 2、Qualifier:修饰符,和Autowired注解搭配使用,在自动装配的基础上,按照指定的名称进行查找
 * 3、Resource:直接按照Bean的id进行查找
 * 
 * 
 * @Scope:指定Bean的作用范围,主要取值:singleton(单例)、prototype(多例)
 */

@Service("userService")
@Scope("prototype")
public class UserServiceImpl implements IUserService {

	private IUserDao dao;

	/**
	 * Spring对于带参构造方法,默认采用了自动装配的策略,也就是说:
	 * 构造该对象时,如果参数是一个引用类型,将会自动从容器中查找同类型的对象来自动注入
	 * 如果同类型的变量有多个,则需要在构造函数的参数前加注解来标明!!
	 * @param dao
	 */
	public UserServiceImpl(@Qualifier("userDao") IUserDao dao) {
		super();
		this.dao = dao;
	}
	
	@PostConstruct
	public void init() {
	    System.out.println("初始化方法执行");
	}

	@PreDestroy
	public void destroy() {
	    System.out.println("销毁方法执行");
	}


	@Override
	public String queryUser() {
		return dao.queryUser();
	}

}

 

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值