0

Java Hibernate は初めてです。私は基本的なプログラムを書いていますが、「Class not found pack1.Manager1」というエラーが発生します... Manager1 は私のメインクラスです。どんな助けでも大歓迎です..

私のファイルは以下のようなものです:

1) 休止状態/src/pack1/Employeeh.hbm.xml:

<hibernate-mapping package="pack1">
    <class name="Employeeh" table="EMPLOYEEH">
        <id name="empid" column="EMP_ID" type="long">
            <generator class="native"/>
        </id>
        <property name="fname" column="FNAME">
        </property>
        <property name="email"/>
        </class>
</hibernate-mapping>

2) 休止状態/src/pack1/Employeeh.java:

package pack1;
public class Employeeh
{
private int empid;
private String fname;
private String email;
public int getEmpid()
{
    return empid;
}
..
}

3) 休止状態/src/pack1/Manager1.java:

package pack1;
import org.hibernate.Session;
import org.hibernate.SessionFactory;
import org.hibernate.cfg.Configuration;
public class Manager1
{
public static void main(String[] args)
{

    Configuration c1=new Configuration();
    c1.configure();
    SessionFactory sf=c1.buildSessionFactory();
    Session s1=sf.openSession();
    Employeeh e1=new Employeeh();
    e1.setEmpid(1);
    e1.setFname("gourav");
    e1.setEmail("a@b.com");
}
}

4) 休止状態/src/hibernate.cfg.xml:

<hibernate-configuration>
    <session-factory>
        <property name="hibernate.dialect">org.hibernate.dialect.OracleDialect</property>
        <property name="hibernate.connection.driver_class">oracle.jdbc.driver.OracleDriver</property>
        <property name="hibernate.connection.username">gourav</property>
        <property name="hibernate.connection.password">baba</property>
        <property name="hibernate.connection.url">jdbc:oracle:thin:@localhost:1521:XE</property>
        <property name="hibernate.hbm2ddl.auto">create-drop</property>
       <mapping resource="pack1/Employeeh.hbm.xml"/>
    </session-factory>
</hibernate-configuration>

前もって感謝します..

4

1 に答える 1

0

あなたが投稿したものに従って新しいプロジェクトを作成しました(Oracleの代わりにMySqlを使用しました)。結果は私にとって成功でした...例外は発生しませんでした!

すべてのファイルを返送します...

クラスManager1とは、パッケージEmployeeh内のものとまったく同じです。pack1hibernate.cfg.xmlは次のようなものです:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE hibernate-configuration SYSTEM "http://www.hibernate.org/dtd/hibernate-configuration-3.0.dtd">
<hibernate-configuration>
    <session-factory>
        <property name="hibernate.dialect">org.hibernate.dialect.MySQLDialect</property>
        <property name="hibernate.connection.driver_class">com.mysql.jdbc.Driver</property>
        <property name="hibernate.connection.username">root</property>
        <property name="hibernate.connection.password">root</property>
        <property name="hibernate.connection.url">jdbc:mysql://localhost:3306/test</property>
        <property name="hibernate.hbm2ddl.auto">create-drop</property>
        <mapping resource="pack1/Employeeh.hbm.xml" />
    </session-factory>
</hibernate-configuration>

そして、私Employeeh.hbm.xmlのは次のようなものです:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD//EN" "http://www.hibernate.org/dtd/hibernate-mapping-3.0.dtd">
<hibernate-mapping package="pack1">
    <class name="Employeeh" table="EMPLOYEEH">
        <id name="empid" column="EMP_ID" type="long">
            <generator class="native" />
        </id>
        <property name="fname" column="FNAME">
        </property>
        <property name="email" />
    </class>
</hibernate-mapping>

すべてが同じである場合、すべてのファイルが構成ファイルで指定した場所にあることを確認し、データベースを使用するためのコネクタが必要であることを覚えておくことをお勧めします。

これがお役に立てば幸いです。

于 2013-10-01T11:13:58.513 に答える