⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 retrievecriteria.java

📁 根据Scott W. Ambler在1998年写的关于ORM Persistence Layer的详细设计论文的设计思路,Artem Rudoy 开发了一个开源的ORM实现 -- PL(Persist
💻 JAVA
字号:
package pl.criteria;

import pl.map.*;


/**
 *
 */
public class RetrieveCriteria extends PersistentCriteria
{


    /**
     * Creates RetrieveCriteria.
     *
     * @param cl target class for this criteria
     */
    public RetrieveCriteria(Class cl)
    {
        super(cl);

    }

    /**
     * Creates RetrieveCriteria.
     *
     * @param className name of the target class for this criteria
     */
    public RetrieveCriteria(String className)
    {
        super(className);

    }

    /**
     * Creates a copy of persistent criteria.
     *
     * @param criteria source criteria
     */
    public RetrieveCriteria(PersistentCriteria criteria)
    {
        super(criteria);
    }

    /**
     * Creates RetrieveCriteria.
     *
     * @param classMap class map for this criteria
     */
    public RetrieveCriteria(ClassMap classMap)
    {
        super(classMap);

    }


    /**
     * 将参数值 parameters 匹配到SQL语句中,返回完整的SqlStatement对象
     *
     * @return pl.sql.SqlStatement
     */
    public pl.sql.SqlStatement getSqlStatement(java.util.Vector parameters, boolean forProxy) throws pl.PlException
    {
        pl.sql.SqlStatement statement = null;

        statement = getClassMap().getSelectSql();
         System.out.println(" RetrieveCriteria statement 1="+statement);

        java.util.Iterator enumerationParameters = parameters.iterator();

        // Add 'FROM' clause to the select statement
        statement.addSqlClause(" " + getClassMap().getRelationalDatabase().getClauseStringFrom() + " ");
        Object[] tablesArray = getTables().toArray();
        for(int i = 0; i < tablesArray.length; i++)
        {
            TableMap tableMap = (TableMap)tablesArray[i];
            statement.addSqlClause((i > 0 ? ", " : "") + tableMap.getName());
        }
         System.out.println(" RetrieveCriteria statement 2="+statement);

        // Fill statement with WHERE condition
        fillStatementWithWhere(statement, enumerationParameters);

        System.out.println(" RetrieveCriteria statement 3="+statement);

        return statement;
    }


}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -