zoukankan      html  css  js  c++  java
  • mybatis通用mapper源码解析(二)

    1.javabean的属性值生成sql

      /**
         * 获取所有查询列,如id,name,code...
         *
         * @param entityClass
         * @return
         */
        public static String getAllColumns(Class<?> entityClass) {
            Set<EntityColumn> columnSet = EntityHelper.getColumns(entityClass);
            StringBuilder sql = new StringBuilder();
            for (EntityColumn entityColumn : columnSet) {
                sql.append(entityColumn.getColumn()).append(",");
            }
            return sql.substring(0, sql.length() - 1);
        }
      /**
         * 判断自动==null的条件结构
         *
         * @param entityName
         * @param column
         * @param contents
         * @param empty
         * @return
         */
        public static String getIfIsNull(String entityName, EntityColumn column, String contents, boolean empty) {
            StringBuilder sql = new StringBuilder();
            sql.append("<if test="");
            if (StringUtil.isNotEmpty(entityName)) {
                sql.append(entityName).append(".");
            }
            sql.append(column.getProperty()).append(" == null");
            if (empty && column.getJavaType().equals(String.class)) {
                sql.append(" or ");
                if (StringUtil.isNotEmpty(entityName)) {
                    sql.append(entityName).append(".");
                }
                sql.append(column.getProperty()).append(" == '' ");
            }
            sql.append("">");
            sql.append(contents);
            sql.append("</if>");
            return sql.toString();
        }
  • 相关阅读:
    POJ 3186 Treats for the Cows
    HDU 1226 超级密码| NYOJ 929 密码宝盒
    POJ 1661 Help Jimmy
    POJ 1458 Common Subsequence
    POJ 1015 Jury Compromise
    window.history,页面中的返回按钮
    网站新功能引导镂空效果
    HTML5存储
    JSON对象
    点击超链接,将页面中某个数据传到另一个页面
  • 原文地址:https://www.cnblogs.com/zxf330301/p/9508749.html
Copyright © 2011-2022 走看看