gpt4 book ai didi

java - 无法使用 hibernate spring mvc 更新表

转载 作者:太空宇宙 更新时间:2023-11-04 06:33:04 25 4
gpt4 key购买 nike

我的实体类如下

package com.ibs.entity;

import java.util.Date;

import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.Table;
import javax.persistence.Temporal;
import javax.persistence.TemporalType;

import org.hibernate.annotations.GenericGenerator;

@Entity
@Table(name = "InitialMedicalCheckUpG3")
public class InitialMedicalCheckUpEntity {

private int imcsId;
private String empId, status, updatedBy, remarks;
Date updatedOn;

@Column(name = "IMCS_ID")
public int getImcsId() {
return imcsId;
}

public void setImcsId(int imcsId) {
this.imcsId = imcsId;
}

@Id
@Column(name = "EMP_ID")
@GeneratedValue(generator = "increment", strategy = GenerationType.AUTO)
@GenericGenerator(name = "increment", strategy = "increment")
public String getEmpId() {
return empId;
}

public void setEmpId(String empId) {
this.empId = empId;
}

@Column(name = "STATUS")
public String getStatus() {
return status;
}

public void setStatus(String status) {
this.status = status;
}

@Column(name = "UPDATED_BY")
public String getUpdatedBy() {
return updatedBy;
}

public void setUpdatedBy(String updatedBy) {
this.updatedBy = updatedBy;
}

@Column(name = "REMARKS")
public String getRemarks() {
return remarks;
}

public void setRemarks(String remarks) {
this.remarks = remarks;
}

@Temporal(TemporalType.TIMESTAMP)
@Column(name = "UPDATED_ON", insertable = false)
public Date getUpdatedOn() {
return updatedOn;
}

public void setUpdatedOn(Date updatedOn) {
this.updatedOn = updatedOn;
}

}

数据访问对象 ->

package com.ibs.dao;

import java.util.List;

import org.hibernate.SessionFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Repository;

import com.ibs.entity.InitialMedicalCheckUpEntity;

@Repository
public class InitialMedicalCheckUpDaoImpl implements InitialMedicalCheckUpDao {

@Autowired
SessionFactory sessionFactory;

@Override
public List<InitialMedicalCheckUpEntity> getConfirmedList() {
// TODO Auto-generated method stub
return null;
}

@Override
public List<InitialMedicalCheckUpEntity> getNonConfirmedList() {
// TODO Auto-generated method stub
return null;
}

@Override
public void update(InitialMedicalCheckUpEntity e) {
// TODO Auto-generated method stub
System.out.println(e.getStatus());
sessionFactory.getCurrentSession().update(e);
}

}

Hibernate 为我的更新语句准备了以下查询 -> hibernate : 更新 InitialMedicalCheckUpG3 设置 IMCS_ID=?、REMARKS=?、STATUS=?、UPDATED_BY=?、UPDATED_ON=?其中 EMP_ID=?

因此该表没有更新。

我使用服务类中的 Dao-> 包 com.ibs.service;

import java.util.List;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;

import com.ibs.dao.InitialMedicalCheckUpDao;
import com.ibs.entity.InitialMedicalCheckUpEntity;

@Service
public class InitialMedicalCheckUpServiceImpl implements
InitialMedicalCheckUpService {

@Autowired
InitialMedicalCheckUpDao dao;

@Override
public List<InitialMedicalCheckUpEntity> getConfirmedList() {
// TODO Auto-generated method stub
return null;
}

@Override
public List<InitialMedicalCheckUpEntity> getNonConfirmedList() {
// TODO Auto-generated method stub
return null;
}

@Override
@Transactional
public void update(InitialMedicalCheckUpEntity e) {
// TODO Auto-generated method stub
dao.update(e);

}

}

最佳答案

通过hibernate进行的每个操作都需要与一个事务相关联。您需要确保您的更新操作是事务的一部分并且该工作单元已提交。确保您将此操作与事务关联并提交。

关于java - 无法使用 hibernate spring mvc 更新表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25830631/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com