我有一个带有Primefaces和JSF的JavaEE项目,使用Hibernate访问数据库。让我困惑的是,应用程序运行良好,但是Eclipse说@IdClass中有错误--与ID类属性Site匹配的属性没有正确的site类型。
如果在OperatorSiteCompositeKey类中,我用Long更改了"Operator“和"Site”,那么错误通知就会消失。
请解释一下为什么会发生这种情况,以及如何解决这个问题?
提前谢谢你!
@Entity
@IdClass(OperatorSiteCompositeKey.class)
public class OperatorSit
如下表所示:
Car
int id PK
int modelId FK
CarDetails
int carId PK, FK to Car.id
varchar(50) description
如何指出@Id of CarDetails也是Car的外键
我试过:
@Entity
public class Car {
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
private int id;
@ManyToOne
@JoinColumn(name = "modelId
我正在用JPA实体实现下表结构,其中显示的属性表示PK/FK列。protocolId是自动生成的,并在调用persist()之前在所有实体中设置为null。整个结构一次被存储。
使用和,我在Position中解析了派生标识
@Entity
@Table(name="...")
@IdClass(PositionID.class)
public class Position {
@Id
@Column(name = "POSITION_ID")
private int positionId;
@Id
@Many
我在做一个类似POS的系统。我想知道如何使用JPA映射子类(这是我的DAO)。Product类有产品详细信息,OrderProduct类有关于Product和订单的详细信息。
@Entity
@Table(name="products")
public class Product implements Serializable{
@Id
@Column(name="id")
@GeneratedValue(strategy = GenerationType.AUTO
public int getId(){ return id;}
我的JPA代码可以在eclipse Helios中很好地编译,在生产中也可以很好地工作。但在较新版本的eclipse中,在使用javax.persistence.*包中的注释@IdClass时,我收到错误消息"ID class不应被映射“。
@Entity
@IdClass(RetailLocationPK.class) // Generates "ID class should not be mapped" error
@Table(name="loc_rtl_loc")
public class RetailLocation implements
我试图在我的基于JPA的应用程序中添加一个NOSQL数据,遵循。
我要添加的实体是在没有NOSQL的情况下以这种方式建模的:
Triple.java
@Entity
@IdClass(ConceptPk.class)
@Table(name = "triple")
public class TripleDBModel {
protected List<Annotation> annotations;
public Concept conceptUriSubject;
public Concept conceptUriObject;
p
我正在开发一个使用JPA/Hibernate和遗留数据库的web应用程序。下面的表使用underlying_id和value_date作为组合键,其中underlying_id也是外键
CREATE TABLE `underlying_settle_value_table` (
`underlying_id` varchar(250) NOT NULL,
`value_date` date NOT NULL,
`settle_value` double NOT NULL,
`risk_free_rate` double NOT NULL,
`div_yield` doubl
我有一个用户获得一些配置文件的用例:一对多关联。
这是通过伪sql中的这些遗留表进行映射的。
TABLE USER
(
ID PK
SURNAME VARCHAR2(45 BYTE) NOT NULL,
NAME VARCHAR2(45 BYTE) NOT NULL,
USER_ID NUMBER
)
TABLE USER_PROFILES
(
USER_ID NUMBER NOT NULL,
ID_PROFILO NUMBER NOT NULL
我有两个非常简单的JPA实体,用于学习目的。现在,我尝试创建一个双向一对一的关系,但是在DB级别上只创建了Employee端的连接:
ID PARKINGSPACE_ID
在PARKINGSPACE方面,这是创建的
ID
如果这是个微不足道的问题,我很抱歉,但我真的不知道出了什么问题。我试图在停车位一侧添加目标实体,使两者的关系成为强制性的。我在其他情况下也使用了这种关系,没有问题。但我想知道这里有什么问题。
我使用JPA2.0,hibernate 4.1.7作为提供程序,H2作为底层DB。所有内容都在Java env中运行。
@Entity
public class Employee {
我有表table_a和table_b以及外键table_a_id引用table_a中的主键id。
现在我有两个JPA实体,A和B。A包含对B的引用。
public class A {
...
@JoinColumn(name="table_a_id")
private B b;
}
这会引发异常,说明在table_a_id中找不到列table_a。我知道JPA正在table_a中寻找外键table_a_id,但是我如何解决这个问题而不将外键移动到table_a
当我只映射了一个表时,我可以使用JPA获得值。
现在,当我去映射相关的表时,我得到了错误
Only one may be defined as writable, all others must be specified read-only.
Mapping: org.eclipse.persistence.mappings.OneToOneMapping[userId1]
我使用的是
在其中一个子表中,我有以下代码
@OneToMany(cascade = CascadeType.ALL, mappedBy = "albumId")
private Collectio
我有两个表和另外一个表来映射前面两个表的关系,如何使用Spring data JPA高效、自动地将数据插入到映射表中?下面是表结构。
User (id (PK),name,email,userRoleId) Role (id (PK),name,userRoleId)角色UserRole (id (PK),userId (FK <- ),roleId (FK <- ))
我有一个非常简单的Hibernate关系,它给了我以下例外:
Unable to configure EntityManagerFactory
Caused by: java.lang.NullPointerException at org.hibernate.cfg.annotations.CollectionBinder.
bindManytoManyInverseFk(CollectionBinder.java:1370)
我不知道如何使用注释来映射这个图。
这里的代码非常简单,只有两个类和一个Id类。
PROFILE类
@Entity
public class Profile {
如果你有一个像这样的IdClass
public class EmployeePK implements Serializable {
private String empName;
private Date birthDay;
public EmployeePK() {
}
public String getName() {
return this.empName;
}
public void setName(String name) {
this.empName = name;
}
public Date getBirthDay() {