快速业务通道

Hibernate单向一对多应注意的问题 - 编程入门网

作者 佚名技术 来源 NET编程 浏览 发布时间 2012-06-15

Hibernate单向一对多应注意的问题

时间:2011-09-09

这个 问题困扰我10多天,终于干掉了。

本人使用myeclipse6.5ga,进行hibernate一对多单向关联实例。

一直报如下异常:

Hibernate:   insert   into     hbql.score     (score, type)   values 。。。。。。。。。。。。。。。。。。。 17:03:32,484 DEBUG JDBCExceptionReporter:69 - could not insert: [score.Score] [insert into hbql.score (score, type) values (?, ?)] java.sql.SQLException: Field ''sid'' doesn''t have a default value     at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:1055) ..................//太长发不了。省略点 17:03:32,484 WARN JDBCExceptionReporter:77 - SQL Error: 1364, SQLState: HY000 17:03:32,484 ERROR JDBCExceptionReporter:78 - Field ''sid'' doesn''t have a default value 保存对象student.Student失败! 17:03:32,484 DEBUG JDBCTransaction:152 - rollback org.hibernate.exception.GenericJDBCException: could not insert: [score.Score]     at org.hibernate.exception.SQLStateConverter.handledNonSpecificException(SQLStateConverter.java:103)     at org.hibernate.exception.SQLStateConverter.convert(SQLStateConverter.java:91)     ...........................//太长发不了。省略点 Caused by: java.sql.SQLException: Field ''sid'' doesn''t have a default value     at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:1055)

测试程序如下:

Student student=new Student("huizhi","2708",200); Score score1=new Score(98,"1"); Score score2=new Score(90,"2"); Set set=new HashSet(); set.add(score1); set.add(score2); student.setScores(set); saveObject(student); printStudents(); ----------------------------------------------------------------------------------------------------------------------

Hibernate单向一对多应注意的问题(2)

时间:2011-09-09

映射文件Student.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"> <hibernate-mapping>    <class name="student.Student" table="student" catalog="hbql" >      <id name="id" type="java.lang.Integer">        <column name="id" />        <generator class="native" />      </id> <set name="scores" table="score" cascade="save-update" inverse="false">    <key>      <column name="sid" not-null="true" />    </key>    <one-to-many class="score.Score" /> </set>      <property name="name" type="java.lang.String">        <column name="name" length="20" not-null="true" />      </property>      <property name="number" type="java.lang.String">        <column

凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

分享到: 更多

Copyright ©1999-2011 厦门凌众科技有限公司 厦门优通互联科技开发有限公司 All rights reserved

地址(ADD):厦门软件园二期望海路63号701E(东南融通旁) 邮编(ZIP):361008

电话:0592-5908028 传真:0592-5908039 咨询信箱:web@lingzhong.cn 咨询OICQ:173723134

《中华人民共和国增值电信业务经营许可证》闽B2-20100024  ICP备案:闽ICP备05037997号