Java Hibernate@manytone映射错误

Java Hibernate@manytone映射错误,java,hibernate,jpa,Java,Hibernate,Jpa,你好。我有两张桌子 CREATE TABLE A( id NUMBER(10) NOT NULL, name VARCHAR2(255) NULL, category VARCHAR2(255) NULL, is_hidder NUMBER(1) NULL, is_enabled NUMBER(1) NULL, b_id NUMBER(10) NULL, CONSTRAINT pk_a PRIMARY KEY (ID), CONSTRAINT fk_to_b

你好。我有两张桌子

 CREATE TABLE A(
  id NUMBER(10) NOT NULL,
  name VARCHAR2(255) NULL,
  category VARCHAR2(255) NULL,
  is_hidder NUMBER(1) NULL,
  is_enabled NUMBER(1) NULL,
  b_id NUMBER(10) NULL,
  CONSTRAINT pk_a PRIMARY KEY (ID),
  CONSTRAINT fk_to_b
  FOREIGN KEY (vj_users_preferences_id)
  REFERENCES VJ_USER_PREFERENCES(ID)
);

CREATE TABLE B(
  ID NUMBER(10) NOT NULL,
  EXT_ID NUMBER(10) NOT NULL,
  KEY VARCHAR2(1024) NOT NULL,
  VALUE VARCHAR2(1024) NOT NULL,
  CONSTRAINT PK_B PRIMARY KEY(ID)
);
对于这两个表,我都有实体,我希望将它们映射到@OneToOne

class Entity A{
    .......
    @OneToOne(cascade = CascadeType.ALL)
    @JoinColumn(name="pk_b", referencedColumnName = "id")
    private B b;
}
实体B已审核且没有字段,因此连接是单向的。当我尝试持久化实体时,出现错误:

原因:org.hibernate.HibernateException:无法确定动态映射实体的类型

正在从以下位置引发此异常:

org.hibernate.tuple.entity.dynamicPentityTuplizer.BasicEntityNameResolver#resolveEntityName

因为输入是Map,但它没有在其中获得:dynamicMapStatiator.KEY


有人能帮我解决这个问题吗?我不明白为什么Hibernate在没有必要的值的情况下创建了这个映射。我的映射有问题吗

我的UI表单似乎收到了50多个符号,但数据库有:
EXT_ID NUMBER(10)不为空
当我修改表以反映UI可能性时(例如EXT_ID NUMBER(50)NOT NULL),错误就消失了

根据我的理解,这种例外在这种情况下是误导性的。我希望看到:SQLGrammarException之类的。
希望有一天能有所帮助。

我的UI表单似乎收到了50多个符号,但数据库有:
EXT_ID NUMBER(10)不为空
当我修改表以反映UI可能性时(例如EXT_ID NUMBER(50)NOT NULL),错误就消失了

根据我的理解,这种例外在这种情况下是误导性的。我希望看到:SQLGrammarException之类的。 希望有一天能有所帮助