拓展浏览
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 公布!
发表回复