:JPA2.1,扩展具有通用id的基实体的实体。
具有通用id的Entity的接口:
public interface Entity<ID extends Serializable> extends Serializable {
public ID getId();
public void setId(ID id);
}
基本实现(抽象)定义了一些附加的公共属性:
public abstract class BaseEntity<ID extends Serializable> implements Entity<ID> {
pri
让我们考虑两个类,SuperClass和SubClass,它们扩展了它:
Class SuperClass{
int superDataMember;
}
Class SubClass extends SuperClass{
int subDataMember;
}
我需要另一个CompositeClass类,它可以根据某些条件使用超级组合或子组合。我的问题是:我应该用
SuperClass在CompositeClass中的一个实例
- Thus, I can use either `SuperClass` instance or `SubClass` insta
我目前正在为混合起源的对象编写模拟上下文。其中一些对象是从数据库加载的持久hibernate实体。另一些则是新的“模拟”对象,这些对象是临时创建的,以后可能存储在数据库中。
当前的应用程序处理有向图,这些图是从带有Hibernate实体的数据库中加载的。目前,它只是检查循环子结构。映射的排列方式是延迟地从数据库加载Nodes和Edges。这允许我的循环检查器根据直接相关的Nodes中存储的信息,通过延迟获取相邻的Edges来遍历整个图。
Node {
Integer id; // mapped id
List<Edge> edges; // mapped and f
我得到了一个带有映射对象的Hibernate应用程序,问题是当我执行HSQL查询时,我会得到
org.springframework.orm.hibernate3.HibernateQueryException: DescargasTienda is n
ot mapped [from DescargasTienda where fecha = ? and market = ?]; nested exceptio
n is org.hibernate.hql.ast.QuerySyntaxException: DescargasTienda is not mapped [
from Desca
下面是一个错误:
Exception in thread "main" javax.persistence.PersistenceException: Unable to build entity manager factory
at org.hibernate.jpa.HibernatePersistenceProvider.createEntityManagerFactory(HibernatePersistenceProvider.java:66)
at javax.persistence.Persistence.createEntityManagerFa
我知道@JoinColumn用于创建外键列,但我的问题有点不同。我注意到,如果我有带有mapped by的主实体和没有@JoinColumn的依赖实体,那么hibernate无论如何都会正确地创建两个表。
例如,我有护照和护照:
@NoArgsConstructor
@AllArgsConstructor
@RequiredArgsConstructor
@Data
@Entity
public class Person {
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
private int id
我注意到Hibernate不允许删除一对多关系中的实体。我有两个表(和实体),company和employee。
我想删除一个员工,代码如下:
..
company.getEmployees().remove(myEmployee); //employees is a collection in Company, it is mapped as a one-to-many relationship (@OneToMany)
sessionFactory.getCurrentSession().merge(company);
你知道怎样才能强制删除吗?或者至少得到一个例外?
我使用的是hibernate 4.2.18和Oracle 11g
我有以下查询,这些表有索引,包括联接列中的索引,以及index_column中的索引:
/*outer query generated by hibernate*/
select a as a1,
b as b1,
c as c1
from (
/* inner query(the one I have mapped) */
select a, b, c, index_column
from table_1
我确实在使用spring和hibernate时遇到了查询问题。
我有一个名为Car的类,它将ManyToMany映射到我的类清单。Inventory btw不包含对Car类的引用。这会导致spring和hibernate创建映射表car_loading,其中fk指向汽车,fk指向inventory表。
现在我想查询一辆特殊汽车的库存:
String squery = "SELECT i from Inventory i, car_loading loads WHERE i.id = loads.loading AND car = ?";
但是我得到了一个例外
org.hiber
请原谅,因为我是hibernate的新手,关于类似问题的其他答案并没有完全解决这个问题(我确信我的问题是非常基本的)。我正在尝试在我的持久性类中有一个OneToMany和ManyToOne映射。我有以下表格:
city (
id INT AUTO_INCREMENT,
name VARCHAR(255),
)
pincode (
id INT AUTO_INCREMENT,
pincode VARCHAR(6),
city_id INT FOREIGN KEY fk_city_id ON city(id)
)
area (
id INT AU
com.something.SuperClass:
@Entity
@Inheritance(strategy = InheritanceType.TABLE_PER_CLASS)
public abstract class SuperClass implements Serializable {
private static final long serialVersionUID = -695503064509648117L;
long confirmationCode;
@Id
@GeneratedValue(strategy = GenerationT
我在Java中测试了下面的代码,看看重写私有方法的实现时会发生什么。
/* package whatever; // don't place package name! */
import java.util.*;
import java.lang.*;
import java.io.*;
/* Name of the class has to be "Main" only if the class is public. */
class Superclass {
public void runDo() {
this.doSomethin
在运行RestAssuredMockMvc和Spring时尝试测试时出错:
INFO - Mapped "{[/mysql/hello],methods=[GET],params=[],headers=[],consumes=[],produces=[],custom=[]}" onto public java.lang.String ee.t.mysql.controllers.testController.printHello()
INFO - HV000001: Hibernate Validator 5.1.2.Final
INFO - Looking for @Con
我有一个web应用程序,它使用Hibernate在数据库上进行CRUD操作。我收到一个错误,说表没有映射。请参阅Java文件:
错误消息:
org.springframework.orm.hibernate3.HibernateQueryException: Books is not mapped [SELECT COUNT(*) FROM Books]; nested exception is org.hibernate.hql.ast.QuerySyntaxException: Books is not mapped [SELECT COUNT(*) FROM Books]
at org.
我有两类团队和用户:
@Entity
@Table(name = "team")
@Cache(usage = CacheConcurrencyStrategy.NONSTRICT_READ_WRITE)
public class Team extends AbstractAuditingEntity implements Serializable, Participant {
private static final long serialVersionUID = 1L;
@Id
@GeneratedValue(strategy = Genera
在两个实体之间进行一对一映射时,我遇到了下面的异常。%1第一个实体具有嵌入的组合键。第二个实体也具有嵌入的组合键。这些表是遗留系统的一部分。数据是扁平的,关系没有很好地定义。请帮帮忙。
Caused by: org.hibernate.AnnotationException: referencedColumnNames(FLAG_NAME) of net.javabeat.spring.model.ReferralsM.mnEditFlag referencing net.javabeat.spring.model.MnEditFlag not mapped to a single prope
我们正在对Oracle数据库使用Hibernate注解3.4.0GA和Hibernate Core 3.3.2.GA (也称为当前稳定版本
我们有一个与base=1的一对多映射,这种映射在很长一段时间内都工作得很好,但是上周我们在数据库中发现了一些索引列包含0值的条目,这导致了各种问题。
所以我的问题是:当一对多关系被映射到一个base=1时,有没有人知道一种将值0放入索引列的方法?可能与泛型或MappedSuperclass的使用有关。
请注意,代码相当复杂,因为还涉及到继承。
以下是类的相关部分:
// SuperClass of the One side
@MappedSuperclas
我有三个类,一个SuperClass、一个SubClass和一个测试类。SuperClass是抽象的,并且SubClass扩展了SuperClass,测试类与它们之间没有任何关系。所以
public abstract class SuperClass {...}
public class SubClass extends SuperClass {...}
public class TesterClass {...}
SuperClass和SubClass都有一个toString()方法,所以看起来更像
public abstract class SuperClass {
public
试图使用泛型类型类,但遇到了以下问题:
类型错配:推断类型为ChildClass,但SuperClass<SuperType>是预期的
open class SuperClass<T> where T: SuperType {
fun modifySomething(input: T): T {
input.someValue.inc()
return input
}
}
open class SuperType {
val someValue: Int = 0
}
class ChildClass :
我有三个实体:用户、团队和TeamInvite。每个用户都有一个团队。每个用户都可以通过创建一个TeamInvite来邀请其他用户加入他们的团队。当接受TeamInvite时,每个用户的*Team*都会被更新。TeamInvites不影响用户,只影响他们的团队。
@Entity
public class Team extends Model {
@OneToOne
public User user;
@ManyToMany(cascade=CascadeType.ALL) //I've also tried CascadeType.PERSIST