Dao层通过getCurrentSession()查询后报异常的解决方案:
异常信息:javax.persistence.TransactionRequiredException:no transaction is in
progress
检查:
1:数据库表的搜索引擎是否支持事务(MyISAM不支持事务,InnoDB支持事务)
修改SQL:ALTER TABLE ssh.user ENGINE=InnoDB; (ssh.user是我的数据库)`
2:检查数据库方言是否设置了 支持事务
因为如果是自动生成的表的话,有可能是方言没有设置好导致在自动创建表时,一次性生成了不支持事务的表,导致没有事务,就像1说的情况一样,引擎不支持事务。