本帖最后由 x8023x 于 2011-09-29 16:02:00 编辑

解决方案 »

  1.   

    当然可以,JTA这是设计用来解决跨数据库事务,至于事务隔离级别大致一样,支持下面四种■ Read uncommitted:
       这个级别是不安全的,事务中的查询会读到当前其它事务正在设置当时还未提交的数据■ Read committed:
       这个级别相对比较安全,事务中读到的数据都是已经得到提交的数据,但是如果两次读取同一个条记录,但是在两次读取的过程中有另外的事务更改了改记录并成功提交的话,则会出现同一事务中两次读取同一条记录数据不一致的情况。这种情况很少出现,因为一般同一事务的程序不会重复读取同一条记录,如果用hibernate就更安全了,hibernate的一级缓存不会让程序向数据库两次读取同一条记录。■ Repeatable read:
       这个级别解决了同一事务两次读取数据结果不同的情况,这个级别也是很多数据库的默认事务级别(如mysql)■ Serializable:
       这个级别会使所有事务串行化工作,每个事务只能排队进行数据库操作,类似单线程的Servlet的工作机制,这样在并非量较高的数据库访问时,数据库操作效率将极其底下,应该避免使用
      

  2.   

    当然可以,JTA这是设计用来解决跨数据库事务,至于事务隔离级别大致一样,支持下面四种■ Read uncommitted:
       这个级别是不安全的,事务中的查询会读到当前其它事务正在设置当时还未提交的数据■ Read committed:
       这个级别相对比较安全,事务中读到的数据都是已经得到提交的数据,但是如果两次读取同一个条记录,但是在两次读取的过程中有另外的事务更改了改记录并成功提交的话,则会出现同一事务中两次读取同一条记录数据不一致的情况。这种情况很少出现,因为一般同一事务的程序不会重复读取同一条记录,如果用hibernate就更安全了,hibernate的一级缓存不会让程序向数据库两次读取同一条记录。■ Repeatable read:
       这个级别解决了同一事务两次读取数据结果不同的情况,这个级别也是很多数据库的默认事务级别(如mysql)■ Serializable:
       这个级别会使所有事务串行化工作,每个事务只能排队进行数据库操作,类似单线程的Servlet的工作机制,这样在并非量较高的数据库访问时,数据库操作效率将极其底下,应该避免使用
      

  3.   

    当然可以,JTA就是设计用来解决跨数据库事务,至于事务隔离级别大致一样,支持下面四种■ Read uncommitted:
       这个级别是不安全的,事务中的查询会读到当前其它事务正在设置当时还未提交的数据■ Read committed:
       这个级别相对比较安全,事务中读到的数据都是已经得到提交的数据,但是如果两次读取同一个条记录,但是在两次读取的过程中有另外的事务更改了改记录并成功提交的话,则会出现同一事务中两次读取同一条记录数据不一致的情况。这种情况很少出现,因为一般同一事务的程序不会重复读取同一条记录,如果用hibernate就更安全了,hibernate的一级缓存不会让程序向数据库两次读取同一条记录。■ Repeatable read:
       这个级别解决了同一事务两次读取数据结果不同的情况,这个级别也是很多数据库的默认事务级别(如mysql)■ Serializable:
       这个级别会使所有事务串行化工作,每个事务只能排队进行数据库操作,类似单线程的Servlet的工作机制,这样在并非量较高的数据库访问时,数据库操作效率将极其底下,应该避免使用