(1) 、<context:component-scan base-package="*.*" />
 该配置隐式注册了多个对注解进行解析的处理器,如:
 AutowiredAnnotationBeanPostProcessor      
 CommonAnnotationBeanPostProcessor 
 PersistenceAnnotationBeanPostProcessor    
 RequiredAnnotationBeanPostProcessor 
 其实,注解本身做不了任何事情,和XML一样,只起到配置的作用,主要在于背后强大的处理器 
 其中就包括了<context:annotation-config/>配置项里面的注解所使用的处理器 
 所以配置了<context:component-scan base-package="">之后,便无需再配置<context:annotation-config>

(2)、@Component、@Repository、@Service、@Controller、@Autowired、@Resource
 而Spring2.5就为我们引入了组件自动扫描机制 
 它可以在classpath下寻找标注了@Service、@Repository、@Controller、@Component注解的类 
 并把这些类纳入Spring容器中管理,它的作用和在XML中使用bean节点配置组件是一样的 
 使用自动扫描机制,则需配置<context:component-scan base-package="com.jadyer"/>启动自动扫描 
 其中base-package指定需要扫描的包,它会扫描指定包中的类和子包里面类 
 @Service用于标注业务层组件 
 @Repository用于标注数据访问组件,即DAO组件 
 @Controller用于标注控制层组件,如Struts中的Action 
 @Component泛指组件,当组件不要好归类时,可以使用这个注解进行标注
 1、可以使用诸如@Service("personDao")修改bean名称,而它默认的是将首字母小写的类名作为<bean>名称 
 2、若要更改<bean>作用域的话,可以使用@Scope("prototype")注解来修改<bean>作用域

一般使用@Resource注解,而不要使用@Autowired注解 
 因为@Autowired注解是Spring提供的,而@Resource注解是J2EE提供的 
 在JDK6中就已经包含@Resource注解了,所以它没有跟Spring紧密耦合

(3)、<tx:annotation-driven />
 @Transactional 注解可以被应用于接口定义和接口方法、类定义和类的 public 方法上。
 Spring团队的建议是你在具体的类(或类的方法)上使用 @Transactional 注解,而不要使用在类所要实现的任何接口上。
 @Service
 @Transactional(rollbackFor=Exception.class)   //对当前类的所有方法起作用
 @SuppressWarnings("serial")
 public class ButtonBo extends GlobalBo {
  ....
  @Transactional(propagation = Propagation.NOT_SUPPORTED, readOnly = true) //具体方法上
    public Button findButton(String buttonid) throws BaseException {
     return hibernateEntityDao.get(Button.class, buttonid);
   }
 }

 转载地址;http://blog.csdn.net/cdl2008sky/article/details/6265742,感谢作者分享

【转】Spring Annotation 详解的更多相关文章

  1. spring事务详解(四)测试验证

    系列目录 spring事务详解(一)初探事务 spring事务详解(二)简单样例 spring事务详解(三)源码详解 spring事务详解(四)测试验证 spring事务详解(五)总结提高 一.引子 ...

  2. spring事务详解(一)初探事务

    系列目录 spring事务详解(一)初探事务 spring事务详解(二)简单样例 spring事务详解(三)源码详解 spring事务详解(四)测试验证 spring事务详解(五)总结提高 引子 很多 ...

  3. [转载]Spring配置文件详解一:

    原文地址:与base-package="com.xx">Spring配置文件详解一:<context:annotation-config/>与<contex ...

  4. Java Annotation详解(二): 反射和Annotation

    前面一篇文<Java Annotation详解(一): 理解和使用Annotation>中,我们或许会觉得,Annotation注释其实并没有多大的作用,除了几个内建的Annotation ...

  5. Spring Aop 详解二

    这是Spring Aop的第二篇,案例代码很详解,可以查看https://gitee.com/haimama/java-study/tree/master/spring-aop-demo. 阅读前,建 ...

  6. Spring配置文件详解 – applicationContext.xml文件路径

    Spring配置文件详解 – applicationContext.xml文件路径 Java编程                 spring的配置文件applicationContext.xml的默 ...

  7. spring配置文件详解--真的蛮详细

    spring配置文件详解--真的蛮详细   转自: http://book.51cto.com/art/201004/193743.htm 此处详细的为我们讲解了spring2.5的实现原理,感觉非常 ...

  8. 【转载】Spring AOP详解 、 JDK动态代理、CGLib动态代理

    Spring AOP详解 . JDK动态代理.CGLib动态代理  原文地址:https://www.cnblogs.com/kukudelaomao/p/5897893.html AOP是Aspec ...

  9. J2EE进阶(四)Spring配置文件详解

    J2EE进阶(四)Spring配置文件详解 前言 Spring配置文件是用于指导Spring工厂进行Bean生产.依赖关系注入(装配)及Bean实例分发的"图纸".Java EE程 ...

随机推荐

  1. JQ面向对象

    静态方法:某种类型才有的方法,这个方法干的事情只有类型本身有关,不受具体实例对象的影响,在C#语言中,它用static表示,VB中用share表示,而在jq中我们一般用$或者JQuery表示JQ类型, ...

  2. Max-heap && Min-heap && push_heap

    最大堆:make_heap(vi.begin(),vi.end()) #include <iostream> #include <vector> #include <al ...

  3. 2018 ACM-ICPC 沈阳网络赛

    Problem A Problem B Problem C Problem D Problem E Problem F Problem G Problem H Problem I Problem J ...

  4. Manacher【p1210】回文检测

    题目描述--->P1210 回文检测 分析: 看到回文显然想到了manacher算法(线性求解回文串问题 如果不了解还是去敲一下板子,学习一下比较好.-->manacher 题目要求我们求 ...

  5. java应用高cpu占用

    一个应用占用CPU很高,除了确实是计算密集型应用之外,通常原因都是出现了死循环 排查故障如下: 1.根据top命令,发现PID为28555的Java进程占用CPU高达200%,出现故障 2.通过ps ...

  6. 表(Table)

    虽然我们已经将不同用途的物品保存在不同的仓库中了,但是在同一个仓库中数据的保存仍然存在问题.比如食品分为熟食.生肉.大米等,如果把他们随意的堆放在一起,就会造成我们无法很容易的对这些食品进行管理,当要 ...

  7. Annotation的语法和使用

    http://blog.csdn.net/cdl2008sky/article/details/6265742 (1) .<context:component-scan base-package ...

  8. 【枚举】Codeforces Round #394 (Div. 2) C. Dasha and Password

    纪念死去的智商(虽然本来就没有吧……) 三重循环枚举将哪三个fix string作为数字.字母和符号位.记下最小的值就行了. 预处理之后这个做法应该是O(n^3)的,当然完全足够.不预处理是O(n^3 ...

  9. 【模拟】bzoj2295 【POJ Challenge】我爱你啊

    #include<cstdio> #include<cstring> using namespace std; int n; char s[100001],table[]=&q ...

  10. iOS开发之指定UIView的某几个角为圆角

    我们知道, 如果需要将UIView的4个角全部都为圆角,做法相当简单,只需设置其Layer的cornerRadius属性即可(项目需要使用QuartzCore框架).而若要指定某几个角(小于4)为圆角 ...