All Downloads are FREE. Search and download functionalities are using the official Maven repository.

net.matrix.sql.hibernate.HQLmx Maven / Gradle / Ivy

/*
 * 版权所有 2024 Matrix。
 * 保留所有权利。
 */
package net.matrix.sql.hibernate;

import javax.annotation.Nonnull;
import javax.annotation.concurrent.ThreadSafe;

/**
 * HQL 工具。
 */
@ThreadSafe
public final class HQLmx {
    private static final char[] PARAMETER_PREFIX = {
        ':', 'p'
    };

    /**
     * 阻止实例化。
     */
    private HQLmx() {
    }

    /**
     * 在 HQL 中拼入参数名,格式为“:p”加序号。
     *
     * @param hql
     *     HQL。
     * @param index
     *     序号。
     */
    public static void appendParameterName(@Nonnull StringBuilder hql, int index) {
        hql.append(PARAMETER_PREFIX).append(index);
    }

    /**
     * 生成参数名,格式为“p”加序号。
     *
     * @param index
     *     序号。
     */
    @Nonnull
    public static String getParameterName(int index) {
        return PARAMETER_PREFIX[1] + Integer.toString(index);
    }
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy