spring+hibernate在MYSQL下的一些问题

今天在帮朋友调试一个关于多线程访问同一张表引起的Lock wait timeout exceede的问题,感觉引起的原因有:

1,没有进行优化,尽量避免多线程

2,根据它后面报的异常,提醒我可以Hibernate 的Session没有使用得当,(也是我解决的方案)

3,用synchronized修饰更新表的函数

估计是原来程序在修改完该表时立刻进行了插入操作导致的,

所以我在更新后进行getHibernateTemplate().flush();
最后,在插入操作(save())时,原本他是又创建了一个新的DAO,再将记录插入到数据库中,而因为是同一个DAO,我将其删掉,直接调用save(),这个问题也就解决了!

调试之前:

调试之后:

 

最后还有一个关于MYSQL的问题,就是编码,发现使用Hibernate自带的hbm2ddl工具会更改到DB的编码(每次都把他改成latin1!!!),最后没办法使用它生成的SQL语句写入一个脚本,再在MYSQL自行导入,问题解决!faint~

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值