2017-05-24 108 views

回答

2

这正是使用NOT_SUPPORTED,以提高性能的目的。逸岸甲骨文为表示:

notsupported时属性

如果客户端在一个运行的事务中调用 企业Bean的方法,容器调用方法之前挂起客户端的 交易。该方法完成后,该容器将恢复客户端的事务。

如果客户端不关联一个事务,容器不会 没有运行方法之前启动新的事务。

使用notsupported时属性为不需要 交易方法。由于交易涉及间接费用,因此此属性 可能会提高性能

所以,这是所有选择找到业务方法,其目的也许是,以填补在屏幕上的数据表的完美契合。如果存在如果与交易上下文中调用将导致异常的处理

+1

注意**可能会提高**。有些事情会影响性能远远高于交易是否开启,所以开始把这个无处不在作为一个微型优化并不是一个聪明的主意。 – Kayaman

0

NOT_SUPPORTED是有用的。例如,调用包含带有XA处理上下文的DDL代码的存储过程将导致发生异常。如果更改存储过程不是选项,则在调用包含有问题的存储过程的方法之前,使用NOT_SUPPORTED属性作为变通办法并暂停事务。

如果事务回滚被允许在只读交易中使用的支持,如果事务回滚在只读交易中使用是不允许NOT_SUPPORTED。