按照视频教程上教的,写个代码,结果一直报hibernate mapping exception的错误,查找各种资料配置,没有解决。最终发现,还是在sesstionfactory中,增加addClass(User.class);或者直接使用configuration.configure().buildSessionFactory();解决的。
容易错的地方,都标红加粗了。
hibernate版本:5.1.0. final。 jdk 1.8,myeclipse 2016 ci。
目录结构
一、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">
<!-- Generated by MyEclipse Hibernate Tools. -->
<hibernate-configuration>
<session-factory>
<property name="dialect">org.hibernate.dialect.MySQLDialect</property>
<property name="connection.password">a</property>
<property name="connection.username">a</property>
<property name="connection.url">jdbc:mysql://localhost:3306/myhib</property>
<property name="connection.driver_class">com.mysql.jdbc.Driver</property>
<property name="myeclipse.connection.profile">mysql</property>
<property name="hibernate.show_sql">true</property>
<property name="hibernate.hbm2ddl.auto">update</property>
<mapping resource="com/model/User.hbm.xml" />
</session-factory>
</hibernate-configuration>
二、user.hbm.xml (hibernate映射文件的配置)
<!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN" "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
<hibernate-mapping>
<class name="com.model.User" table="t_login">
<id name="id" type="int">
<column name="Id"/>
<generator class="native"/>
</id>
<property name="username" type="string" column="username"></property>
<property name="userpass" type="