这个问题似乎重复了,但我尝试了所有可能但我无法解决此错误。请帮助我,我是Hibernate
的初学者。
-FirstProject
---> SRC
------>myPackage
--> Employee.java
--> StoreData.java
---> Employee.hbl.xml
---> hibernate.cfg.xml中
两个xml
文件都在src
文件夹下,我的代码在这里
package mypackage;
**public class Employee**
{
private int id;
private String FirstName,LastName;
public int getId()
{
return id;
}
public void setId(int id)
{
this.id=id;
}
public String getFirstName()
{
return FirstName;
}
public void setFirstName(String FirstName)
{
this.FirstName=FirstName;
}
public String getLastName()
{
return LastName;
}
public void setLastName(String LastName)
{
this.LastName=LastName;
}
}
Employee.hbl.xml
<class name="mypackage.Employee" table="emp1000">
<id name="id">
<generator class="assigned"></generator>
</id>
<property name="firstName" column="fname" type="String"></property>
<property name="lastName" column="lname" type="String"></property>
</class>
hibernate.cfg.xml中
<session-factory>
<property name="hbm2ddl.auto">update</property>
<property name="dialect">org.hibernate.dialect.Oracle9Dialect</property>
<property name="connection.url">jdbc:oracle:thin:@localhost:1521:xe</property>
<property name="connection.username">system</property>
<property name="connection.password">12345</property>
<property name="connection.driver_class">oracle.jdbc.driver.OracleDriver</property>
<mapping resource="First/src/Employee.hbm.xml"/>
</session-factory>
StoreData.java
package mypackage;
public class StoreData {
public static void main(String[] args) {
SessionFactory sF = new Configuration().
configure("/First/src/mypackage/hibernate.cfg.xml").buildSessionFactory();
Session session=sF.openSession();
Transaction t=session.beginTransaction();
Employee e1=new Employee();
e1.setId(115);
e1.setFirstName("Madu");
e1.setLastName("biradar");
session.persist(e1);
t.commit();
session.close();
System.out.println("successfully saved");
}
}
感谢所有提出任何建议的人......
答案 0 :(得分:1)
Configuration.configure需要一个&#39;类路径&#39;或者&#39;资源&#39;路径(在你的情况下从src开始)。 因此,如果您删除&#39; / First / src / mypackage&#39;从你的路径,这应该解决文件未找到错误。
同样,您也应该从对Employee.hbm.xml的引用中删除它。
有关详细信息,请查看java.lang.Class中的getResource文档(http://docs.oracle.com/javase/7/docs/api/index.html?java/lang/Class.html)
答案 1 :(得分:1)
我希望 Employee.hbl.xml 是一个拼写错误,您已使用名称hbm
进行映射,文件名为hbl
,可能只是一种类型且无关联确切的问题,也发布完整的stacktrace
您是否可以使用以下连接属性进行连接
<property name="connection.url">jdbc:oracle:thin:@localhost:1521:xe</property>