1

假设我试图为一个简单的 JPA 查询语法做一个语法,像这样

select e from Entity e where e.name=:name and e.data>:time

有没有关于如何做那个别名部分的文档(基本上是“e”)?

如果用户输入,我基本上是在尝试获取错误

select a from Entity e where a.name=:name

注意 a 没有定义,所以这应该失败。我应该在语法中这样做吗?或者我应该在我走树时解析语法后这样做?

4

1 回答 1

1

我应该在语法中这样做吗?

当然,您应该或不应该做的是您的业务:)

或者我应该在我走树时解析语法后这样做?

是的,这通常是在评估您的 AST 时完成的,而不是在 AST 创建期间(所以不是在解析期间)。

于 2012-07-06T18:28:18.567 回答