最近有一些老项目需要填坑,填坑中遇到了一些问题,这里记录下来,供自己以后参考:
问题描述:开发框架:spring+hibernate+struts
这个项目本来是给A市定制开发的,最近B市也想要这样的项目,leader指示在表空间下重新建立一个用户,建立好用户,修改数据库连接,启动项目,开始开发新功能。在测试写数据的时候发现数据没有写到数据库里感觉很奇怪于是开始检查:
检查数据库连接;正确
检查spring事务配置;正确
debug;无异常,堆栈正常
我能想到的主意到的地方都检查了,问题没有解决,于是开始查看控制台日志,发现在sql语句前都带上了用户名
insert user1.tableA(a,b,c)values(?,?,?)
觉得很奇快,于是检查hibernate的映射文件,发现配置了schema="ghtax"这个属性,指定了表空间中的用户名。去掉这个问题解决了,但是一想为啥要配置这个呢,询问了N个人,都不知道以前为啥要这样,后来询问了leader说是copy过来的谁都没有注意这个。。。。