从表中读取数据编辑并保存在另一个表中

时间:2019-10-15 07:19:13

标签: mysql hibernate spring-boot

在我的系统中,我已经从checkoutout表(该表是从differentenet系统创建的,并且我必须为我的系统更改一些数据)中读取数据,并编辑了这些详细信息,并将结果列表作为List获取。现在我想将检索到的详细信息保存在记录表中。有人可以帮我吗?非常感谢。

记录表(id,user_id,日期,时间)

控制器

@RequestMapping("/records")
    public String read(Model model) throws ParseException {
        System.out.println("hey");
        List<CheckInOut> recordDetails= checkInOutDAO.findAll();
        //System.out.println(recordDetails.toString());

        CheckInOut[] arr = new CheckInOut[recordDetails.size()];
       for(int i = 0 ; i < recordDetails.size(); i++) {
            //System.out.println(recordDetails.get(i).getUserid());
            arr[i]=recordDetails.get(i);
        }

//result list
List<Records> recordsList= DateToDayConvert.main(arr);



        model.addAttribute("records",recordsList);
        return "records";
    }

DAO

 public Records save(Records records){
        return recordsRepository.save(records);
    }

型号

@Entity
@Table(name="records")
@EntityListeners(AuditingEntityListener.class)

public class Records {
    @Id
    @GeneratedValue(strategy = GenerationType.AUTO)
    private Long id;
    private int userid;
    private String day;
    private int time;


    public Records() {
    }

    public Records(int userid, String day, int time) {
        this.userid = userid;
        this.day = day;
        this.time = time;
    }

    public Long getId() {
        return id;
    }

    public void setId(Long id) {
        this.id = id;
    }

    public int getUserid() {
        return userid;
    }

    public void setUserid(int userid) {
        this.userid = userid;
    }

    public String getDay() {
        return day;
    }

    public void setDay(String day) {
        this.day = day;
    }

    public int getTime() {
        return time;
    }

    public void setTime(int time) {
        this.time = time;
    }

}

2 个答案:

答案 0 :(得分:1)

您可以一次保存所有记录,而不必为每个记录保存调用。

DOA

public Records save(Records records){
  return recordsRepository.save(records);
}

public List<Records> save(List<Records> records){
  return recordsRepository.save(records);
}

现在您可以将所有记录保存在一个数据库调用中。

答案 1 :(得分:0)

通过在结果列表下添加以下代码来解决。 Thx evryone

(int i=0;i<recordsList.size();i++){      
     recordsDAO.save(recordsList.get(i));
}