休止状態に問題があります。私は、以前に作成されたOracle SQLで作成されたデータベースを更新して、休止状態で何らかの練習をしています。つまり、あるクラスオブジェクトが他のクラスから何かを参照しようとしているAnnotationExceptionが発生しているということです。ここでエラーがある:Hibernate AnnotationException SessionFactoryが作成されたときにスローされます
org.hibernate.AnnotationException: @OneToOne or @ManyToOne on com.revature.bank.POJO.BankAccount.customer references an unknown entity: com.revature.bank.POJO.Customer
at org.hibernate.cfg.ToOneFkSecondPass.doSecondPass(ToOneFkSecondPass.java:107)
at org.hibernate.cfg.Configuration.processEndOfQueue(Configuration.java:1580)
at org.hibernate.cfg.Configuration.processFkSecondPassInOrder(Configuration.java:1503)
at org.hibernate.cfg.Configuration.secondPassCompile(Configuration.java:1419)
at org.hibernate.cfg.Configuration.buildSessionFactory(Configuration.java:1856)
at com.revature.bank.POJO.DataFuncImp.createCustomer(DataFuncImp.java:16)
at com.revature.bank.POJO.Main.main(Main.java:9)
だから、これはラインを指している:
SessionFactory sf = new Configuration().configure().buildSessionFactory();
私は注釈が、以前ここで質問のどれもが仕事に見えたので、それが起こってかもしれないことを読んだことがあります。ここ は私の2クラスである:(ここで、エラーが指すものだと私は唯一の変数を入れます): Customer.java
@Entity
@Table(name="USER_TABLE")
public class Customer {
@Id
@GeneratedValue
private int user_id;
@Column
private String user_fname;
@Column
private String user_lname;
@Column
private String user_email;
@Column
private String user_address;
@Column
private String user_city;
@Column
private String user_state;
@Column
private long cell_num;
@OneToMany(cascade= {CascadeType.ALL}, mappedBy="customer")
@JoinColumn(name="user_id")
private List<BankAccount> bacct;
BankAccount.java
@Entity
@Table(name="USER_ACCOUNT")
public class BankAccount {
@Id
@GeneratedValue
private long acct_id;
@Column
private double balance;
@ManyToOne
@JoinColumn(name="user_id")
private Customer customer;
そして、ここでは私の休止状態の設定でありますファイルも同様です(データベース接続情報を編集しました)。
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE hibernate-configuration PUBLIC
"-//Hibernate/Hibernate Configuration DTD 3.0//EN"
"http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd">
<hibernate-configuration>
<session-factory>
<property name="hibernate.connection.driver_class">oracle.jdbc.driver.OracleDriver</property>
<property name="hibernate.connection.url">jdbc:oracle:thin:@localhost:1521:xe</property>
<property name="hibernate.connection.username">adminone</property>
<property name="hibernate.connection.password">adminpass</property>
<property name="hibernate.dialect">org.hibernate.dialect.Oracle11gDialect</property>
<property name="show_sql">true</property>
<property name="hbm2ddl.auto">update</property>
<!-- <property name="hibernate.cache.provider_class">org.hibernate.cache.EhCacheProvider</property> -->
<!-- <mapping resource="students.hbm.xml"></mapping> -->
<mapping class="com.revature.bank.POJO.Customer"></mapping>
<mapping class="com.revature.bank.POJO.BankAccount"></mapping>
</session-factory>
</hibernate-configuration>
私は休止状態3.0を使用しています。私が以前に言及したように、私はエラーを理解しようとしているが、オンラインヘルプのどれもそれを修正するようではなかった。ご覧のとおり、私はまだデータベースに何もしようとしていないし、その例外をスローしています。これはなぜ起こっているのですか?前もって感謝します!!
あなたは、これはレガシープロジェクトである場合は3.0を休止、2.0 JPAされていないことを知っている、これが3.0または3.xでありますhibernate-annoationsで – pgermosen
hibernate 3.6、申し訳ありません – SkiiNet