QueryFormHelper.java 文件源码

java
阅读 41 收藏 0 点赞 0 评论 0

项目:sucok-framework 作者:
@SuppressWarnings("unchecked")
public static <T, N extends Number> Expression<N> getExpression(CriteriaBuilder cb, Root<T> root, String input) {
    StringTokenizer tokenizer = new StringTokenizer(input, "+-*/", true);
    Expression<N> expr = getPath(root, tokenizer.nextToken());
    if (tokenizer.hasMoreTokens()) {
        String op = tokenizer.nextToken();
        String name = tokenizer.nextToken();
        Expression<N> expr2 = getPath(root, name);
        if ("+".equals(op)) {
            expr = cb.sum(expr, expr2);
        } else if ("-".equals(op)) {
            expr = cb.diff(expr, expr2);
        } else if ("*".equals(op)) {
            expr = cb.prod(expr, expr2);
        } else if ("/".equals(op)) {
            expr = (Expression<N>) cb.quot(expr, expr2);
        }
    }
    return expr;
}
评论列表
文章目录


问题


面经


文章

微信
公众号

扫码关注公众号