小编Ke.*_*Ke.的帖子

JPA where where子句

我是JPA的新手.

在JPA中,查询是:

Query q = entityManager.createQuery("select o from Product o WHERE o.category = :value");
q.setParameter("category", category);
Run Code Online (Sandbox Code Playgroud)

如何在JPA中将类别设置为任何类别?因此,如果传递null类,我简单地忽略category参数,选择所有产品.

java jpa

14
推荐指数
3
解决办法
2万
查看次数

通过JPA随机选择行

在Mysql中,

SELECT id FROM table ORDER BY RANDOM() LIMIT 5
Run Code Online (Sandbox Code Playgroud)

这个sql可以选择5个随机行.如何通过JPA Query(Hibernate作为提供者,Mysql数据库)来做到这一点?

谢谢.

java mysql hibernate jpa

11
推荐指数
1
解决办法
1万
查看次数

用于大字符串的SHA1 JavaScript实现

我有同样的问题:可以在流上计算SHA-1算法吗?内存占用少?

我正在寻找一个JavaScript实现,它逐块地计算一个非常大的字符串.我们的想法是将字符串切成512位块并逐块进行.

任何提示?

[更新]感谢sunetos的帮助,我写了一个简单的html5 java脚本应用程序:在Javascript中使用HTML5文件API生成SHA1文件校验和

javascript hash sha1

7
推荐指数
1
解决办法
3644
查看次数

正则表达式删除前导空格和短划线字符

给出一个字符串 String a="- = - - What is your name?";

如何删除前导的相等,短划线,空格字符,以获得干净的文本,

"你叫什么名字?"

regex

4
推荐指数
1
解决办法
1万
查看次数

使用 JPA 计算延迟加载属性的最佳位置在哪里

假设我们有一个“问题”和“答案”实体,

@Entity

public class Question extends IdEntity {
    @Lob
    private String content;
        @Transient
    private int answerTotal;
        @OneToMany(fetch = FetchType.LAZY)
    private List<Answer> answers = new ArrayList<Answer>();
......
Run Code Online (Sandbox Code Playgroud)

每次查询问题时,我都需要告诉该问题有多少个答案。所以我需要计算:

String count = "select count(o) from Answer o WHERE o.question=:q";
Run Code Online (Sandbox Code Playgroud)

我的问题是,哪里是进行计数的最佳位置?(因为我对Question实体做了很多查询,按日期、按标签、按类别、按询问者等。在每个查询中添加计数操作显然不是一个好的解决方案。

我的第一次尝试是实现一个 @PostLoad 侦听器,因此每次加载 Question 实体时,我都会进行计数。但是,EntityManager 无法注入侦听器中。所以这个方法行不通。

有什么提示吗?(我使用 Hibernate 作为提供程序)。

java orm hibernate jpa

2
推荐指数
1
解决办法
874
查看次数

标签 统计

java ×3

jpa ×3

hibernate ×2

hash ×1

javascript ×1

mysql ×1

orm ×1

regex ×1

sha1 ×1