框架底层直接用控制器调用dao的笔记
公司框架操作数据库用到三个核心类,BaseDao、HibernateBaseDao、JdbcBaseDao,实际在用到和数据库打交道时,都是由控制器到服务层再到持久层,spring配置事务传播作用在服务层,如果直接在控制器调用持久层的话,经过测试这3个核心类,发现BaseDao 不保存到数据库且不报错,HibernateBaseDao不保存到数据库且报错提示只读不可写,JdbcBaseDao可正常保存到数据库,以下是测试的样例代码!
public void saveLog(){ BaseDao baseDao = AppliactionContextHelper.getBean(BaseDao.class); RoleDao roleDao = AppliactionContextHelper.getBean(RoleDao.class); JdbcBaseDao jdbcBaseDao = AppliactionContextHelper.getBean(JdbcBaseDao.class); BaseLog baseLog = null; try { baseLog = SystemUtil.getBaseLog(LogType.LEVEL_INFO, LogType.SYSTEM_LOG, "baseDao>测试日志保存内容", "127.0.0.1"); baseDao.save(baseLog); } catch (Exception e) { log.error("baseDao>测试日志保存内容异常",e); } try { baseLog.setLogDesc("roleDao>测试日志保存内容"); roleDao.getHibernateTemplate().save(baseLog); } catch (Exception e) { log.error("roleDao>测试日志保存内容异常",e); } try { baseLog.setLogDesc("jdbcBaseDao>测试更新"); jdbcBaseDao.updateOrDeleteDataForSql("update base_user set user_name='系统管理员' where user_id = 1"); } catch (Exception e) { log.error("jdbcBaseDao>测试更新异常",e); } }
相关推荐
happinessaflower 2019-10-27
Coohx 2012-02-25
cuterabbitbaby 2020-06-14
xiuyangsong 2020-06-03
tlsmile 2020-05-28
flydoging 2020-05-04
无情的你无情的雨 2020-04-23
LeonZhang0 2020-04-21
haidaoxianzi 2020-02-20
mendeliangyang 2020-02-20
HappyHeng 2020-02-12
cnflat0 2020-01-23
javamagicsun 2019-12-24
咻pur慢 2019-12-22
XCMercy 2019-12-18
Justagreenonion 2019-12-16
whbing 2019-12-12
xiaoyaodaia 2019-11-06