gpt4 book ai didi

java - 如何使用 QueryDSL 在 "like"值上加 1

转载 作者:行者123 更新时间:2023-11-29 12:41:55 25 4
gpt4 key购买 nike

在我的 postgres 数据库中,我有一个单元格来保存有多少人点击了相应帖子的“我喜欢”。但是,我想知道我当前的解决方案是否在 postgres 中是并发的。我现在所做的是我的 dao 类中的两个步骤。

1) 获取数据库中的当前值。2) 加1,然后更新。

如果不是,我怎样才能使它并发?我正在使用 Java (querydsl) 和 Postgres。任何人都可以帮忙吗?

更新:

感谢您的回答。我没有说清楚的一件事是我使用 querydsl。所以我不使用普通的列方式。但还是谢谢。

最佳答案

假设您的表名为posts 并且您有一个QPosts 查询类,那么您可以:

QPosts p = QPosts.posts;
queryFactory.
update(q).
set(q.likes, q.likes.add(1)).
where(q.id.eq(42));

这将生成以下 SQL:

update posts
set likes = likes + 1
where posts.id = 42

关于java - 如何使用 QueryDSL 在 "like"值上加 1,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45800300/

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