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

(2)、<tx:annotation-driven transaction-manager="txManager" />
 @Transactional 注解可以被应用于接口定义和接口方法、类定义和类的 public 方法上。
 Spring团队的建议是你在具体的类(或类的方法)上使用 @Transactional 注解,而不要使用在类所要实现的任何接口上。

public class ButtonBo extends GlobalBo {
  ....
  @Transactional(value = "txManager", rollbackFor = Exception.class)
    public Button findButton(String buttonid) throws BaseException {
     return hibernateEntityDao.get(Button.class, buttonid);
   }
 }

(3)

<bean id="txManager" class="org.springframework.jdbc.datasource.DataSourceTransactionManager">
<!--保证事务管理对象正确引用DataSource对象。如果系统中有两个及以上的数据源,因为只能配一个,请配置有增删改偏操作的那个。 -->
<property name="dataSource"><ref bean="dataSource" /></property>
<!--使用容器数据源时,此值为2。如果不设为2,在高并发下有可能有问题。 -->
<property name="transactionSynchronization"><value>2</value></property>
</bean>

(4)、@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紧密耦合

spring 事务:注解方式的更多相关文章

  1. 关于spring事务注解实战

    1.概述 spring的事务注解@Transaction 相信很多人都用过,而@Transaction 默认配置适合80%的配置. 本篇文章不是对spring注解事务做详细介绍,而是解决一些实际场景下 ...

  2. mybatis源码学习--spring+mybatis注解方式为什么mybatis的dao接口不需要实现类

    相信大家在刚开始学习mybatis注解方式,或者spring+mybatis注解方式的时候,一定会有一个疑问,为什么mybatis的dao接口只需要一个接口,不需要实现类,就可以正常使用,笔者最开始的 ...

  3. (转)使用Spring的注解方式实现AOP的细节

    http://blog.csdn.net/yerenyuan_pku/article/details/52879669 前面我们已经入门使用Spring的注解方式实现AOP了,现在我们再来学习使用Sp ...

  4. (转)使用Spring的注解方式实现AOP入门

    http://blog.csdn.net/yerenyuan_pku/article/details/52865330 首先在Eclipse中新建一个普通的Java Project,名称为spring ...

  5. Spring事务注解分析

    1.使用spring事务注解 2.手写事务注解 1).sql执行器 2).事务注解定义 3).AOP实现事务具体实现(同一个线程中使用同一个连接) 4).应用使用注解前 5).应用使用注解后

  6. Spring 使用注解方式进行事务管理

    转载:http://www.cnblogs.com/younggun/archive/2013/07/16/3193800.html 使用步骤: 步骤一.在spring配置文件中引入<tx:&g ...

  7. Spring使用注解方式就行事务管理

    使用步骤: 步骤一.在spring配置文件中引入<tx:>命名空间<beans xmlns="http://www.springframework.org/schema/b ...

  8. spring 事务管理方式及配置

    1.Spring声明式事务配置的五种方式 前段时间对Spring的事务配置做了比较深入的研究,在此之前对Spring的事务配置虽说也配置过,但是一直没有一个清楚的认识.通过这次的学习发觉Spring的 ...

  9. Spring事务注解@Transactional回滚问题

    Spring配置文件,声明事务时,如果rollback-for属性没有指定异常或者默认不写:经测试事务只回滚运行时异常(RuntimeException)和错误(Error). <!-- 配置事 ...

  10. Spring 使用注解方式进行事物管理

    大家在使用spring的注解式事务管理时,对事务的传播行为和隔离级别可能有点不知所措,下边就详细的介绍下以备方便查阅. 事物注解方式: @Transactional 当标于类前时, 标示类中所有方法都 ...

随机推荐

  1. ping命令

    ping命令能够用于判断一个主机是否可达或者是否存活.它的工作原理就像潜水艇的探测原理一样.该命令通过向目标计算机发送一个数据包,请求目标计算机回送该数据包以表明自己还存活着.同时该命令还能够知道数据 ...

  2. Myeclispe 安装 SVN :

    Myeclispe 安装 SVN :解压 : site-1.8.22.zip  放入如下路径下即可 :

  3. View.setTag(key,object)异常:The key must be an application-specific resource id.

    07-11 13:43:26.184: E/AndroidRuntime(10229): FATAL EXCEPTION: main07-11 13:43:26.184: E/AndroidRunti ...

  4. 操作系统 页面置换算法LRU和FIFO

    LRU(Least Recently Used)最少使用页面置换算法,顾名思义,就是替换掉最少使用的页面. FIFO(first in first out,先进先出)页面置换算法,这是的最早出现的置换 ...

  5. 转:xampp-php5.6下安装memcached.exe

    1.下载PHP对应版本的php_memcache.dll,我的PHP 5.6.3 所以下载 ,根据phpinfo输出的信息来找出匹配的版本: (1)看 Compiler,的后缀,一般带有vc11的字样 ...

  6. 微信公众平台开发 微信JSSDK开发

    根据微信开发文档步骤如下: 1.先登录微信公众平台进入“公众号设置”的“功能设置”里填写“JS接口安全域名”. JS接口安全域名设置 mi.com(前面不用带www/http,域名必须备案过) 2.引 ...

  7. Error:(1, 1) error: illegal character: \65279解决方法

    NotePad++,选择格式,选择转为UTF-8无BOM格式,即可解决,感谢http://tzwzero-163-com.iteye.com/blog/1696605

  8. win7 下加载MSCOMCTL.OCX

    cd C:\Windows\System32"C:\Windows\Microsoft.NET\Framework64\v4.0.30319\regtlibv12.exe" msd ...

  9. 在windows下使用visual studio code建立.NET Core console程序

    开发环境准备 下载vs code,.NET Core sdk: https://www.microsoft.com/net/core#windowscmd 目前最新版为code 1.8.1,.NET ...

  10. mysql5.8安装指南

    一.安装mysql yum源 从官网http://dev.mysql.com/downloads/repo/yum/下载mysql最新的yum源的rpm安装包 wget http://repo.mys ...