从@transactional公共方法调用私有方法时,将在私有方法中使用相同的事务,或者不使用任何事务

时间:2015-11-07 05:54:19

标签: java spring hibernate

@Transactional
public class someClass implements someInterface {

    @override
    public void insertData() {    
        updateOtherTable();
    }

    private updateOtherTable() {
        //will this use above transaction or will not use any transaction?
    }
}

1 个答案:

答案 0 :(得分:4)

Spring代理您的公共insertData方法,因此该方法中的所有内容都在事务中执行。因此,也会对您的私有方法应用交易。