Example usage for org.apache.ibatis.builder MapperBuilderAssistant getCurrentNamespace

List of usage examples for org.apache.ibatis.builder MapperBuilderAssistant getCurrentNamespace

Introduction

In this page you can find the example usage for org.apache.ibatis.builder MapperBuilderAssistant getCurrentNamespace.

Prototype

public String getCurrentNamespace() 

Source Link

Usage

From source file:com.baomidou.mybatisplus.toolkit.TableInfoHelper.java

License:Apache License

/**
 * <p>/* w  ww .j a v a  2 s.c  om*/
 * ??????
 * <p>
 *
 * @param clazz ??
 * @return
 */
public synchronized static TableInfo initTableInfo(MapperBuilderAssistant builderAssistant, Class<?> clazz) {
    TableInfo ti = tableInfoCache.get(clazz.getName());
    if (ti != null) {
        return ti;
    }
    TableInfo tableInfo = new TableInfo();
    GlobalConfiguration globalConfig;
    if (null != builderAssistant) {
        tableInfo.setCurrentNamespace(builderAssistant.getCurrentNamespace());
        tableInfo.setConfigMark(builderAssistant.getConfiguration());
        globalConfig = GlobalConfiguration.getGlobalConfig(builderAssistant.getConfiguration());
    } else {
        // 
        globalConfig = GlobalConfiguration.DEFAULT;
    }
    /* ?? */
    TableName table = clazz.getAnnotation(TableName.class);
    String tableName = clazz.getSimpleName();
    if (table != null && StringUtils.isNotEmpty(table.value())) {
        tableName = table.value();
    } else {
        // ?
        if (globalConfig.isDbColumnUnderline()) {
            tableName = StringUtils.camelToUnderline(tableName);
        }
        // ??
        if (globalConfig.isCapitalMode()) {
            tableName = tableName.toUpperCase();
        } else {
            // ??
            tableName = StringUtils.firstToLowerCase(tableName);
        }
    }
    tableInfo.setTableName(tableName);

    /* Oracle ? */
    KeySequence keySequence = clazz.getAnnotation(KeySequence.class);
    if (keySequence != null) {
        tableInfo.setKeySequence(keySequence);
    }

    /*  */
    if (table != null && StringUtils.isNotEmpty(table.resultMap())) {
        tableInfo.setResultMap(table.resultMap());
    }
    List<TableFieldInfo> fieldList = new ArrayList<>();
    List<Field> list = getAllFields(clazz);
    boolean existTableId = existTableId(list);
    for (Field field : list) {

        /*
         * ID ?
         */
        if (existTableId) {
            if (initTableId(globalConfig, tableInfo, field, clazz)) {
                continue;
            }
        } else if (initFieldId(globalConfig, tableInfo, field, clazz)) {
            continue;
        }

        /*
         * ?
         */
        if (initTableField(globalConfig, tableInfo, fieldList, field, clazz)) {
            continue;
        }

        /*
         * ,  camelToUnderline ?,  TableField , ?
         */
        fieldList.add(new TableFieldInfo(globalConfig, tableInfo, field));
    }

    /*  */
    tableInfo.setFieldList(globalConfig, fieldList);
    /*
     * ????
    */
    if (StringUtils.isEmpty(tableInfo.getKeyColumn())) {
        logger.warn(String.format("Warn: Could not find @TableId in Class: %s.", clazz.getName()));
    }
    /*
     * 
    */
    tableInfoCache.put(clazz.getName(), tableInfo);
    return tableInfo;
}

From source file:com.mybatisX.toolkit.TableInfoHelper.java

License:Apache License

/**
 * <p>//from   w  ww .  j  a  va  2 s .c  o  m
 * ??????
 * <p>
 *
 * @param clazz
 *            ??
 * @return
 */
public synchronized static TableInfo initTableInfo(MapperBuilderAssistant builderAssistant, Class<?> clazz) {
    TableInfo ti = tableInfoCache.get(clazz.getName());
    if (ti != null) {
        return ti;
    }
    TableInfo tableInfo = new TableInfo();

    if (null != builderAssistant) {
        tableInfo.setCurrentNamespace(builderAssistant.getCurrentNamespace());
    }
    /* ?? */
    TableName table = clazz.getAnnotation(TableName.class);
    String tableName = clazz.getSimpleName();
    if (table != null && StringUtils.isNotEmpty(table.value())) {
        tableName = table.value();
    } else if (MybatisConfiguration.DB_COLUMN_UNDERLINE) {
        /* ? */
        tableName = StringUtils.camelToUnderline(tableName);
    } else {
        tableName = tableName.toLowerCase();
    }
    tableInfo.setTableName(tableName);
    /*  */
    if (table != null && StringUtils.isNotEmpty(table.resultMap())) {
        tableInfo.setResultMap(table.resultMap());
    }
    List<TableFieldInfo> fieldList = new ArrayList<TableFieldInfo>();
    List<Field> list = getAllFields(clazz);
    boolean existTableId = existTableId(list);
    for (Field field : list) {

        /**
         * ID ?
         */
        if (existTableId) {
            if (initTableId(tableInfo, field, clazz)) {
                continue;
            }
        } else if (initFieldId(tableInfo, field, clazz)) {
            continue;
        }

        /**
         * ?
         */
        if (initTableField(fieldList, field, clazz)) {
            continue;
        }

        /**
         * ,  camelToUnderline ?,  TableField , ?
         */
        TableFieldInfo tfi = new TableFieldInfo(field.getName());
        fieldList.add(tfi);
    }

    /*  */
    tableInfo.setFieldList(fieldList);
    /**
     * SqlSessionFactory
     */
    if (null != MybatisPlusHolder.getSqlSessionFactory()) {
        tableInfo.setSqlSessionFactory(MybatisPlusHolder.getSqlSessionFactory());
    }
    /*
     * ?
     */
    if (null == tableInfo.getKeyColumn()) {
        logger.warn(String.format("Warn: Could not find @TableId in Class: %s, initTableInfo Method Fail.",
                clazz.getName()));
        return null;
    }
    /*
     * 
     */
    tableInfoCache.put(clazz.getName(), tableInfo);
    return tableInfo;
}

From source file:com.sinotopia.mybatis.plus.toolkit.TableInfoHelper.java

License:Apache License

/**
 * <p>/* w  ww  .  j  a  va 2s  .  com*/
 * ??????
 * <p>
 *
 * @param clazz ??
 * @return
 */
public synchronized static TableInfo initTableInfo(MapperBuilderAssistant builderAssistant, Class<?> clazz) {
    TableInfo ti = tableInfoCache.get(clazz.getName());
    if (ti != null) {
        return ti;
    }
    TableInfo tableInfo = new TableInfo();
    GlobalConfiguration globalConfig;
    if (null != builderAssistant) {
        tableInfo.setCurrentNamespace(builderAssistant.getCurrentNamespace());
        tableInfo.setConfigMark(builderAssistant.getConfiguration());
        globalConfig = GlobalConfiguration.getGlobalConfig(builderAssistant.getConfiguration());
    } else {
        // 
        globalConfig = GlobalConfiguration.DEFAULT;
    }
    /* ?? */
    TableName table = clazz.getAnnotation(TableName.class);
    String tableName = clazz.getSimpleName();
    if (table != null && StringUtils.isNotEmpty(table.value())) {
        tableName = table.value();
    } else {
        // ?
        if (globalConfig.isDbColumnUnderline()) {
            tableName = StringUtils.camelToUnderline(tableName);
        }
        // ??
        if (globalConfig.isCapitalMode()) {
            tableName = tableName.toUpperCase();
        } else {
            // ??
            tableName = StringUtils.firstToLowerCase(tableName);
        }
    }
    tableInfo.setTableName(tableName);

    // ? KEY ?
    if (null != globalConfig.getKeyGenerator()) {
        tableInfo.setKeySequence(clazz.getAnnotation(KeySequence.class));
    }

    /*  */
    if (table != null && StringUtils.isNotEmpty(table.resultMap())) {
        tableInfo.setResultMap(table.resultMap());
    }
    List<TableFieldInfo> fieldList = new ArrayList<>();
    List<Field> list = getAllFields(clazz);
    boolean existTableId = existTableId(list);
    for (Field field : list) {

        /*
         * ID ?
         */
        if (existTableId) {
            if (initTableId(globalConfig, tableInfo, field, clazz)) {
                continue;
            }
        } else if (initFieldId(globalConfig, tableInfo, field, clazz)) {
            continue;
        }

        /*
         * ?
         */
        if (initTableField(globalConfig, tableInfo, fieldList, field, clazz)) {
            continue;
        }

        /*
         * ,  camelToUnderline ?,  TableField , ?
         */
        fieldList.add(new TableFieldInfo(globalConfig, tableInfo, field));
    }

    /*  */
    tableInfo.setFieldList(globalConfig, fieldList);
    /*
     * ????
    */
    if (StringUtils.isEmpty(tableInfo.getKeyColumn())) {
        logger.warn(String.format("Warn: Could not find @TableId in Class: %s.", clazz.getName()));
    }
    /*
     * 
    */
    tableInfoCache.put(clazz.getName(), tableInfo);
    return tableInfo;
}