你说的 :结果发现JDBC以上的修改数据库的代码(EJB方式访问DB)已经被持久化到数据库中了。
这句话是说明你用到entity bean了吧,楼主注意 entity bean管理事务 是CMT方式 不允许你控制事务 在SB 和MDB 可以BMT进行人工干预事务。祝问题早解决

解决方案 »

  1.   

    xiaosongcc() ( ) 信誉:100    Blog  2006-08-24 16:07:00  得分: 0 
     
    你说的 :结果发现JDBC以上的修改数据库的代码(EJB方式访问DB)已经被持久化到数据库中了。
    这句话是说明你用到entity bean了吧,楼主注意 entity bean管理事务 是CMT方式 不允许你控制事务 在SB 和MDB 可以BMT进行人工干预事务。祝问题早解决
    ----------------------------------------------------
    是通过entity bean修改数据库的,但是通过会话bean的方法由容器来控制整个事务的。
     
      

  2.   

    session facade 模式是session bean里面 commit()提交后 就一起结束事务,在JDBC后你提交了没 你没运行怎么知道他持久化了?
      

  3.   

    你的entity bean的事务类型如果是CMT,那是没办法控制事务的
      

  4.   

    xiaosongcc() ( ) 信誉:100    Blog  2006-8-24 16:56:13  得分: 0  
    session facade 模式是session bean里面 commit()提交后 就一起结束事务,在JDBC后你提交了没 你没运行怎么知道他持久化了?
    -------------------------------------------------------------------------
    我在JDBC里查询啊,发现部分数据已经被改变了,这个改变肯定是由于sssion bean提交的。而且JDBC里操作又不是由容器控制的,JDBC在session bean方法提交前,它取得数据应该是没有改变的数据。