hibernate session只是一个rollback的事务?

最近整数据库,启用了genenal_log,记录所有的数据库操作;
然后就发现了一个现象,对于下面的代码:

private  static SessionFactory factory =  getSessionFactory();
    public static void testAdd() {
        Session session = factory.openSession();
        User user = (User)session.get(User.class, (int)(10 * Math.random()));
        System.out.print(user.getName());
        session.close();
    }

数据库的日志是这样的:

Init DB    ***
Query    SET autocommit=0
Query    select ****;
Query    rollback
Init DB    ***
Query    SET autocommit=1

这段数据库日志和带有事务的日志看起来差不多,只不过多了一个rollback;

难道所有的hibernate session,本身都是作为一个事务在处理,只不过如果没有真正的事务操作,则进行rollback?

查看回复

相关问答