当前位置: 首页 > 面试题库 >

是否有任何库将SQL查询表示为Java代码中的对象?

贾越
2023-03-14
问题内容

我想知道是否有任何库可用于将SQL查询表示为Java中的对象。

在代码中,我有很多类型为java.lang.String的静态变量,它们是手写的SQL查询。我会寻找一个具有良好 流利
API的库,该API使我可以将查询表示为对象而不是字符串。

例:

Query q = select("DATE", "QUOTE")
  .from("STOCKMARKET")
  .where(eq("CORP", "?"))
  .orderBy("DATE", DESC);

问题答案:

Jequel看起来很漂亮:http://www.jequel.de/

它使用了流畅的界面,因此很容易阅读,就像自然SQL(来自文档)一样:

SqlString sql = select(ARTICLE.OID)
               .from(ARTICLE, ARTICLE_COLOR)
               .where(ARTICLE.OID.eq(ARTICLE_COLOR.ARTICLE_OID)
               .and(ARTICLE.ARTICLE_NO.is_not(NULL)));

它还支持对带有参数的DataSource执行查询,因此它也处理参数化查询的创建。



 类似资料:
  • 假设我有一个类和一个方法: 是否有一种方法可以编写一个在类路径上的任何类中调用该方法时都会失败的测试?我的意思是,不是在运行时调用方法时,而是在代码中声明方法时。 例如,该代码在类路径上的任何类中的precense都应该使测试失败: 我想要实现的目标:我想注释一些不应该在某个项目中调用的方法,但需要放在那里以便在另一个项目中使用,然后编写一个测试,确保注释的方法不会在任何地方被调用。

  • 我正在处理一个电影数据集,该数据集有电影、genre和桥接表in_Genre的表。下面的查询试图查找两部电影之间的共同类型。我做了两个连接来获得流派列表,并做了一个交叉来找到常见的流派。有没有更有效率的办法? null

  • 问题内容: 我很惊讶地发现这种情况总是成立的: 似乎无论最初是什么类型,它都将转换为相应类的实例。是否存在确定对象是否可靠的方法? 问题答案: 更新 我在下面显示的代码被报告在发行版本中不起作用。(请参阅下面的Paul Cantrell的评论。) 对于我的“据我测试”的道歉过于有限。 当我找到关于此的更多信息时,我将更新此答案。 我不确定我们是否可以在下一个Beta(或GM或已发布的版本…)中看到

  • 问题内容: 他(@Mack)使用T-SQL和DMV完成了类似的回答。 如果可能的话,这可能吗? 我会将其发布为评论,但是我还没有足够的声誉… 问题答案: 您可以但不使用DMV,但需要一个相关的动态管理 功能 (DMF) 这是代码: 这是指向DMV和DMF的MSDN页面的链接。

  • 我们有一个如下的函数 我想将所有和类型替换为更合适的类型。有没有代表任何可迭代类型的类型,如可以迭代的数组或对象?

  • 问题内容: 假设我的表格中有100列。我不知道特定值可能存在于哪些列中。因此,我想检查所有列,如果它存在于100列中的任何一列中,我想选择它。 我搜索了一下,在大多数地方,解决方案似乎是以下内容 我同意,我也读过一些论坛,据说这样做是对数据库设计不利的情况,但是我正在研究数据库中已经存在的表。 有没有更聪明的方式来做到这一点? 问题答案: 一种方法是通过反转操作员 如果您不想手动输入列,则使用该列