我参考一篇文章,http://blog.csdn.net/cooperking/archive/2004/12/28/231934.aspx
照着做了一下.
第一步,我没有配置<many-to-one>关系,做了一个查询,存储.成功了.说明例子是可以跑通的.
第二步,我配置了Mychild.hbm ,Myparent的对应关系.又写了一个测试小例子,该例子出错了.
可能是表结构不对,出现了下面的问题:请大家帮忙看看.
ERROR - Error parsing XML: XML InputStream(30) The content of element type "class" must match "(meta*,(cache|jcs-cache)?,(id|composite-id),discriminator?,(version|timestamp)?,(property|many-to-one|one-to-one|component|dynamic-component|any|map|set|list|bag|idbag|array|primitive-array)*,(subclass*|joined-subclass*))".
net.sf.hibernate.MappingException: Error reading resource: pojo/Mychild.hbm
环境: eclipse's hibernate插件 , mysql数据库.
数据库:create table mychild( cid int ,cname varchar(20) , pid int ) ;
create table myparent( pid int ,pname varchar(20) ) ;
使用eclipse's hibernate插件建立的配置文件hibernate.cfg.xml 如下:
<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE hibernate-configuration
PUBLIC "-//Hibernate/Hibernate Configuration DTD//EN"
"http://hibernate.sourceforge.net/hibernate-configuration-2.0.dtd">
<hibernate-configuration>
<session-factory>
<!-- local connection properties -->
<property name="hibernate.connection.url">
jdbc:mysql://localhost:3306/test
</property>
<property name="hibernate.connection.driver_class">
com.mysql.jdbc.Driver
</property>
<property name="hibernate.connection.username">root</property>
<property name="hibernate.connection.password" />
<!-- property name="hibernate.connection.pool_size"></property -->
<!-- dialect for MySQL -->
<property name="dialect">
net.sf.hibernate.dialect.MySQLDialect
</property>
<property name="hibernate.show_sql">false</property>
<property name="hibernate.use_outer_join">true</property>
<mapping resource="pojo/Mychild.hbm" />
<mapping resource="pojo/Myparent.hbm" />
</session-factory>
</hibernate-configuration>
使用插件建立的影射文件如下:
===================
Mychild.hbm
===================
<?xml version="1.0"?>
<!DOCTYPE hibernate-mapping PUBLIC
"-//Hibernate/Hibernate Mapping DTD//EN"
"http://hibernate.sourceforge.net/hibernate-mapping-2.0.dtd" >
<hibernate-mapping package="pojo">
<class name="Mychild" table="mychild">
<property
column="pid"
length="11"
name="Pid"
not-null="false"
type="integer"
/>
<property
column="cid"
length="11"
name="Cid"
not-null="false"