Jinq 为开发者提供轻松自然的方式来在 Java 应用中编写数据库查询。你可以把数据库当成普通的存储在集合里的 Java 对象,然后通过迭代器来访问这些对象,而代码会自动转成经过优化的数据库查询。
例如你之前的数据库查询方式是:
PreparedStatement s = con.prepareStatement("SELECT * " + "FROM Customer C " + "WHERE C.Name = ? "); s.setString(1, "Alice"); ResultSet rs = s.executeQuery();
如果用 Jinq 来写的话是这样:
database.getCustomers().where( customer -> customer.getName().equals("Alice"));
Jinq库为数据库查询提供了一个DSL,可以用于Java和Scala。这个项目的灵感来源于.NET的LINQ,致力于提供易于编写的查询,同时支持类型安全。据这个工具的创建者Ming-Yee Iu介绍,Jinq起步于2006年,当时的名称为Queryll,但是直到采用了Java 8的lambdas,才完全发挥出了它的潜力。\u0026#xD;\n\u0026#xD;\n 跟其他已有的库不同,Jinq
几天前,我读了Iu Ming-Yee关于JINQ的有趣采访 。 顾名思义,JINQ是一种尝试提供类似于LINQ for Java的尝试。 基本思想是缩小在关系数据模型上执行查询的面向对象代码之间的语义鸿沟。 关系数据库模型的查询应轻松集成到代码中,以使其感觉更自然。 LINQ背后的研究得出的结论是,将代码转换为关系数据库查询的算法最适合功能代码。 当Java 8附带流API时,作者使用它来实现Ja
java jinq 几天前,我读了Iu Ming-Yee对JINQ的有趣采访 。 顾名思义,JINQ是一种尝试提供类似于LINQ for Java的尝试。 基本思想是缩小在关系数据模型上执行查询的面向对象代码之间的语义鸿沟。 关系数据库模型的查询应轻松集成到代码中,以使其感觉更自然。 LINQ背后的研究得出的结论是,将代码转换为关系数据库查询的算法最适合功能代码。 当Java 8附带流API时,作
假设我需要解析一个JSON(见下文)。 首先,我解析“status”字段,以获得的实例(见下文) 我可以用解析JSON以获得而不首先获得吗?
camelCase 很糟 你曾维护过别人的代码吗?你维护过像这样的代码吗? my $variableThatContainsData = someSubroutineThatMucksWithData( $someAwfulVariable ); 混合大小写单词在 Perl 世界被称为 camelCase,通常它的令人不悦之处是使 阅读代码更难。 甚至具有糟糕名称的代码使用下划线也能变得
问题内容: 我正在为这个论坛进行编码,由于我是LINQ的新手,因此用户访问主页时遇到了这个问题。我想要一个显示这样的论坛列表的表: 我有以下SQL表: 谢谢… 问题答案: 如果您使用成员身份并且不想将aspnet_Users包含在dbml中,则用于显示用户名: 使发布的示例更好一点的另一项更改是在posts变量中添加orderbydescending:然后,您可以从select子句中删除重复4次的
问题内容: 标题几乎总结了一下。 外部样式表具有以下代码: 我尝试使用: 和 但都行不通。是否有可能使用javascript覆盖!important样式。 如果有区别的话,这是给 greasemonkey扩展的。 问题答案: 我相信这样做的唯一方法是将样式添加为带有’!important’后缀的新CSS声明。最简单的方法是将新的元素附加到文档的开头: 使用上述方法添加的规则(如果使用!import
Style Java 传统的代码风格是被用来编写非常复杂的企业级 JavaBean。新的代码风格看起来会更加整洁,更加正确,并且更加简单。 Structs 对我们程序员来说,包装数据是最简单的事情之一。下面是传统的通过定义一个 JavaBean 的实现方式: public class DataHolder { private String data; public DataHold
如果一定要把一般的API 服务转换成restful风格,可以自定义控制器。例如上一节的服务例子: 方法 restful url 功能 原 url 原方法 GET /website 查询记录列表 /website/list.java GET POST /website 创建一条记录 /website/insert.java POST GET /website/id 根据id查询记录 /website
我有一个使用Hibernate 4.x的应用程序,它当前正在使用本机Hibernate API(这意味着我有一个和)。我刚刚注意到,现有的标准API被弃用了,而支持JPA的(高级)标准API: Hibernate提供了一个旧的、遗留的API,应该将其视为不推荐使用的API。任何特性开发都不会针对这些API。最终,特定于Hibernate的条件特性将作为JPA的扩展进行移植。 我不想将我的应用程序转
问题内容: Python教程说:“在运算符周围和逗号后使用空格,但不要直接在括号结构内使用:a = f(1,2)+ g(3,4)”。“不直接在包围结构内”到底是什么意思? 问题答案: 这可能来自PEP 8-Python代码样式指南 。具体来说,请参见“表达式和语句中的空白”部分。 从该部分: