有一个项目,是用Hibernate开发的部署在WebSphere Application Server 5.1下,总是会出现数据库记录被死锁的情况,即使是一个简单的更新动作,都有可能造成。
这个问题,困扰我许久,检查过所有代码,事物一定要提交或者回滚,Session及时释放,怀疑过是否是因为是部署在集群环境,但好像那些措施总于事无补,百思不得其解。
就差没有使用容器提供的事物了。 阅读全文 >>
有一个项目,是用Hibernate开发的部署在WebSphere Application Server 5.1下,总是会出现数据库记录被死锁的情况,即使是一个简单的更新动作,都有可能造成。
这个问题,困扰我许久,检查过所有代码,事物一定要提交或者回滚,Session及时释放,怀疑过是否是因为是部署在集群环境,但好像那些措施总于事无补,百思不得其解。
就差没有使用容器提供的事物了。 阅读全文 >>
最近接手了一个要维护的项目,是用Hibernate2+Oralce8写成的,因为看到Hibernate3页出来这么久了,而且也感觉Hibernate3有它的许多新的特性,如批量删除和更新,新的HQL语法解析器AST。
升级过程大致按照孙卫琴的那篇文章 如何把Hibernate2.1升级到Hibernate3.0?来做,该替换的替换完,该设置的设置完,程序一跑,当程序执行到向下面这种查询的时候(Oracle所特有的外连接查询),报错。
语句为:(描述为类似语句,把项目中的实际表名隐去了) 阅读全文 >>
Firebird 本身是没有自增型字段,但可以通过序列键产生器和触发器共同来实现,步骤如下:
CREATE TABLE my_table (
my_number integer not null primary key
)
CREATE GENERATOR my_generator
CREATE TRIGGER my_before_trigger FOR my_table
BEFORE INSERT
AS
BEGIN
IF (NEW.my_number IS NULL)
THEN NEW.my_number = GEN_ID(my_generator, 1);
END
使用 Eclipse3.2.1+MyEclipse5.1+classes12.jar+Hibernate3
建立了 Hibernate3 的 Project, 使用上面那个 classes12.jar 的驱动,在 MyEclipse 的 DB Browser
连接上数据库,选择表,在上下文菜单中点击 Hibernate Reverse Engnieering, 直接点 Finish 按钮,
生成映射文件是出现出错:
An internal error occurred during "Generating Artifacts" 阅读全文 >>