(Spring)Spring框架中Bean管理的常用注解

Spring框架中Bean管理的常用注解

1、@Component:组件(作用在类上)


2、Spring中提供@Component的三个衍生注解:(功能到目前为止是一致的)

     *   @Controller  :作用在WEB层

     *   @Service       :作用在业务层

     *   @Repository :作用在持久层

     *   说明:这三个注解是为了标注类本身的用途清晰,Spring在后续版本可能会对其增强


3、关于属性注入的注解(使用注解注入的方式,可以不用提供set方法)

     *   如果是注入的是普通类型,可以使用Value注解

         >  @Value            ---  用于注入普通类型

    // 给name属性注入美美的字符串,setName方法还可以省略不写
	@Value(value="美美")
	private String name;
	public void setName(String name) {
		this.name = name;
	}

     *   如果注入的是对象类型,使用如下注解

         >  @Autowired    ---  默认按类型进行自动装配

                   *   如果想按名称注入的话

                   *   @Qualifier       ---   强制使用名称注入

    // @Autowired 按类型自动装配
	@Autowired
	@Qualifier(value="userDao")  // 按名称注入
	private UserDao userDao;

        >  @Resource        ---  相当于@Autowired和@Qualifier一起使用

                  *   @Resource 是 Java提供的注解

                  *   属性使用 name 属性

	    // @Resource是Java的注解,Spring框架支持该注解
	    @Resource(name="userDao")
	    private UserDao userDao;


Bean的作用范围和生命周期的注解

      1)Bean的作用范围的注解

           *   注解为  @Scope(value="prototype"),作用在类上。值如下:

                >  singleton        ---  单例,默认值

                >  prototype       ---  多例

      2)Bean的生命周期的配置

           *   注解如下:

               >  @PostConstruct         ---  相当于 init-method

               >  @PreDestroy              ---  相当于 destroy-method


Spring框架整合JUnit单元测试

     1)为了简化了JUnit的测试,使用Spring框架也可以整合测试

     2)具体步骤:

          前提:必须要有JUnit的环境(导入了JUnit的开发环境)

          步骤一:在程序中导入:spring-test-4.2.4.RELEASE.jar

          步骤二:在具体的测试类上添加注解

@RunWith(SpringJUnit4ClassRunner.class)
@ContextConfiguration("classpath:applicationContext.xml")
public class Demo2 {
	
	@Resource(name="userService")
	private UserService userService;
	
	@Resource(name="userDao")
	private UserDao userDao;
	
	@Test
	public void run1() {
		userService.sayHello();
		System.out.println("--------------------------");
		userDao.save();
	}
}
          步骤三:  开启注解扫描
<?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.xsd
      http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context.xsd"> 
	<!-- 开启注解的扫描 -->
	<context:component-scan base-package="com.jadan"></context:component-scan>
</beans>


下一篇:Spring框架之AOP技术

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值