使用QueryDSL在join子句上指定别名

mau*_*chi 5 java sql querydsl

使用QueryDSL我会创建一个如下所示的查询:

select * from cats as C join owners as O on ...
Run Code Online (Sandbox Code Playgroud)

出于可读性原因,我会在join子句中应用别名"O",但DSL似乎不支持这个:

query.from(cats.as("C")).join(owners.as("O")).on(...)
Run Code Online (Sandbox Code Playgroud)

类型owners.as("O")与join子句期望的类型不兼容.

你知道吗?

mau*_*chi 6

好吧,您可以使用别名创建它,而不是使用表的自动生成的静态实例:

Cat cat = new Cat("C");
Owner owner = new Owner("O");
query.from(cats).join(owners).on(...)
Run Code Online (Sandbox Code Playgroud)