关于后端:jinq-入门介绍java中编写数据库查询的简单自然的方式

拓展浏览

linq

querydsl

Jinq 是什么?

Jinq为开发者提供了一种在Java中编写数据库查问的简略天然的形式。

你能够像解决存储在汇合中的一般Java对象一样解决数据库数据。你能够应用一般的Java命令遍历和过滤它们,而你的所有代码都将主动转化为优化的数据库查问。

最初,Java终于有了LINQ格调的查问!

简略天然的查问。

应用Jinq,你能够应用简略天然的Java语法编写数据库查问。利用Java 8对函数式编程的新反对,你能够应用与惯例Java数据雷同的代码来过滤和转换数据库中的数据。

例如,上面是一段应用Jinq从数据库中获取所有名为“Alice”的客户的Java代码。

database.customerStream().where(
customer -> customer.getName().equals("Alice"));

代码执行流程如下:

从数据库中获取所有客户的流
应用函数拜访每个客户对象并进行过滤
只返回名为“Alice”的客户

当在Java中执行此代码时,Jinq将主动将代码转换为数据库能够了解的SQL查问。

PreparedStatement s = con.prepareStatement("SELECT * "

"FROM Customer C "
"WHERE C.Name = ? ");
s.setString(1, "Alice");
ResultSet rs = s.executeQuery();

更少的谬误。更少的安全漏洞。更快的开发速度。

现有的数据库查问写在字符串外部。为了查看谬误,你必须启动数据库并运行查问。这会减慢开发速度并导致更多谬误。

Jinq查问是一般的Java代码,Java编译器将晚期捕捉谬误,放慢开发速度。因为查问被编写为Java代码,因而不可能呈现常见的SQL注入平安问题。

立刻尝试

Jinq是开源的。当初下载并依照入门指南学习更多对于其性能的信息。

参考资料

https://www.jinq.org/

本文由博客一文多发平台 OpenWrite 公布!

评论

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

这个站点使用 Akismet 来减少垃圾评论。了解你的评论数据如何被处理