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

拓展阅读

linq
querydsl

Jinq 是什么?

Jinq为开发者提供了一种在Java中编写数据库查询的简单自然的方式。

你可以像处理存储在集合中的普通Java对象一样处理数据库数据。你可以使用普通的Java命令遍历和过滤它们,而你的所有代码都将自动转化为优化的数据库查询。

最后,Java终于有了LINQ风格的查询!

简单自然的查询。

使用Jinq,你可以使用简单自然的Java语法编写数据库查询。利用Java 8对函数式编程的新支持,你可以使用与常规Java数据相同的代码来过滤和转换数据库中的数据。

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

java 复制代码
database.customerStream().where(
customer -> customer.getName().equals("Alice"));

代码执行流程如下:

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

当在Java中执行此代码时,Jinq将自动将代码转换为数据库可以理解的SQL查询。

java 复制代码
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是开源的。现在下载并按照入门指南学习更多关于其功能的信息。

参考资料

www.jinq.org/

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

相关推荐
llwszx5 分钟前
【Java/Go后端手撸原生Agent(第九篇):Plan-and-Execute规划模式——从“走一步看一步“到“先谋后动“】
java·python·golang·agent开发·plan模式·规划执行模式
ZJH__GO14 分钟前
网络编程v2--多客户端互通
java·运维·服务器·开发语言·计算机网络
霸道流氓气质27 分钟前
SpringBoot中基于 AES-GCM + KMS 密钥管理的数据加解密 Starter 实践
java·数据库·spring boot
Gofarlic_OMS39 分钟前
NX浮动许可调度黑名单机制,对比两款谁更合理
java·大数据·运维·开源·制造
乐观的Terry1 小时前
8、发布系统-完整流水线的核心
java·spring boot·spring·spring cloud
Alexalbb1 小时前
从角色过滤到可审计授权:单体系统数据权限设计复盘与演进
java
万亿少女的梦1681 小时前
基于Spring Boot的游戏交易管理系统设计与实现
java·spring boot·mysql·系统设计·交易管理
闲猫2 小时前
Agent工程实践:从WorkFlow到多Agent协作的落地笔记
java·服务器·前端
笨蛋不要掉眼泪2 小时前
Java虚拟机:常用参数
java·开发语言·python
亦暖筑序3 小时前
AgentScope-Java 入门:用 Middleware 审计 Agent 调用
java·ai编程·agentscope