Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/hibernate/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java Hibernate:中的未知mappedBy:,引用的属性未知:_Java_Hibernate_Annotations_Oracle10g_Mapping - Fatal编程技术网

Java Hibernate:中的未知mappedBy:,引用的属性未知:

Java Hibernate:中的未知mappedBy:,引用的属性未知:,java,hibernate,annotations,oracle10g,mapping,Java,Hibernate,Annotations,Oracle10g,Mapping,我正在尝试映射我的表以使用Hibernate,但是在启动测试时出现了这个错误 Nov 04, 2015 5:17:40 PM org.hibernate.annotations.common.reflection.java.JavaReflectionManager INFO: HCANN000001: Hibernate Commons Annotations {4.0.5.Final} Nov 04, 2015 5:17:41 PM org.hibernate.Version lo

我正在尝试映射我的表以使用Hibernate,但是在启动测试时出现了这个错误

    Nov 04, 2015 5:17:40 PM org.hibernate.annotations.common.reflection.java.JavaReflectionManager 
INFO: HCANN000001: Hibernate Commons Annotations {4.0.5.Final}
Nov 04, 2015 5:17:41 PM org.hibernate.Version logVersion
INFO: HHH000412: Hibernate Core {4.3.8.Final}
Nov 04, 2015 5:17:41 PM org.hibernate.cfg.Environment <clinit>
INFO: HHH000206: hibernate.properties not found
Nov 04, 2015 5:17:41 PM org.hibernate.cfg.Environment buildBytecodeProvider
INFO: HHH000021: Bytecode provider name : javassist
Nov 04, 2015 5:17:41 PM org.hibernate.cfg.Configuration configure
INFO: HHH000043: Configuring from resource: /hibernate.cfg.xml
Nov 04, 2015 5:17:41 PM org.hibernate.cfg.Configuration getConfigurationInputStream
INFO: HHH000040: Configuration resource: /hibernate.cfg.xml
Nov 04, 2015 5:17:41 PM org.hibernate.internal.util.xml.DTDEntityResolver resolveEntity
WARN: HHH000223: Recognized obsolete hibernate namespace http://hibernate.sourceforge.net/. Use namespace http://www.hibernate.org/dtd/ instead. Refer to Hibernate 3.6 Migration Guide!
Nov 04, 2015 5:17:41 PM org.hibernate.cfg.Configuration doConfigure
INFO: HHH000041: Configured SessionFactory: null
Nov 04, 2015 5:17:41 PM org.hibernate.engine.jdbc.connections.internal.DriverManagerConnectionProviderImpl configure
WARN: HHH000402: Using Hibernate built-in connection pool (not for production use!)
Nov 04, 2015 5:17:42 PM org.hibernate.engine.jdbc.connections.internal.DriverManagerConnectionProviderImpl buildCreator
INFO: HHH000401: using driver [oracle.jdbc.OracleDriver] at URL [jdbc:oracle:thin:@example.com:1521/c0fspost0]
Nov 04, 2015 5:17:42 PM org.hibernate.engine.jdbc.connections.internal.DriverManagerConnectionProviderImpl buildCreator
INFO: HHH000046: Connection properties: {user=user, password=****}
Nov 04, 2015 5:17:42 PM org.hibernate.engine.jdbc.connections.internal.DriverManagerConnectionProviderImpl buildCreator
INFO: HHH000006: Autocommit mode: false
Nov 04, 2015 5:17:42 PM org.hibernate.engine.jdbc.connections.internal.DriverManagerConnectionProviderImpl configure
INFO: HHH000115: Hibernate connection pool size: 20 (min=1)
Nov 04, 2015 5:17:44 PM org.hibernate.dialect.Dialect <init>
INFO: HHH000400: Using dialect: org.hibernate.dialect.Oracle10gDialect
SessionFactory creation failed.org.hibernate.AnnotationException: Unknown mappedBy in: it.addvalue.mam.fpk.alertengine.mapping.TEvents.TEventsDetails, referenced property unknown: it.addvalue.mam.fpk.alertengine.mapping.TEventsDetails.tEvents

有什么解决这个问题的建议吗?对我来说,映射是正确的,还因为它是由hibernate自动生成的

您应该将TEvents变量名从TEvents更改为TEvents:

public class TEventsDetails implements java.io.Serializable {

.....

private TEvents tEvents;

public TEvents getTEvents() {
    return this.tEvents;
}

public void setTEvents(TEvents TEvents) {
    this.tEvents = TEvents;
}
.....

}

请在
类TEventsDetails
的下一行中定义列的名称,因为您已经定义了TEventsDetails表中与TEvents表关联的列

@JoinColumn(name = "EVENT_ID")

好的!我想这是一只冬眠虫。我找到了这个


私有TEventsDetails TEventsDetails;的映射是什么?另外,最好是以小写字母开始变量名…Hibernate代码生成完成了这项工作,我同意你的看法。要回答您的问题:@OneToOne(fetch=FetchType.LAZY,mappedBy=“tEvents”)public-TEventsDetails-getEventsDetails(){返回this.TEventsDetails;}我做到了,但是刚刚在SessionFactory创建中更改的错误失败了。org.hibernate.AnnotationException:未知映射在:it.addvalue.mam.fpk.alertengine.mapping.TEvents.TEvents详细信息中,引用的属性未知:it.addvalue.mam.fpk.alertengine.mapping.TEvents详细信息。TEvents它仅与我执行的事件ID关联,但是没有任何改变@PrimaryKeyJoinColumn(name=“EVENT\u ID”)我已经更新了我的答案,只需使用@JoinColumn(name=“EVENT\u ID”)谢谢你的回复,但没有任何改变。我想是冬眠虫。检查这个
public class TEventsDetails implements java.io.Serializable {

.....

private TEvents tEvents;

public TEvents getTEvents() {
    return this.tEvents;
}

public void setTEvents(TEvents TEvents) {
    this.tEvents = TEvents;
}
.....
@JoinColumn(name = "EVENT_ID")