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

📄 basesql.java

📁 信息发布 发布系统 动态的菜单 和 信息统计
💻 JAVA
📖 第 1 页 / 共 2 页
字号:
        handlers.append(column);
        handlers.append("='");
        handlers.append(value);
        handlers.append("'");
        return handlers.toString();
    }

    protected static void prepareLikeCondition(StringBuffer handlers,
            String column, String value) {
        if (value != null && !value.equals("")) {
            value = value.replaceAll("%", "\\%").replaceAll("_", "\\_");
            handlers.append(AND);
            handlers.append(column);
            handlers.append(" LIKE '%");
            handlers.append(value);
            handlers.append("%' ESCAPE '\\\\'");
        }
    }

    public static void prepareLikeCondition(StringBuffer handlers,
            String table, String colDate, String[] dates, String[] columns,
            String[] orField, String[] orValue) {
        handlers.append(SELECT);
        for (String column : columns) {
            handlers.append(column);
            if (!column.equals(columns[columns.length - 1])) {
                handlers.append(COMMA);
            }
        }
        handlers.append(FROM);
        handlers.append(table);
        handlers.append(WHERE_1_EQUALS_1);
        if (dates.length == 2) {
            handlers.append(AND);
            handlers.append("(");
            handlers.append(colDate);
            handlers.append(" BETWEEN ");
            if (!dates[0].equals("'1900-01-01'")) {
                handlers.append("'");
            }
            handlers.append(dates[0]);
            if (!dates[0].equals("'1900-01-01'")) {
                handlers.append("'");
            }
            handlers.append(AND);
            if (!dates[1].equals("'9999-12-31'")) {
                handlers.append("'");
            }
            handlers.append(dates[1]);
            if (!dates[1].equals("'9999-12-31'")) {
                handlers.append("'");
            }
            handlers.append(")");
        }

        if (orField != null && orField[0].length() > 0 && orValue != null
                && orValue.length > 0 && orField.length == orValue.length) {
            for (int i = 0; i < orField.length; i++) {
                String value = orValue[i];
                if (value != null && value.length() > 0) {
                    handlers.append(AND);
                    handlers.append(orField[i]);
                    handlers.append(LIKE);
                    handlers.append("'");
                    handlers.append("%");
                    handlers.append(value.replaceAll("%", "").replaceAll("_",
                            ""));
                    handlers.append("%");
                    handlers.append("'");
                }
            }

        }

    }

    protected static void prepareAndCondition(StringBuffer handlers,
            String column, String value) {
        if (value != null && !value.equals("")) {
            handlers.append(AND);
            handlers.append(column);
            handlers.append("='");
            handlers.append(value);
            handlers.append("'");
        }
    }

    protected static void prepareAndCondition(StringBuffer handlers,
            String column, String value, boolean nullAble) {
        if (value != null && !value.equals("")) {
            handlers.append(AND);
            handlers.append("(");
            handlers.append(column);
            handlers.append("='");
            handlers.append(value);
            handlers.append("'");
            if (nullAble) {
                handlers.append(OR);
                handlers.append(column);
                handlers.append(IS_NULL);
            }
            handlers.append(")");
        }
    }

    protected static void prepareAboveEqualsCondition(StringBuffer handlers,
            String column, String value, boolean nul) {
        if (value != null && !value.equals("")) {
            handlers.append(AND);
            handlers.append("(");
            handlers.append(column);
            handlers.append(">='");
            handlers.append(value);
            handlers.append("'");
            if (nul) {
                handlers.append(OR).append(column).append(IS_NULL);
            }
            handlers.append(")");
        }
    }

    protected static void prepareAboveCondition(StringBuffer handlers,
            String column, String value, boolean nul) {
        if (value != null && !value.equals("")) {
            handlers.append(AND);
            handlers.append("(");
            handlers.append(column);
            handlers.append(">'");
            handlers.append(value);
            handlers.append("'");
            if (nul) {
                handlers.append(OR).append(column).append(IS_NULL);
            }
            handlers.append(")");
        }
    }

    protected static void prepareBelowEqualsCondition(StringBuffer handlers,
            String column, String value, boolean nul) {
        if (value != null && !value.equals("")) {
            handlers.append(AND);
            handlers.append("(");
            handlers.append(column);
            handlers.append("<='");
            handlers.append(value);
            handlers.append("'");
            if (nul) {
                handlers.append(OR).append(column).append(IS_NULL);
            }
            handlers.append(")");
        }
    }

    protected static void prepareBelowCondition(StringBuffer handlers,
            String column, String value, boolean nul) {
        if (value != null && !value.equals("")) {
            handlers.append(AND);
            handlers.append("(");
            handlers.append(column);
            handlers.append("<'");
            handlers.append(value);
            handlers.append("'");
            if (nul) {
                handlers.append(OR).append(column).append(IS_NULL);
            }
            handlers.append(")");
        }
    }

    protected static void prepareBetweenAndCondition(StringBuffer handlers,
            String column, String begin, String end, boolean nul) {
        if (begin != null && !begin.equals("") && end != null
                && !end.equals("")) {
            handlers.append(AND);
            handlers.append("(");
            handlers.append(column).append(BETWEEN);
            handlers.append("'").append(begin).append("'");
            handlers.append(AND).append("'").append(end).append("'");
            if (nul) {
                handlers.append(OR).append(column).append(IS_NULL);
            }
            handlers.append(")");
        }
    }

    public static void prepareOrderDesc(StringBuffer handler, String column) {
        handler.append(ORDER_BY);
        handler.append(column);
        handler.append(DESC);
    }

    public static void prepareOrderAsc(StringBuffer handler, String column) {
        handler.append(ORDER_BY);
        handler.append(column);
        handler.append(ASC);
    }

    public static void prepareOrderAsc(StringBuffer handler, String column,
            String column2) {
        handler.append(ORDER_BY);
        handler.append(column);
        handler.append(column2);
        handler.append(ASC);
    }

    public static void prepareOrderAsc(StringBuffer handler, String column,
            String column2, String column3) {
        handler.append(ORDER_BY);
        handler.append(column);
        handler.append(column2);
        handler.append(column3);
        handler.append(ASC);
    }

    public static void prepareInCondition(StringBuffer handlers, String column,
            String[] values) {
        if (column == null || column.equals("") || values == null
                || values.length == 0) {
            return;
        }
        handlers.append(AND);
        handlers.append(column);
        handlers.append(" IN (");
        for (int i = 0; i < values.length; i++) {
            if (i > 0) {
                handlers.append(", ");
            }
            handlers.append("'");
            handlers.append(values[i]);
            handlers.append("'");
        }
        handlers.append(")");
    }

    public static void prepareInCondition(StringBuffer handlers, String column,
            int[] values) {
        if (column == null || column.equals("")) {
            return;
        }
        if (values == null) {
            values = new int[0];
        }
        handlers.append(AND);
        handlers.append(column);
        handlers.append(" IN (-1");
        for (int value : values) {
            handlers.append(", ");
            handlers.append(value);
        }
        handlers.append(")");
    }

    protected static String getDictionaryColumn(String table, String column,
            String rename) {
        StringBuffer dictcol = new StringBuffer("( ");
        dictcol.append(SELECT);
        dictcol.append(Dictionary.COLUMN_NAME);
        dictcol.append(FROM);
        dictcol.append(Dictionary.TABLE);
        dictcol.append(WHERE_1_EQUALS_1);
        dictcol.append(AND);
        dictcol.append(Dictionary.COLUMN_CODE);
        dictcol.append(" = ");
        dictcol.append(table);
        dictcol.append(".");
        dictcol.append(column);
        prepareAndCondition(dictcol, Dictionary.COLUMN_TABLE, table);
        prepareAndCondition(dictcol, Dictionary.COLUMN_COLUMN, column);
        dictcol.append(") AS ");
        dictcol.append(rename);
        return dictcol.toString();
    }

    protected static String SUM(String column) {
        return "COALESCE(SUM(COALESCE(" + column + ", 0)), 0) AS " + column;
    }
}

⌨️ 快捷键说明

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