Hibernate 控制何时在ehcache';d类

我们使用Hibernate和ehcache作为二级缓存 如果我加载一个缓存的实体(例如cache usage=“read-write”)并对其进行更新,这似乎会立即导致SQL更新 (如何)我可以影响何时进行此SQL更新 编辑:似乎设置a应该会有效果,但是无论我设置了哪种缓存模式,每个hibSession.update()都会立即生成SQL更新 如果我加载一个缓存的实体(例如cache usage=“read-write”)并对其进行更新,这似乎会立即导致SQL更新 这对我来说似乎是一件非常好的事

使用Hibernate将子类持久化为超类

我有一个子类和一个超类。但是,只需要保留超类的字段 session.saveOrUpdate((Superclass) subclass); 如果我执行上述操作,我将得到以下异常 org.hibernate.MappingException: Unknown entity: test.Superclass at org.hibernate.impl.SessionFactoryImpl.getEntityPersister(SessionFactoryImpl.java:628)

为什么hibernate/jpa在删除映射列表中已删除的元素之前,会将其@OrderColumn字段设置为null?

我想绘制“章节”的树形结构图。每一章都有一个对其父章的引用,以及一个分章的有序列表(按“位置”)。 对于JPA 2.0和Hibernate 3.5,实体“章节”如下所示: @Entity public class Chapter { @Id @GeneratedValue private long id; @Column(name="position", nullable=false) private int position; @ManyT

Hibernate JPA:applicationManaged EntityManager for Java SE以编程方式控制事务生命周期

我很难找到一个好的解决方案来支持UI可以启动和提交事务的特性 在我以前处理事务性应用程序的方法中,我将工作单元分组到后端的服务方法中,并用spring的@transactional注释它 但是想象一下,我有几个这样的服务方法,由前端将服务方法调用分组到事务中 例如,我有methodServiceA、methodServiceB、methodServiceC。 UI可以通过以下任意组合执行类似操作: 组合1: 启动事务 调用methodServiceA+调用methodServiceB 提交事务

Hibernate插入oracle数据库,意外标记:值

我正在尝试在Oracle 10g DB中创建一个插入查询。它总是给我这个错误: 错误分析器:33-第1行:115:意外标记:值 这是我要插入的DAO方法 public void uploadFile(String createUser, Integer id, byte[] file, String name, String size, String mime) { Session session = getSessionFactory().openSession(); try

Hibernate 为与一个JPA实体类相关的所有表生成创建脚本

我想为特定的实体类生成创建表脚本 我可以使用hibernate(hbm2dll工具)()为我的所有类自动生成完整的脚本,但我不知道如何对此进行过滤,因此只保留与一个实体类相关的部分 您好, 劳雷斯您的实体之间是否没有声明关联?Hibernate将根据您对域模型的了解生成外键和映射表等 如果您只需要一个独立表的DDL,您可以使用该实体配置会话工厂,并将其指向一个空数据库。然后,您可以从日志中记录DDL(如上所述,由Hibernate生成),然后在获得所需内容后删除此数据库 但是,如果存在任何关联,

Hibernate ObjectDeleteDexException:已删除的实体传递给persist

我有两个实体,如下所示: 设备: 设备组件管理器。类: DeviceLinePersistenceManager dlpm=新的DeviceLinePersistenceManager(); 试一试{ dpm=新设备持久性管理器(); Set=newhashset(); 用于(LineStatus LineStatus:列表){ 设备deviceRetrieval=dpm.findDeviceByIp(线路状态 .getDeviceIp()); 如果(deviceRetrieval!=null

Hibernate正在返回已删除的行

我正在应用程序中使用hibernate访问数据库。 我在web服务器中使用它。 我正在使用数据库中的houses表。一个用户可以拥有多个房屋。 问题是,当我向数据库发送从房屋列表中删除房屋的请求时,它正在删除数据库中的房屋。但我立即重新加载应用程序以获取用户的房屋列表。Hibernate仍在返回房屋。确保调用commit()在会话/事务上,使数据库中发生删除 例如: Transaction t = session.beginTransaction(); session.delete(hous

Hibernate JPA@embeddeble

我正在使用@ElementCollection作为自定义对象列表 @ElementCollection @CollectionTable(name = "choice", joinColumns = @JoinColumn(name = "itemId")) @OrderColumn(name = "index") private List<Choice> choices = new ArrayList<Choice>(); 如果我使用@Embeddeble annot

Hibernate 多个客户端需要连接到本地HyperSQL 2.2.8并写入hsqldb

我的要求是,多个客户端需要连接到本地HyperSQL 2.2.8并写入。 还将有一个单独的客户端用于在同一台机器上查看。 因此,需要将多个编写器客户端和一个读卡器客户端连接到本地HyperSQL 2.2.8。 我正在使用hibernate从本地HyperSQL 2.2.8进行读写 我像这样运行hsldb作为服务器 java-cp../lib/hsqldb.jar org.hsqldb.server.server--database.0文件:mydb--dbname.0xdb 我的问题是第一个客户

Hibernate 休眠:删除未被子级引用的父级

当没有引用父对象的子对象时,我需要删除该父对象。这在Hibernate中可能吗?(实际上我使用的是fluent nhibernate,但我认为答案是一样的) e、 我有许多来自不同公司的客户。当我删除公司的最后一个客户时,我也想自动删除公司详细信息 与正常的亲子关系不同,我不会有意识地选择删除公司。就用户而言,他只是删除了一个客户;删除未被引用的公司只是一个副产品。Hibernate不会神奇地帮你做到这一点。您必须自己实施它: Company company = customer.getComp

带实体的Hibernate sql命名查询

我需要构建一个sql查询,该查询返回一个包含实体的bean。。。我试着用一个例子来解释我 这是我想从查询中获取的bean: public class EventiPerGiorno { private Eventi evento; // THIS IS AN ENTITY private Date primoSpettacolo; //SCALAR private int spettacoli; //SCALAR ... } 这是xml查询映射: <sql-q

Hibernate 双向OneToOne映射:从实体到子类,从超类到实体?

我试图在hibernate中建立一个复杂的双向OneToOne映射。我上了以下课程: @实体 @继承(策略=InheritanceType.JOINED) 公共类父类{ @奥内托内 私人实体; } @实体 公共类Child1扩展父{} @实体 公共类Child2扩展父{} @实体 公共类实体{ @OneTONE(mappedBy=“anotherEntity”) 私生子女1名子女1名; @OneTONE(mappedBy=“anotherEntity”) 私生子女2名子女2名; } 这里的问

Hibernate 具有两组独立限制的单条件查询

我想知道您是否可以创建一个单一的条件查询,然后以某种方式创建两个独立的限制集,其中包含两个完全不同的结果集,而不必发出第二个查询?如果您找到NHibernate的.Future()的等价项,那么yes@Firo,我不确定我是否理解你的答案。NET的Hibernate NHibernate端口有一个进行批处理查询的功能,但我不知道Hibernate中是否也有一个相同的功能。这只是ab关键字,可能有助于搜索

为什么hibernate persist()很慢?就我的情况而言,它只是慢了一点?

我试图通过创建实体对象并使用Hibernate作为JPA提供程序调用persist()来填充数据库 首先,数据库是空的,然后我在一个循环中创建实体实例(100000个实例),并将每个实例持久化 此操作需要10分钟才能将所有实体注入数据库。 我正在使用免费的亚马逊云服务器机器,600 MB的RAM内存 循环如下所示: @Transactional void populateDataBase() { for(int i=0; i<100000; i++) { M

使用Hibernate工具添加Hibernate搜索注释

我正在使用带注释的hibernate和带freemarker模板的hibernate工具来自动生成我的orm dao类 现在我想实现hibernate搜索,因此我想向这些类和属性添加hibernate搜索注释 但我不知道如何以及在何处配置希望hibernate工具注释的类和属性 freemarker模板的问题是,我通常只能为所有类定义类生成策略。但是对于hibernate搜索实现,我只想注释这些类中的特定类和特定属性 有没有办法定义我希望hibernate工具注释哪些类和getter属性?或者在

Hibernate 删除域对象和外键

我有一个中等复杂的设计,我正试图从系统中删除一个“ItemCollection”。此对象属于发布者(一对多),具有MediaItems(一对多)和发布(一对一)。该发布被非所有者多对多中的其他两个对象引用 当我删除ItemCollection(通过调用父集合上的removeFrom()来删除)时,会触发级联,但在多对多集合上会出现外键异常。我已尝试在beforeDelete()中从其他集合中删除过帐,尽管日志输出告诉我该操作正常,但外键异常仍然发生 主要层次结构如下: class Publi

Hibernate 为什么重写会更改列名

我使用的是rev监听器的默认实现,正如预期的那样,我的REVINFO表中的列是:revtstmp和rev 然而,当我推翻默认值时,我所做的只是: ... MyRevisionEntity extends DefaultRevisionEntity 这些列名被更改为“timestamp”和“id” 有人知道为什么吗 使用envers 4.1.5_最终版本 **编辑** 由于还没有人回答,我将补充更多信息 Adam Warski编写的“DefaultRevisionEntity”类只定义了两个成员

Hibernate 使用复合键一对一休眠

我的映射文件有一个问题,它与组合主键的一对一关系有关,其中键的字段名不匹配 表1: <class entity-name="CompPkTest" table="compPkTest" catalog="data" mutable="true" polymorphism="implicit" dynamic-update="false" dynamic-insert="false" select-before-update="false" optimistic-lock="version"

Hibernate 使用@NoTransaction时如何创建新事务?

我想到的一个解决办法是创造一份工作。还有其他的吗?看看JPAPlugin.startTx(只读)-也许您可以直接使用它或从中获取代码。但这确实让我想知道你为什么要这么做 我认为创造一份工作听起来是个更好的主意 看看JPAPlugin.startTx(只读)-也许您可以直接使用它或从中获取代码。但这确实让我想知道你为什么要这么做 我认为创造一份工作听起来是个更好的主意 只是一个状态检查页面,没有更多。我会用一份工作。只是一个状态检查页面,没别的。我要找份工作。 @NoTransaction pub

Hibernate 如何将基本体的ArrayList映射到单个列?

假设我有以下情况: 目标车有一个价格列表,都是数字。在Hibernate中是否可以将所有价格保存在一列中?我知道这违反了第一个正常形式,但可能有一些情况下,您不希望将它们保存在单独的表中,就像经典的一对多或多对多关系中那样 在JDO中,我可以通过将ArrayList保存在BLOB列中来轻松实现这一点 一些有用的相关SOF问题:和 任何想法都将受到高度赞赏 AFAIR,Hibernate将使用本机序列化并将结果字节存储在列中。但我不会这样做,而是使用专用转换,使价格在数据库中可读,并且至少能够在不

Hibernate Java:如何按entity.fieldA排序

我在查询数据库并根据entity.fieldA对结果集排序时遇到问题 例如,在学校环境中(学生、教师)。我有一位老师和许多学生 //Student class @ManyToOne(fetch = FetchType.LAZY) @JoinColumn(name = "TEACHER_ID") private Teacher teacher; 我希望我的查询按teacher.name排序,但我只能使用teacher 因此,有一个问题: FROM Student s ORDER BY s.tea

Hibernate criteria.add和criteria.equals之间的差异

标准之间的区别是什么。在Hibernate标准中添加和标准。等于 举个例子: 返回25条记录 criteria.equals(Restrictions.eq("templateType", TemplateType.DEFAULT_TEMPLATE)); 返回2条记录: criteria.add(Restrictions.eq("templateType", TemplateType.DEFAULT_TEMPLATE)); 当我执行hibernate.show_sql时,输出为 对于标准

hibernate db2忽略空间上的连接

我有一个遗留DB2数据库上的hibernate映射。特定表具有另一个表的外键。当与另一个表没有关联时,此列将填充空格而不是null。我在第二张桌子上有一个多对一的助手。问题是,对于外键字段中有空格的每一行,都会对数据库执行SQL,因为缓存中没有该数据库的值。有没有一种方法可以忽略join中用空格填充的字段,这样就不会向数据库发出请求?为什么不简单地将此条件添加到WHERE子句中(而不是join条件) 其中_列“”和。。。 WHERE THE_COLUMN <> ' ' AND .

Hibernate 使用orderby子句休眠多对多映射不起作用

我有一个关于使用@OrderBy注释的hibernate多对多映射的问题。假设我们有表A、B和粘合表A_B。我希望集合A.B按字段B.date排序。当我运行查询时,我得到一个异常,它说: org.hibernate.exception.SQLGrammarException: ERROR: column b1_.date does not exist 问题是hibernate创建的查询是在A_B表中搜索列,而不是在B表中搜索列。我一直在网上搜索,遇到了同样的问题,但没有正确的答案(),但同时也

QueryDSL(JPA)dayOfYear,dayOfMonth转换为hibernate

运行此java代码时出现异常: List<Tuple> companies2accLoginCount = accoutLoginCountQuery .listDistinct(new QTuple(QCompany.company1.id, QAccountLogin.accountLogin.loginDatetime.dayOfMonth().countDistinct())); 每年的第二天也是如此。似乎在年的某一天或月的某一天之后

Hibernate 加入vs加入获取

我知道有很多关于join和join-fetch的问题。 差异解释如下: “fetch”联接允许使用单个select将值的关联或集合与其父对象一起初始化。这在集合的情况下特别有用。它有效地覆盖了关联和集合的映射文件的外部联接和延迟声明 然而,当我有一个使用内部或外部连接而不进行抓取的条件或HQL时,我注意到实体似乎被完全抓取(我的hibernate映射使用FetchType.LAZY)。 我只是在写“join fetch”时才想到这一点。 所以我看不出这种情况有什么不同 我一定是遗漏了什么。 有人

Hibernate 具有多个表的JPA多态性关联

一个实体是否可能与多个表有一对一的多态性关联。假设一个实体有两个特定列,用于: link_type—标识应与哪个表关联的列 link_id—一旦标识了表,就定义表外键的列。我想您指的是多态关联的继承映射 实体继承 JPA有一个称为实体继承的强大功能,类似于java中的类继承。实体类可以扩展非实体类,非实体类可以扩展实体类。实体类可以是抽象的,也可以是具体的 继承策略 有3种继承策略 每个具体类的表策略 连接子类策略 单表策略 每个具体班级策略的表格 每个具体类的表继承映射策略基于为每个实体映

Hibernate 方法返回一个列表,以从包含内部联接的查询填充DataTable

我在Eclipse中使用primefaces组件和Hibernate的数据持久性创建了一个JSF项目。在这个项目中,对于每个模型类,至少有两个视图(xhtml页面),一个DAO类和一个控制器类。在DAO中,有以下方法返回用于填充数据表的对象列表。下面是我用来填充数据表的DAO和xhtml页面的片段 textobaseado.java public List<Textobase> listar() { List<Textobase> listTexto

Hibernate:如何检查是否将查询插入数据库中,因为save()方法中的任何一个都不会返回任何内容

要使用save而不是executeUpdate query=session.createSQLQuery(“插入商户配置文件(用户ID、商户代码、商户名称、状态、电话号码,”+ “传真号码、电子邮件id、激活日期、到期日期、关联的组)值(?,,,,,,,,,,,,)”; query.setParameter(0,userId); query.setParameter(1,dto.getMerchantCode()); setParameter(2,dto.getName()); setParam

如何删除hibernate一对多关系中的记录

我有两个表,一个是QuickLinks,另一个是OrgUnit。OrgUnit表是父表,QuickLinks表是子表。我在QuickLinks表中添加了多对一的关系 @Entity @Table(name ="TBL_STD_QUICK_LINKS") public class QuickLinks { @Id @GeneratedValue @Column(name = "FLD_QUICK_LINK_ID") private Long quickLinkId;

hibernate查询从不同的主表获取数据

我有一个对其他主表有很多引用的表,我想知道如何从所有这些表中获取特定记录的数据。比如说我的表有以下列: ID(PK),FName,LName,市场ID,行业ID,货币ID等等 我想获取一个特定的记录,但不是我需要的ID,而是主表条目的实际名称。我不确定是否有直接的方法,但是,您可以将@manytone映射到主表,生成的实体如下所示 @ManyToOne @JoinColumn(name="sector_id",cascade_type= Cascade.all,lazy=true) privat

加速Hibernate EntityManager初始化

我正在使用HibernateJPA提供程序。加载@Entity注释类并构建各种类型树和查询树似乎需要花费3秒钟的大量时间。有没有办法加快速度?它确实使单元测试令人沮丧,即使它只发生一次 我已经关闭了架构验证和更新。谢谢。您是否将EntityManagerFactory用作静态?注:3秒钟使用hibernate一点也不坏。我是。但是如果我试图调试一个问题并重复运行一个单元测试,我必须等待3-4秒,看看我的代码是否修复了这个问题。如果我运行的是完整的套件,情况还不错,但是我的单元测试非常快。Hibe

Hibernate Grails CXF插件和GORM

我使用的是CXF插件版本2.0.1,并且在SOAP服务方法中简单使用了GORM。当我在服务上运行测试时,它抛出一个异常,表示它无法初始化代理,因为没有会话。根据我做的一些搜索,这是一个Hibernate问题,我假设这意味着GORM尚未正确初始化。有人能给我一个关于如何在endpoint类中手动初始化GORM的指针吗 您习惯于在控制器操作(或从那里调用的方法)中执行Hibernate工作,并且那里总是有一个活动的Hibernate会话,因为Grails使用视图模式中的Open Session,在请

在hibernate中定义列

我已经创建了两个表 public class A { @Column(name = "username", unique = true, nullable = false) @Id String username; @OneToMany(cascade = CascadeType.ALL, fetch = FetchType.LAZY) @JoinColumn(name = "username", nullable = false) List<B> Keys = new Arr

Hibernate 具有集合集合的JPA实体

我希望获得一个包含集合及其集合的实体,但是我面临一些问题,如“无法同时获取多个包”或空结果集,我知道它应该包含条目。整个事情都是关于饮食的,所以我有以下几点: public class Diet extends BaseEntity{ @NotEmpty @Column(unique = true) private String name; @OneToMany(cascade=CascadeType.ALL, mappedBy = "diet") @LazyCollection(LazyCol

Hibernate 标准与投影相结合

我将创建此SQL查询的条件等效项: SQL: 选择 订单号, 书名, orderitem.quantity 来自orderitem book.id=orderitem.book\u id上的内部连接簿 orders.id=orderitem.orders\u id上的内部联接订单 其中user_id=1 这是我的条件查询: Criteria c = getSession().createCriteria(OrderItem.class, "oi"); c.setProjection(Proje

在Hibernate中使用关联映射有什么好处

在Hibernate中,我们可以通过关联建立实体之间的关系 但在实体之间建立关系的好处是什么 谁能给我举个好例子 提前谢谢你这更像是一个设计或数据库问题,而不是一个休眠问题,但让我们以更一般的方式回答它: 在每个项目或系统中,都有使该系统工作的对象或实体。但是这些对象是为了相互之间以及与系统进行通信和交互,所以问题是如何设计这些交互 关系映射< /强>是这个问题的答案:在任何系统中,关系被用来指定系统对象或组件之间的交互> /强>它们之间的交互类型>强>,让我们来看看下面的同一个关联例子:

Hibernate 如何使用JPA删除具有OneToMany关系的外键条目

我有一本书,作者和分类实体 书与作者有一种@onetone关系,书与类别也有一种@OneToMany关系 Book实体看起来像: @Entity public class Book { @Fetch(FetchMode.JOIN) @OneToOne(orphanRemoval = true, mappedBy = "book", optional = true) private Author author @Fetch(FetchMode.JOIN)

hibernate在哪个版本中添加了对jpa的支持

根据hibernate wiki页面,谁能告诉我哪个版本的hibernate开始支持jpa 截至2010年,Hibernate 3(版本3.5.0及更高版本)是Java持久性API 2.0规范的认证实现,通过核心模块的包装提供了与JSR 317标准的一致性 所以我想说3.5.0版是最早支持JPA的版本。支持的JPA版本:JPA 1.0:ORM 3.2+JPA 2.0:ORM 3.5+JPA 2.1:ORM 4.3+

Hibernate JPA查询返回一个映射

我需要我的JPA查询返回Map 例如,如果我的表是: Person(firstName,lastName) 并包含两行: “纳比尔”,“贝拉克比尔” “约翰”,“列侬” 我需要我的查询返回映射的列表 第1行: key=firtName 价值=纳比尔 -- key=lastName 值=Belakbir 第2行: key=firtName 价值=约翰 -- key=lastName 值=列侬 提前谢谢 Nabil如果您的示例中的键名称重复。Map将覆盖这些值,并最终生成一个只

Hibernate 通过实体ManagerFactory注册SQL函数

在Hibernate中,我可以通过配置对象注册自定义SQL功能: public void registerExtensions(Configuration config) { config.addSqlFunction("s_sum", new StandardSQLFunction("sum")); ... } 我希望将此配置从“遗留”Hibernate切换到JPA 我已经读过,我可以通过专门化那里的方言来注册SQL函数: 这不是我想做的 在构建实体管理器工厂时,是否有方法注

Hibernate 无法释放批处理语句

我正在尝试批量更新/插入 这是代码 Session session = entityManager.unwrap(Session.class); //Transaction tnx =null; try { session.getTransaction().begin(); // insert new records if (container.getInsertMenuItems() !=

Hibernate StaleStateException:批处理更新从更新[0]返回了意外的行计数;实际行数:0;预期:1

我在这个网站上找到了太多的答案,但我无法解决这个错误。请帮我解决这个问题。 执行(事务)tx.commit时引发异常,但我不知道原因。如果我注释tx.commit,员工值将插入到表中,但证书值不会插入到证书表中。请检查它 完全例外 班级员工 证书类 主类 公共类EmployeeDetails{ 私有静态SessionFactory=null; 公共静态void main(字符串[]args){ 试一试{ 工厂=新配置().configure().buildSessionFactory(); Sy

Hibernate 我有两个实体,我想使用jpa存储库对它们执行连接查询,并检索新的连接对象

在我的项目中,我有两个带有两个实体的表。 他们之间有外键关系 我想加入它们并返回一个新的对象类型。我使用持久性从db方案生成实体 我的第一个实体是UserEntity package com.obss.Model.Jpa; import javax.persistence.*; @Entity @Table(name = "user", schema = "conmigodb", catalog = "") public class UserEntity { private int use

Hibernate 一个到复合主键jpa之间的映射

我有一个用例,两个表有复合主键,一个表和数据库中的另一个表有关系,如何在程序级获得这种关系,如何声明bean类 //表项目的复合主键 @Embeddable @Data public class ProjectId implements Serializable { private static final long serialVersionUID = 12233365L; @Column(name = "PROJECT_CODE")

Hibernate 一对多关系更新现有值

使用Hibernate和JPA注释。我正在使用以下代码更新一对多关系中的实体。在这里,一个挑战可以有许多目标。我获取所有现有目标,并尝试更新所有值,但无法将其保存在数据库中。然而,如果我增加了新的目标,那么这些目标就会毫无问题地持续下去。 我没有看到任何错误或例外。 使用Hibernate更新列表并在DB中持久化不是正确的方法吗 final Challenge challenge = findChallengeById(challengeId); challenge.getGoals().fo

Hibernate SpringDataJPA如何管理每个事务的会话?

对于spring boot+hibernate我知道会话是从sessionFactory创建的,我们从会话中创建事务对象并执行任何DB操作,如save()、fetch(),然后执行提交并关闭会话。 spring boot是否为每个DB查询打开会话,并在操作后关闭会话?spring boot默认使用“在视图中打开会话”(反)模式 否则,会话将绑定到事务,事务通常由注释定义。 您还可以使用显式事务控制 如果您没有明确声明任何事务,标准Spring Data JPA repositories方法将在方

上一页   1   2   3   4   5    6  ... 下一页 最后一页 共 429 页