简体   繁体   English

使用jOOQ将查询字符串转换为Query或SelectQuery对象

[英]Cast query string to Query or SelectQuery object using jOOQ

I have some query string: 我有一些查询字符串:

String queryStr = "SELECT * FROM car";

I want cast this object to SelectQuery and then use incremental query building. 我想将此对象转换为SelectQuery,然后使用增量查询构建。

How to cast String object into SelectQuery? 如何将String对象转换为SelectQuery?

You cannot cast a String to any Java object. 您不能 String为任何Java对象。 You can either: 您可以:

Translate the SQL string to a jOOQ query 将SQL字符串转换为jOOQ查询

With jOOQ's DSL API, you'd be writing something like: 使用jOOQ的DSL API,您将编写如下内容:

DSL.using(configuration)
   .select()
   .from(CAR);

With jOOQ's Model API (ie to produce a SelectQuery ), you'd be writing something like: 使用jOOQ的Model API(即产生SelectQuery ),您将编写如下内容:

SelectQuery select = DSL.using(configuration).selectQuery();
select.addFrom(CAR);

You're looking for the latter. 您正在寻找后者。 The two APIs are compared here, in the manual 在手册中,此处比较了这两个API

Embed the SQL string in a jOOQ query 将SQL字符串嵌入jOOQ查询中

This is not what you're looking for, but for completeness's sake, you can also embed SQL strings directly into jOOQ objects, eg 这不是您要查找的内容,但是出于完整性考虑,您还可以将SQL字符串直接嵌入到jOOQ对象中,例如

ResultQuery<?> query = DSL.using(configuration).resultQuery("SELECT * FROM car");

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM