listangel 2009-04-27 12:02
浏览 269
已采纳

hibernate一对多的删除问题(郁闷)

one :






many:

    <many-to-one name="schedule" class="com.oa.beans.Schedule"  fetch="select" update="false" cascade="all">
        <column name="SCHEDULE_ID" precision="8" scale="0" not-null="true" />
    </many-to-one>

Schedule.java:

public class Schedule implements java.io.Serializable {

// Fields

private Long scheduleId;
private Meetinginfo meetinginfo;
private String title;
private String address;
private Date begintime;
private Date endtime;
private String schcontent;
private Userinfo userinfo;
private Date createtime;
private Long ifprivate;
private Set precontracts = new HashSet(0);
// Constructors

// Property accessors

public Long getScheduleId() {
    return this.scheduleId;
}

public void setScheduleId(Long scheduleId) {
    this.scheduleId = scheduleId;
}

public Meetinginfo getMeetinginfo() {
    return this.meetinginfo;
}

public void setMeetinginfo(Meetinginfo meetinginfo) {
    this.meetinginfo = meetinginfo;
}

public String getTitle() {
    return this.title;
}

public void setTitle(String title) {
    this.title = title;
}

public String getAddress() {
    return this.address;
}

public void setAddress(String address) {
    this.address = address;
}

public Date getBegintime() {
    return this.begintime;
}

public void setBegintime(Date begintime) {
    this.begintime = begintime;
}

public Date getEndtime() {
    return this.endtime;
}

public void setEndtime(Date endtime) {
    this.endtime = endtime;
}

public String getSchcontent() {
    return this.schcontent;
}

public void setSchcontent(String schcontent) {
    this.schcontent = schcontent;
}

public Date getCreatetime() {
    return this.createtime;
}

public void setCreatetime(Date createtime) {
    this.createtime = createtime;
}

public Long getIfprivate() {
    return this.ifprivate;
}

public void setIfprivate(Long ifprivate) {
    this.ifprivate = ifprivate;
}

public Set getPrecontracts() {
    return this.precontracts;
}

public void setPrecontracts(Set precontracts) {
    this.precontracts = precontracts;
}

public Userinfo getUserinfo() {
    return userinfo;
}

public void setUserinfo(Userinfo userinfo) {
    this.userinfo = userinfo;
}

}

Precontract.java:

public class Precontract implements java.io.Serializable {

// Fields

private Long precontractId;
private Userinfo userinfo;
private Schedule schedule;

// Constructors

/** default constructor */
public Precontract() {
}

/** full constructor */
public Precontract(Userinfo userinfo, Schedule schedule) {
    this.userinfo = userinfo;
    this.schedule = schedule;
}

// Property accessors

public Long getPrecontractId() {
    return this.precontractId;
}

public void setPrecontractId(Long precontractId) {
    this.precontractId = precontractId;
}

public Userinfo getUserinfo() {
    return this.userinfo;
}

public void setUserinfo(Userinfo userinfo) {
    this.userinfo = userinfo;
}

public Schedule getSchedule() {
    return this.schedule;
}

public void setSchedule(Schedule schedule) {
    this.schedule = schedule;
}

}

异常:
org.springframework.jdbc.UncategorizedSQLException: Hibernate flushing: Could not execute JDBC batch update; uncategorized SQLException for SQL [update OA.PRECONTRACT set SCHEDULE_ID=null where SCHEDULE_ID=?]; SQL state [72000]; error code [1407]; ORA-01407: 无法更新 ("OA"."PRECONTRACT"."SCHEDULE_ID") 为 NULL
; nested exception is java.sql.BatchUpdateException: ORA-01407: 无法更新 ("OA"."PRECONTRACT"."SCHEDULE_ID") 为 NULL

  • 写回答

1条回答 默认 最新

  • wanghaolovezlq 2009-04-27 12:07
    关注

    你的调用代码怎么不粘出来,
    还有你的映射文件写得很有问题啊

    one :






    many:

        <many-to-one name="schedule" class="com.oa.beans.Schedule"  [color=red]fetch="join"[/color][color=red] update="true"[/color] cascade="all">
            <column name="SCHEDULE_ID" precision="8" scale="0" not-null="true" />
        </many-to-one> 
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥15 用comsol模拟大气湍流通过底部加热(温度不同)的腔体
  • ¥50 安卓adb backup备份子用户应用数据失败
  • ¥20 有人能用聚类分析帮我分析一下文本内容嘛
  • ¥15 请问Lammps做复合材料拉伸模拟,应力应变曲线问题
  • ¥30 python代码,帮调试
  • ¥15 #MATLAB仿真#车辆换道路径规划
  • ¥15 java 操作 elasticsearch 8.1 实现 索引的重建
  • ¥15 数据可视化Python
  • ¥15 要给毕业设计添加扫码登录的功能!!有偿
  • ¥15 kafka 分区副本增加会导致消息丢失或者不可用吗?