测试类:SelectText.java
package deu.hy.dao;
import java.util.List;
import javax.swing.JOptionPane;
import org.hibernate.Query;
import org.hibernate.Session;
import edu.hy.model.Admin;
import edu.hy.util.HibernateSessionFactory;
public class SelectText
{
public static void select()
{
Session session = HibernateSessionFactory.getSession();
Query query = session.createQuery("from admin where userid=?");
query.setInteger(0, 1);
List list = query.list();
String message = list.get(0).getUserName();
JOptionPane.showMessageDialog(null, message);
}
public static void main(String[] args)
{
SelectText.select();
}
}
实体类: Admin.java
package edu.hy.model;
public class Admin
{
private int userid;
private String userName;
private String password;
public Admin()
{
super();
// TODO Auto-generated constructor stub
}
public Admin(int userid, String userName, String password)
{
super();
this.userid = userid;
this.userName = userName;
this.password = password;
}
public int getUserid()
{
return userid;
}
public void setUserid(int userid)
{
this.userid = userid;
}
public String getUserName()
{
return userName;
}
public void setUserName(String userName)
{
this.userName = userName;
}
public String getPassword()
{
return password;
}
public void setPassword(String password)
{
this.password = password;
}
}
hibernate.cfg.xml
<?xml version='1.0' encoding='UTF-8'?>
<!DOCTYPE hibernate-configuration PUBLIC
"-//Hibernate/Hibernate Configuration DTD 3.0//EN"
"http://www.hibernate.org/dtd/hibernate-configuration-3.0.dtd">
<session-factory>
<property name="hbm2ddl.auto">update</property>
<property name="dialect">org.hibernate.dialect.MySQLDialect</property>
<property name="connection.url">jdbc:mysql://lacalhost:3306/qm</property>
<property name="connection.username">root</property>
<property name="connection.password">root</property>
<property name="connection.driver_class">com.mysql.jdbc.Driver</property>
<mapping resource="edu/hy/model/Admin.hbm.xml"/>
</session-factory>
Admin.hbm.xml
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE hibernate-mapping PUBLIC
"-//Hibernate/Hibernate Mapping DTD 3.0//EN"
"http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
</id>
<property name="password" column="password"></property>
<property name="userName" column="userName"></property>
</class>
</hibernate-mapping>
错误信息:
%%%% Error Creating SessionFactory %%%%
org.hibernate.InvalidMappingException: Could not parse mapping document from resource edu/hy/model/Admin.hbm.xml
at org.hibernate.cfg.Configuration$MetadataSourceQueue.processHbmXml(Configuration.java:3409)
at org.hibernate.cfg.Configuration$MetadataSourceQueue.processHbmXmlQueue(Configuration.java:3398)
at org.hibernate.cfg.Configuration$MetadataSourceQueue.processMetadata(Configuration.java:3386)
at org.hibernate.cfg.Configuration.secondPassCompile(Configuration.java:1341)
at org.hibernate.cfg.Configuration.buildSessionFactory(Configuration.java:1731)
at edu.hy.util.HibernateSessionFactory.rebuildSessionFactory(HibernateSessionFactory.java:73)
at edu.hy.util.HibernateSessionFactory.getSession(HibernateSessionFactory.java:55)
at deu.hy.dao.SelectText.select(SelectText.java:17)
at deu.hy.dao.SelectText.main(SelectText.java:28)
Caused by: org.hibernate.DuplicateMappingException: Duplicate class/entity mapping edu.hy.model.Admin
at org.hibernate.cfg.Configuration$MappingsImpl.addClass(Configuration.java:2574)
at org.hibernate.cfg.HbmBinder.bindRoot(HbmBinder.java:172)
at org.hibernate.cfg.Configuration$MetadataSourceQueue.processHbmXml(Configuration.java:3406)
... 8 more
麻烦各位大神了