关于数据库操作save()方法的问题

我想问下save()方法有更新功能吗?就类似update方法,能不能使用

  1. new User().set("id", 10).set("age", 25).save();这样的语句更新数据库中已经存在id为10 的记录呢?


评论区

JFinal

2019-02-25 15:44

用 update() 方法即可

liam_fang

2019-02-25 15:46

@JFinal 那如果数据库中没有这条记录呢?用update()方法会不会有什么问题?

liam_fang

2019-02-25 15:50

@JFinal 我的意思是有没有那样的方法,若数据库没有该记录则会自动使用save方法,若数据库中存在这条记录,则采用update方法。

JFinal

2019-02-25 15:50

just do it

JFinal

2019-02-25 15:52

@liam_fang 你想要的是一个 saveOrUpdate() 方法,目前没有提供,可以在 base model 中自己写几行代码,类似:
public void saveOrUpdate() {
if (getId() != null) {
update();
} else {
save();
}
}

liam_fang

2019-02-25 15:54

@JFinal 好的,谢谢。

热门反馈

扫码入社