【发布时间】:2011-02-11 02:51:04
【问题描述】:
我有一个 HQL 查询:
query = select item.itemNumber from items item where item.stock>0 and item.price<100.00
我喜欢解析这个查询并将其转换为树结构:
AST queryTree = parse(query);
我喜欢遍历节点,更改一些值,并将树转换回字符串表示:
Iterator<ASTNode> it = queryTree.nodeIterator();
while(it.hasNext())
{
ASTNode node = it.next();
System.out.println( node.text() + "->" + node.value() );
}
query = queryTree.toString();
如果在违反 HQL 语法的情况下 parse 方法会抛出异常,那就太好了,但这不是必需的。 有谁知道如何做到这一点? hibernate 是否提供任何 API 方法来完成该任务?
谢谢,
【问题讨论】:
标签: java hibernate parsing hql