`

五、Spring中注解的使用

 
阅读更多

1. Bean的作用域也可利用注解的方式进行限定:

如:@Scope(“prototype”),将其写定义类的前面

其功能类似于标签中的<bean id=”” class=”” scope=” prototype”/>

2. 通过注解还可为bean提供初始化方法以及销毁方法:

在方法前加上:@PostConstruct,则在实例化类时将执行该方法,类似于标签中的<bean init-method=”…”>配置。

在方法前加上@PreDestroy,则在类实例销毁之前执行该方法,类似于<bean destroy-method=”…”/>标签配置。

3. 依赖注入(注解方式注入属性)

在每个成员属性前加上注解:

@Resource @Autowired……

还需要在配置文件中加上下面一句配置:

<context:annotation-config/>

如此就不需要在配置文件中进行属性注入了,同时也可不用为成员属性加set方法。不过也可将注解配给set方法以达到同样的效果。

4. 用注解来管理事务

在类或方法前加上注解:@Transactional

如此可以让spring对事务进行管理,其管理规则为:如果抛运行期异常(RuntimeException及其子类),则会回滚;如果抛捕获异常(Exception及其子类),则不进行回滚。不过也可通过改变注解配置来改变其回滚规则:

@Transactional(roolbackFor=Exception.class)可以让捕获异常也回滚;

@Transactional(noRoolbackFor=RuntimeException.class)可以让运行期异常不回滚。

@Transactional(propagation=Propagation.NOT_SUPPORTED)可以让方法不再支持事务。

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics