草庐IT

hibernate3

全部标签

java - 如何在 Hibernate HQL 中使用 Oracle 的 regexp_like?

我正在使用oracle10g和hibernate3.3.2。以前在sql中用过正则表达式,现在第一次在HQL中使用。Queryquery=getSession().createQuery("FromCompanycompanywherecompany.id!=:companyIdandregexp_like(upper(rtrim(ltrim(company.num))),'^0*514619915$')");这是我的hql,当我在没有regex_like函数的情况下运行它时,它会按预期运行。但是我无法使用regex_like表达式来执行它。它说..nestedexceptioniso

java - hibernate : closing the session factory does not close the c3p0 connection pool

我最近开始在我的应用程序中使用hibernate和c3p0作为ORM。但是,当我关闭session工厂时,连接池并没有自行关闭!这是我的应用程序中也是唯一的地方,我可以在其中对session执行任何操作。StatelessSessionsession=null;Transactiontransaction=null;try{session=sessionFactory.openStatelessSession();transaction=session.beginTransaction();Listlist=session.getNamedQuery("getAvailableThin

java - Hibernate:实体上的多个过滤器

我想在一个实体上有多个Hibernate过滤器,我已经尝试了所有合乎逻辑的方法,但运气不佳,谷歌在这方面做得很差,Hibernate文档也是如此。我无法想象这是不可能的。(使用Java6Hibernate4.1.9.final)目前,我有这个:@Entity@Table(name="CATEGORY")publicclassCategoryimplementsSerializable{privatestaticfinallongserialVersionUID=1L;@Id@Column(name="CATEGORYID")privateintID;@Column(name="CATE

java - 在 hibernate 标准中使用 readOnly 是否有任何性能优势?

我正在使用hibernate条件API来检索数据。这些数据只会被用户查看。用户不能修改这些数据。那么,使用readOnly有什么好处吗?能推荐一下优缺点吗?我还需要考虑其他措施吗?Read-onlyentities 最佳答案 Hibernate正在跟踪session中加载的所有对象以查找修改并在刷新session时保留所有更改。如果将实体加载为只读,则指示Hibernate不要跟踪该实体的更改。这样,您将获得一些性能提升。但是,该对象将保留在session缓存中。如果缓存太大,就会成为一个很大的性能问题,并且有内存耗尽的风险。如果你

java - 了解 Hibernate 的条件#setMaxResults

docs说:CriteriasetMaxResults(intmaxResults)>Setalimituponthenumberofobjectstoberetrieved.假设我有以下Criteria:Criteriacriteria=createCriteria();//createscriteriaforMY_TABLEentitycriteria.list().length;//let'ssaythere'samillionrecordsinthistable将添加criteria.setMaxResults(1)只返回一行?或者,它是否仍会返回100万行,但选择其中之一?当

java - JPA/Hibernate 加入常量值

我正在尝试使用连接语句中的常量值连接同一个表中的不同实体。在SQL中,我会做这样的事情......SELECT*FROMowneroJOINtypestont.owner_id=o.idANDt.type='A'--^^^^^^^^^^^^^^^^THISISWHATIAMTRYINGTOREPLICATE在Java+JPA/Hibernate中,我正在尝试做这样的事情......@Entity@Table(name="OWNER")publicclassOwner{@Id@Column(name="ID")privateLongid@OneToOne(mappedBy="owner"

java - hibernate ,Java : no session or session was closed

我已经在Stackoverflow上看到过此类问题,但没有任何方法可以帮助我解决问题。我是Hibernate新手,有一个项目要用Java和MySQL做,所以用hibernate。我设法访问了我的数据,修改了它们,删除了它们,但是我阻塞了一个方法,因为我有一个异常到达了..并且看到我仍然不明白我设法不删除这个错误的所有线程:这是我的错误:org.hibernate.LazyInitializationExceptionGrave:failedtolazilyinitializeacollectionofrole:DAO.User.files,nosessionorsessionwascl

java - Hibernate Generated Value 策略

我在hibernate状态下使用这段代码。@Id@GeneratedValue(strategy=GenerationType.AUTO)@Column(name="RightID",unique=true,nullable=false)问题是当我删除一行时,“RightId”不保持顺序。我想要类似的东西,hibernates应该检查id,如果缺少某些id值,它必须将该值赋予'RightsId',否则将正常进行 最佳答案 我不认为在hibernate中有任何这样的选项可用。除了AUTO,您还可以尝试以下策略选项:Generation

java - 所有数据库查询的全局 hibernate 过滤器

我正在为我的Web应用程序使用SpringMVC和Hibernate。我正在寻找一种方法来创建适用于我的DAO类中的每个查询的各种全局hibernate过滤器,而无需在每个DAO方法中显式启用它。要求是按用户选择的session变量过滤记录。所以我们的查询参数将保存在session中,并且该session中的所有DAO查询都需要通过该变量过滤结果。这里的目的是避免每个DAO方法中的所有可重复过滤代码。欢迎提出任何想法! 最佳答案 在此列出我处理此事的方式。以下是基于与@Rp-的讨论和提出的建议here.三个主要元素用于配置:-Spr

java - JPA+Hibernate+@Transactional注解的spring事务支持的奇怪行为

我在相对简单的用例上发现了非常奇怪的行为,可能因为对spring@Transactional性质的了解不深,我无法理解它,但这很有趣。我有一个简单的用户dao,它扩展了springJpaDaoSupport类并包含标准保存方法:@TransactionalpublicUsersave(Useruser){getJpaTemplate().persist(user);returnuser;}如果在我向同一个类添加新方法之前工作正常:UsergetSuperUser(),此方法应该返回isAdmin==true的用户,如果数据库中没有super用户,方法应该创建一个。这就是它的样子:pub