Tag: hibernate

hibernateJPA序列(非Id)

是否有可能使用一个DB序列的某些列不是标识符/不是一个复合标识符的一部分 ? 我使用hibernate作为jpa提供程序,并且我有一个表有一些生成值的列(使用序列),尽pipe它们不是标识符的一部分。 我想要的是使用一个序列来创build一个实体的新值,其中序列的列不是主键的一部分: @Entity @Table(name = "MyTable") public class MyEntity { //… @Id //… etc public Long getId() { return id; } //note NO @Id here! but this doesn't work… @GeneratedValue(strategy = GenerationType.AUTO, generator = "myGen") @SequenceGenerator(name = "myGen", sequenceName = "MY_SEQUENCE") @Column(name = "SEQ_VAL", unique = false, nullable = false, insertable = true, […]

使用睡眠()为单个线程

我相当新的Java,并开始进入使用不同的线程,以便对我的代码的一部分使用wait()或sleep() ,并让其他人仍然运行。 对于这个项目,我正在使用带有javax.swing.*和java.awt.* JFrame导入。 我想要做的是有一个线程(在我的代码中,它是主要的起始线程)允许玩家在井字棋板上select一个空间,当他们点击它时,它会改变图标,那么AI会等待1秒,然后再从我创build的第二个线程回放。 不幸的是,每当我调用ait.sleep(1000) ( ait是我的线程名)时,两个线程在完成执行之前等待1秒钟。 谁能告诉我为什么睡一个线程是停止我的整个执行?

将postgreSQL JSON列映射到Hibernate值types

我在postgreSQL数据库(9.2)有一个jsontypes的列表。 我很难将此列映射到JPA2实体字段types。 我试图使用string,但是当我保存实体时,我得到一个exception,它不能将字符变换为JSON。 处理JSON列时使用的正确的值types是什么? @Entity public class MyEntity { private String jsonPayload; // this maps to a json column public MyEntity() { } } 一个简单的解决方法是定义一个文本列。

JPA CascadeType.ALL不会删除孤儿

我在使用JPA删除孤立节点时遇到了以下映射问题 @OneToMany (cascade = CascadeType.ALL, fetch = FetchType.EAGER, mappedBy = "owner") private List<Bikes> bikes; 数据库中存在孤立angular色的问题。 我可以使用注释org.hibernate.annotations.Cascade Hibernate特定的标签,但显然我不想将我的解决scheme绑定到Hibernate实现。 编辑 :看来JPA 2.0将包括对此的支持。

Hibernate:session.get和session.load之间的区别

从API中,我可以看到它与代理有关。 但是我找不到很多关于代理的信息,不明白调用session.get和session.load的区别。 有人可以解释或指引我参考页面? 谢谢!!

将Hibernate代理转换为真实的对象

在Hibernate会话期间,我正在加载一些对象,其中一些由于延迟加载而被加载为代理。 一切正常,我不想closures延迟加载。 但后来我需要通过RPC将一些对象(实际上是一个对象)发送到GWT客户端。 碰巧这个具体的对象是一个代理。 所以我需要把它变成真正的对象。 在Hibernate中我找不到像“实现”的方法。 我怎样才能把代理的一些对象变成知道他们的类和ID的实体? 目前唯一的解决scheme是从Hibernate的caching中清除对象并重新加载它,但是由于很多原因它确实很糟糕。

hibernate5: – org.hibernate.MappingException:未知的实体

我得到的错误消息org.hibernate.MappingException: Unknown entity当我试图集成hibernate5.0与MySQL 这似乎是hibernate5.0.0和5.0.1的一个问题。 这与hibernate4.3.9工作正常 Maven的依赖 <dependency> <groupId>org.hibernate</groupId> <artifactId>hibernate-core</artifactId> <version>5.0.0.Final</version> </dependency> <dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> <version>5.1.36</version> </dependency> 的hibernate.cfg.xml <session-factory> <!– Database connection settings –> <property name="connection.driver_class">com.mysql.jdbc.Driver</property> <property name="connection.url">jdbc:mysql://localhost:3307/SampleDB </property> <property name="connection.username">root</property> <property name="connection.password"></property> <!– JDBC connection pool (use the built-in) –> <property name="connection.pool_size">1</property> <property name="dialect">org.hibernate.dialect.MySQLDialect</property> <!– Echo all executed SQL to stdout –> <property name="show_sql">true</property> <!– […]

使用JPA创build具有保留字名称的字段

@Column(name="open") 用hibernate的sqlserver方言。 [SchemaUpdate] Unsuccessful: create table auth_session (id numeric(19,0) identity not null, active tinyint null, creation_date datetime not null, last_modified datetime not null, maxidle int null, maxlive int null, open tinyint null, sessionid varchar(255) not null, user_id numeric(19,0) not null, primary key (id), unique (sessionid)) [SchemaUpdate] Incorrect syntax near the keyword 'open'. 我会希望hibernate在创build表时使用带引号的标识符。 任何想法如何处理这个…除了重命名字段?

什么是hibernate加载?

Java中的延迟加载是什么? 我不明白这个过程。 任何人都可以帮助我理解延迟加载的过程吗?

ConcurrentModificationException和一个HashMap

我正在使用JPA持久对象。 主对象与另一个对象拥有一对多的关系。 另一个对象存储在一个HashMap中。 什么样的同步可以解决这个问题? 这似乎发生在完全随机的时间,是非常不可预知的。 这是我得到的例外: Exception in thread "pool-1-thread-1" java.util.ConcurrentModificationException at java.util.HashMap$HashIterator.nextEntry(Unknown Source) at java.util.HashMap$ValueIterator.next(Unknown Source) at org.hibernate.collection.AbstractPersistentCollection$IteratorProxy.next(AbstractPersistentCollection.java:555) at org.hibernate.engine.Cascade.cascadeCollectionElements(Cascade.java:296) at org.hibernate.engine.Cascade.cascadeCollection(Cascade.java:242) at org.hibernate.engine.Cascade.cascadeAssociation(Cascade.java:219) at org.hibernate.engine.Cascade.cascadeProperty(Cascade.java:169) at org.hibernate.engine.Cascade.cascade(Cascade.java:130)