发帖    主题    评论    推荐    标签    作者    订阅    查搜    注册   登陆   关注
 
面向对象 设计模式 领域驱动设计 企业架构 框架 开发教程 微服务 大数据 扩展性 并发编程 事件驱动 分布式 SOA

请教一个hibernate的问题

2007-07-27 17:34
赞助商链接

我们的系统,是一个业务系统。比方说,有一个单子,入库单
要写库存
以前的时候,肯定是sql:库存=库存+单子的数量
如果,在hibernate里面怎么设计比较好呢?

2007-07-30 10:53

hibernate是基于对象的工具,所以,首先对象建模,比如有入库单对象,然后根据再对对象中字段比如库存进行计算,计算方式不变。你需要首先熟悉一下hibernate。

2007-07-30 10:59

我也知道banq讲的,首先要建模,然后再进行设计什么的
我只是想说,比方说,大家都要写库存,也就是不止一个人在处理库存
如果,几张入库单都要写库存
数据库中有一张库存表,以前的时候,用sql:
update tb库存表
set 库存 = 库存 + 入库单的入库数量

现在,用hibernate是不是session先load,然后,对象的库存量=库存量+你单据的入库数量?可是,这样的话,你取过来的数量,可能在这个过程中已经被别人修改过了,如何处理?

呵呵,不好意思啊,我以前都是直接写sql的那种做法的,一时转不过来,可能让各位高手见笑了。呵呵

2007-07-31 11:11

没人理啊?高手是不是都觉得这个问题比较弱啊?

2007-08-03 17:04

这就要看Hibernate对事务和并发处理的内容了,一般数据库里面都有默认的隔离级别了(像Mysql默认隔离级别是Reapeatable Read),当然也可以用Hibernate配置文件hibernate.properties来配置事务的隔离级别,如果这样还不能解决并发问题,还可以考虑用悲观锁或乐观锁来辅助解决,当然并不是所有的数据库系统都支持锁.

赞助商链接

赞助商链接

返回顶部

移动版 关于本站 使用帮助 联系管理员 最佳分辨率1366x768
OpenSource JIVEJDON Powered by JdonFramework Code © 2002-20 jdon.com