草庐IT

hibernate-mapping

全部标签

java - 如何在 hibernate 中记录失败的sql?

我正在使用spring-data-jpa构建一个SpringBoot应用程序。我知道如何记录这个问题中的所有sql。HowtoprintaquerystringwithparametervalueswhenusingHibernate但是如果我只想记录失败的sql怎么办? 最佳答案 有两种选择:使用参数值配置sql日志记录。禁用jdbc批处理并通过hibernate方式启用刷新。添加调试JDBC驱动程序,例如p6spy,它或多或少会完全按照上述描述进行操作。首先,让我们分析问题并将查询类型拆分为SELECT和INSERT/UPDAT

java - 将 Set<String> 中的所有值分配给带有流的 Map<String, String>

我有一个包含不同字符串的列表1,这些字符串以另一个列表(fooBarList)中的字符串开头。Listlist1=Arrays.asList("FOO1234","FOO1111","BAR1","BARRRRR");ListfooBarList=Array.asList("FOO","BAR");我想创建一个Hashmap>hm它根据字符串的开头将字符串与list1分开。结果应该是这样的:{FOO=["FOO1234",FOO1111"],BAR=["BAR1","BARRRRR"]}fooBarList定义了不同的键。如何在流的帮助下实现这一目标?我只是不知道如何执行我基本上说的步

java - hibernate 条件中的表达式

假设我有一个带有数量字段和价格字段的持久类Item。有没有办法建立一个计算数量*价格总和的条件? 最佳答案 我认为您也可以使用SQL投影。它应该是这样的:session.createCriteria(Item.class).createAlias("item","i").setProjection(Projections.projectionList().add(Projections.groupProperty("i.id")).add(Projections.groupProperty("i.price")).add(Proje

java - 为什么 hibernate 返回一个代理对象?

我有一个调用DAO的服务方法,然后从数据库返回一个对象。从系统的许多部分调用此方法。但是,一个特定的方法是获取ObjectClass_$$_javassist_somenumber的返回类型作为类型。这是扔掉东西。我调用服务方法与其他地方完全相同,那么为什么hibernate会返回代理而不是自然对象?我知道有一些方法可以公开“代理”对象,但我觉得我不应该这样做。查询很简单hibernateTemplate.find("fromUseruwhereu.username=?",username)顺便说一句,我正在使用hibernate3.3。 最佳答案

java - Hibernate 中的三元(和 n 元)关系

问题1)我们如何使用Hibernate对三元关系建模?例如,我们如何对呈现的三元关系建模here使用Hibernate(或JPA)?注意:我知道JPA2添加了一些使用映射构建三元关系的结构。但是,这个问题假定JPA1或Hibernate3.3.x,我不喜欢使用映射来对此建模。(来源:grussell.org)(来源:grussell.org)理想情况下,我希望我的模型是这样的:classSaleAssistant{Longid;//...}classCustomer{Longid;//...}classProduct{Longid;//...}classSale{SalesAssist

java - Hibernate:如何只获取非逻辑删除的对象

我们数据库中的几乎每个表都有一个FK到审计表,该表记录创建、更新和删除状态(日期和用户名)。我们将审计表映射到审计类并像这样使用它:@MappedSuperclasspublicclassBusinessObjectextendsDataObject{privatestaticfinallongserialVersionUID=-1147811010395941150L;@OneToOne(fetch=FetchType.EAGER,cascade={CascadeType.ALL})@JoinColumn(name="AUD_ID")privateAuditingObjectaudi

java - Spring-Hibernate 坚持不导致插入

我正在尝试实现一个简单的DAO。我有道:@Repository("iUserDao")@Transactional(readOnly=true)publicclassUserDaoimplementsIUserDao{privateEntityManagerentityManager;@PersistenceContextpublicvoidsetEntityManager(EntityManagerentityManager){this.entityManager=entityManager;}@OverridepublicUsergetById(intid){returnentit

java - 外键中的 JPA/Hibernate OneToOne Null

我有以下两个具有双向OneToOne关系映射的实体,数据访问由HibernateEntityManagerv.“3.5.1-Final”提供。@Entity@Table(name="details")publicclassDetails{privateLongid;privateUseruser;publicvoidsetUser(Useruser){this.user=user;}@OneToOne@JoinColumn(name="user_id")publicUsergetUser(){returnuser;}@Id@GeneratedValue(strategy=Generat

java - 如何制作由 map 支持的集合?

Collections中有一个方法类。SetCollections.newSetFromMap()支持map和map支持的集合是什么意思? 最佳答案 也许看看实现会很有启发性:privatestaticclassSetFromMapextendsAbstractSetimplementsSet,Serializable{privatefinalMapm;//ThebackingmapprivatetransientSets;//ItskeySetSetFromMap(Mapmap){if(!map.isEmpty())throwne

java - 如何在 Spring XML 配置文件类中指定一个 Map 属性?

这就是我的意思,请参阅以下springXML文件:value1我的类(class)如下所示:classA{HashMapmapProperty}我如何在springXML文件中判断要注入(inject)的Map是java.util.HashMap类型?或者一般来说,我可以为Map提供类名吗?请注意,我无法将classA更改为使用Map而不是HashMap提前致谢!! 最佳答案 你可以使用util:mapvalue1不要忘记添加util命名空间。 关于java-如何在SpringXML配置