- mongodb - 在 MongoDB mapreduce 中,如何展平值对象?
- javascript - 对象传播与 Object.assign
- html - 输入类型 ="submit"Vs 按钮标签它们可以互换吗?
- sql - 使用 MongoDB 而不是 MS SQL Server 的优缺点
虽然这个问题被问了很多次,我已经使用了所有的建议,但我仍然收到这个错误。
User.java 是
@Entity
@Table(name = "USER")
public class User implements UserDetails, Serializable {
private static final long serialVersionUID = 2L;
@Id
@Column(name = "USER_ID")
@GeneratedValue(strategy = GenerationType.IDENTITY)
private long id;
@Column(name = "USERNAME")
private String username;
@Column(name = "PASSWORD")
private String password;
@Column(name = "NAME")
private String name;
@Column(name = "EMAIL")
private String email;
@Column(name = "LOCKED")
private boolean locked;
@OneToMany(cascade=CascadeType.ALL, fetch = FetchType.EAGER)
@ElementCollection(targetClass=Role.class)
@Column(name = "ROLE_ID")
private Set<Role> roles;
@Override
public GrantedAuthority[] getAuthorities() {
List<GrantedAuthorityImpl> list = new ArrayList<GrantedAuthorityImpl>(0);
for (Role role : roles) {
list.add(new GrantedAuthorityImpl(role.getRole()));
}
return (GrantedAuthority[]) list.toArray(new GrantedAuthority[list.size()]);
}
@Override
public boolean isAccountNonExpired() {
return true;
}
@Override
public boolean isAccountNonLocked() {
return !isLocked();
}
@Override
public boolean isCredentialsNonExpired() {
return true;
}
@Override
public boolean isEnabled() {
return true;
}
public long getId() {
return id;
}
public void setId(long id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getEmail() {
return email;
}
public void setEmail(String email) {
this.email = email;
}
public boolean isLocked() {
return locked;
}
public void setLocked(boolean locked) {
this.locked = locked;
}
@Override
public String getUsername() {
return username;
}
public void setUsername(String username) {
this.username = username;
}
@Override
public String getPassword() {
return password;
}
public void setPassword(String password) {
this.password = password;
}
public void setRoles(Set<Role> roles) {
this.roles = roles;
}
public Set<Role> getRoles() {
return roles;
}
}
Role.java 是
@Entity
@Table(name="ROLE")
public class Role implements Serializable {
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
@Column(name="ROLE_ID")
private long id;
@Column(name="USERNAME")
private String username;
@Column(name="ROLE")
private String role;
public long getId() {
return id;
}
public void setId(long id) {
this.id = id;
}
public String getUsername() {
return username;
}
public void setUsername(String username) {
this.username = username;
}
public String getRole() {
return role;
}
public void setRole(String role) {
this.role = role;
}
}
这是我第一次尝试使用 JPA 进行 hibernate 注释。所以任何建议都会非常有帮助。
对于 hibernate ,pom.xml 的依赖项是:
<dependency>
<groupId>org.hibernate</groupId>
<artifactId>hibernate</artifactId>
<version>3.5.4-Final</version>
<type>pom</type>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>org.hibernate</groupId>
<artifactId>hibernate-annotations</artifactId>
<version>3.5.4-Final</version>
<type>jar</type>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>org.hibernate</groupId>
<artifactId>hibernate-core</artifactId>
<version>3.5.4-Final</version>
<type>jar</type>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>org.hibernate</groupId>
<artifactId>hibernate-validator</artifactId>
<version>3.1.0.GA</version>
<type>jar</type>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>org.hibernate</groupId>
<artifactId>hibernate-entitymanager</artifactId>
<version>3.5.4-Final</version>
<type>jar</type>
<scope>compile</scope>
</dependency>
我不知道故障所在。
谢谢。
最佳答案
我在 @ManyToOne
列中遇到了同样的问题。它被解决了......以愚蠢的方式。我有公共(public) getter 方法的所有其他注释,因为它们被父类覆盖。但是最后一个字段被注释为私有(private)变量,就像我项目中的所有其他类一样。所以我得到了相同的 MappingException
没有原因。
解决方案:我将所有注释都放在公共(public) getter 方法中。我想,当私有(private)字段和公共(public) getter 的注释混合在一个类中时,Hibernate 无法处理这种情况。
关于java - org.hibernate.MappingException : Could not determine type for: java. util.Set,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6164123/
我有 Symfony 项目,其中有 2 个实体 - Building 和 Building_type。它们与 ManyToMany 单向关联相连。因此,当我尝试访问我的 Controller 时,我遇
在 couchBase 中保存 Map 类型数据时出现异常 Caused by: org.springframework.data.mapping.MappingException: Couldn't
我在使用无状态 session 进行更新时遇到问题,我 想知道是否有人见过这样的东西。 (NHibernate 3.1)。 我基本上是在做以下事情: SomeEntity e = statelessS
在使用hibernate时,我遇到了在两个不同的包中映射类的问题。 我有一个 myapp.domain.ItemforSale 类,它将映射到 myapp.cart.CartItem 我创建了 Car
最近,我将项目从 Hibernate 版本 3.1 迁移到 4.3,为了获得更好的性能,我尝试使用注释而不是 xml 映射。在继承类的所有实体类中,出现以下异常。错误是“org.hibernate.M
我正在努力解决以下问题: Caused by: org.hibernate.MappingException: Foreign key (FKj4uw5b6ekvxc2djohvon7lk7:bi_p
我尝试让 hibernate 4 运行(JBoss AS 7 附带)并将我的应用程序部署为 EAR(persistence.xml iis 在 EAR 的 META-INF 中)。 hibernate
我正在使用 JBoss AS 7 和 IDEA 11。当我尝试部署我的应用程序时遇到了这个问题: 我的应用中有两个实体: 首先: @Entity @Table(name="users") public
我在尝试使用 Hibernate 时遇到映射异常 - 在独立的 java 应用程序中(使用 netbeans 8)。我已经配置了 hibernate.cfg.xml 并设置了 hbm.xml 文件并映
我有一个数据库、hbm 映射文件和位于类库 中的 App.config。现在从一个测试项目中我引用该库并尝试调用我创建的 HibernateHelper 类,在运行时抛出以下错误: NHibernat
我有这个异常(exception): org.hibernate.MappingException: persistent class not known: java.lang.Long 我正在使用
情景 我需要在两个不同的上下文中表示一个对象。一个上下文不应该持续存在,另一个应该。持久对象是从另一个系统中提取的实际数据。非持久对象代表产品定义的一部分。两者将进行比较,我对存储定义数据不感兴趣。持
我有一个带有复合 ID 的表,其中一个字段是另一个表的外键。 我尝试使用以下类来实现这一点 - Tracking.java: public class Tracking { @Id @
我正在使用 Hibernate 注释并且有一个非常基本的数据对象: import java.io.Serializable; import javax.persistence.Entity; impo
我很好奇这个错误 org.hibernate.MappingException:未知实体:xyz 我是 hibernate 新手。欢迎提出任何建议。提前致谢。 最佳答案 Hibernate 将您的数据
我做错了什么? Exceprion 说我需要使“id”字段不可插入且不可更新。但我已经有了这些注释。我什至删除了“id”的setter方法,但它没有任何效果。是不是少了什么? weblogic.app
我正在为这两个类使用 JPA 注释: @Entity @RooJavaBean @RooToString @RooEntity @MappedSuperclass public abstract cl
使用 Castor 1.3,在测试时收到以下异常: org.exolab.castor.mapping.MappingException: The Java class com.company.sal
我收到以下错误: Could not determine type for: java.util.Set, at table: Ruleset, for columns: [org.hibernate
我在一个项目的代码中。当我尝试将对象 RRREC 类型转换为 RR_REC 类型时出现错误。 RRREC 类: public class RRREC{ protected String ow
我是一名优秀的程序员,十分优秀!