
hibernate
iteye_4120
这个作者很懒,什么都没留下…
展开
-
读书笔记:PO, VO的区别
PO即 Persistence ObjectVO即 Value Object一个vo就是一个普通的对象,对应到对象状态当中是transient, detached两种状态。Transient - an object is transient if it has just been instantiated using the new operator, and it is not assoc...2006-12-30 10:49:02 · 265 阅读 · 0 评论 -
hibernate中collection该何时使用cascade
先说说cascade的取值:如果用save-update,只是对存储过程和更新过程级联,在删除数据的时候,引用表的外键为空,不做级联删除,而用delete的话时,在对父表操作时,同时级联所有的更新操作和删除操作,也就是说在删除父表时同时删除子表中引用父表pk做外键的项,但是和内存中不同步.all-delete-orphan可以和内存中数据做同步. 再说说应用场合: BookType bookTyp...2008-01-05 11:24:33 · 132 阅读 · 0 评论 -
hibernate中联合子类要注意的问题
hibernate对于子类的映射有3种方式,这里描述的是每个具体子类一张表的方式。这种策略是使用union-subclass标签来定义子类的。每个子类对应一张表,而且这个表的信息是完备的,即包含了所有从父类继承下来的属性映射的字段(这就是它跟joined-subclass的不同之处,joined-subclass定义的子类的表,只包含子类特有属性映射的字段)。实现这种策略的时候,有如下步骤...2008-01-17 12:08:57 · 152 阅读 · 0 评论 -
many-to-one进行类关联的问题
在使用hibernate进行类关联的时候,通常采用如下的做法: <class name="org.appfuse.task.model.Advertisement" table="advertisement_t" >... <many-to-one name="resource"...2008-01-28 10:59:06 · 117 阅读 · 0 评论 -
hibernate的session管理
SessionFactory.getCurrentSession与openSession的区别 1. 如果使用的是getCurrentSession来创建session的话,在commit后,session就自动被关闭了, 也就是不用再session.close()了。但是如果使用的是openSession方法创建的session的话, ...原创 2008-12-18 17:26:10 · 84 阅读 · 0 评论 -
使用hibernate连接mysql自动中断的问题
数据库为mysql,客户端使用hibernate进行连接,结果长时间没有数据访问的话,重新访问数据库就会报错:java 代码 org.hibernate.exception.JDBCConnectionException: could not execute query at org.hibernate.exception.SQLStateConverter.co...2007-06-15 16:38:38 · 177 阅读 · 0 评论 -
hibernate数据源安全管理
数据库的安全访问是很重要的事情。如果搭建一个web应用或者application需要访问数据库的话,如果把数据库的用户名和密码直接放在hibernate的配置文件当中,那么用户很容易或者密码。如果限制这个密码文件的访问,可能调试问题会很麻烦。 1。对于web应用,采用JNDI的方法配置数据库参数可以避免代码中含有数据库的连接信息。参见http://tomcat.apache.org/tom...2009-04-16 16:35:06 · 180 阅读 · 0 评论 -
hibernate中执行标准sql需要注意的问题
在hibernate执行标准的sql,一开始写了如下的代码:java 代码 public List querySQL(final String sql) { HibernateTemplate ht = getHibernateTemplate(); return (List) ht.execute(new HibernateCallba...2007-09-12 16:07:26 · 158 阅读 · 0 评论 -
处理JPA异常: More than one row with the given id entifier was found
在使用hibernate entitymanager的时候,我们会用 entityManager.createQuery("xxx").getResultList(); 来获取对象。在某些时候,就会产生如下的异常: More than one row with the given identifier was found 这是由getResultList()抛出来的。由于所搜索出的数...原创 2010-07-22 15:45:09 · 1651 阅读 · 0 评论