My *_*rts 5 java hibernate jpa playframework
我正在使用Play框架构建一个项目,我无法理解JPA @OneToOne relationships.
我目前有两个班:
@Entity
@Table( name="users" )
public class Users extends Model {
@OneToOne( mappedBy="userId", fetch=FetchType.LAZY, cascade = CascadeType.ALL )
@ForeignKey( name="userId", inverseName="userId" )
UserSettings userSettings;
public userId;
public userName;
}
Run Code Online (Sandbox Code Playgroud)
@Entity
@Table( name="user_settings" )
public class UserSettings extends Model {
@OneToOne( cascade = CascadeType.ALL,targetEntity=User.class )
public String userId;
public String xml;
public UserSettings( String userId ){
this.userId = userId;
}
}
Run Code Online (Sandbox Code Playgroud)
我的想法是,我试图将该userId字段设置为内部User的外键UserSettings.我尝试了几种不同的方法来实现这一点,我的代码总是抛出一个错误.我回忆的最常见的错误是:
引用的属性不是(一个|多个)ToOne.
然而,当我尝试设置userId在UserSettings使用上面的代码,我收到以下异常:
已捕获到javax.persistence.PersistenceException,org.hibernate.PropertyAccessException:无法通过reader.User.id的反射getter获取字段值
任何人都可以帮助解释我如何实现我期望的目标吗?
| 归档时间: |
|
| 查看次数: |
5139 次 |
| 最近记录: |