本文整理汇总了Java中com.baomidou.mybatisplus.generator.config.rules.NamingStrategy类的典型用法代码示例。如果您正苦于以下问题:Java NamingStrategy类的具体用法?Java NamingStrategy怎么用?Java NamingStrategy使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
NamingStrategy类属于com.baomidou.mybatisplus.generator.config.rules包,在下文中一共展示了NamingStrategy类的9个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的Java代码示例。
示例1: processName
import com.baomidou.mybatisplus.generator.config.rules.NamingStrategy; //导入依赖的package包/类
/**
* <p>
* 处理表/字段名称
* </p>
*
* @param name
* @param strategy
* @param prefix
* @return 根据策略返回处理后的名称
*/
private String processName(String name, NamingStrategy strategy, String[] prefix) {
boolean removePrefix = false;
if (prefix != null && prefix.length >= 1) {
removePrefix = true;
}
String propertyName;
if (removePrefix) {
if (strategy == NamingStrategy.underline_to_camel) {
// 删除前缀、下划线转驼峰
propertyName = NamingStrategy.removePrefixAndCamel(name, prefix);
} else {
// 删除前缀
propertyName = NamingStrategy.removePrefix(name, prefix);
}
} else if (strategy == NamingStrategy.underline_to_camel) {
// 下划线转驼峰
propertyName = NamingStrategy.underlineToCamel(name);
} else {
// 不处理
propertyName = name;
}
return propertyName;
}
开发者ID:baomidou,项目名称:mybatis-plus,代码行数:34,代码来源:ConfigBuilder.java
示例2: setStrategyConfig
import com.baomidou.mybatisplus.generator.config.rules.NamingStrategy; //导入依赖的package包/类
/**
* 生成策略配置
**/
private StrategyConfig setStrategyConfig() {
StrategyConfig strategy = new StrategyConfig();
// strategy.setTablePrefix(new String[]{""});// 此处可以修改为您的表前缀
strategy.setInclude(tables); // 需要生成的表
// strategy.setExclude(new String[]{"test"}); // 排除生成的表
strategy.setNaming(NamingStrategy.underline_to_camel);// 表名生成策略
// 字段名生成策略
// strategy.setFieldNaming(NamingStrategy.underline_to_camel);
// 自定义实体父类
// strategy.setSuperEntityClass("com.mi.common.model.BaseModel");
// 自定义实体,公共字段
// strategy.setSuperEntityColumns(new String[] { "test_id", "age" });
// 自定义 mapper 父类
// strategy.setSuperMapperClass("com.baomidou.demo.TestMapper");
// 自定义 service 父类
// strategy.setSuperServiceClass("com.baomidou.demo.TestService");
// 自定义 service 实现类父类
// strategy.setSuperServiceImplClass("com.baomidou.demo.TestServiceImpl");
// 自定义 controller 父类
// strategy.setSuperControllerClass("com.baomidou.demo.TestController");
// 【实体】是否生成字段常量(默认 false)
// public static final String ID = "test_id";
// strategy.setEntityColumnConstant(true);
// 【实体】是否为构建者模型(默认 false)
// public User setName(String name) {this.name = name; return this;}
// strategy.setEntityBuliderModel(true);
strategy.setCapitalMode(true);
return strategy;
}
开发者ID:MIYAOW,项目名称:MI-S,代码行数:33,代码来源:MybatisPlusGenerator.java
示例3: getColumnNaming
import com.baomidou.mybatisplus.generator.config.rules.NamingStrategy; //导入依赖的package包/类
public NamingStrategy getColumnNaming() {
if (null == columnNaming) {
// 未指定以 naming 策略为准
return naming;
}
return columnNaming;
}
开发者ID:baomidou,项目名称:mybatis-plus,代码行数:8,代码来源:StrategyConfig.java
示例4: processTable
import com.baomidou.mybatisplus.generator.config.rules.NamingStrategy; //导入依赖的package包/类
/**
* <p>
* 处理表对应的类名称
* </P>
*
* @param tableList 表名称
* @param strategy 命名策略
* @param config 策略配置项
* @return 补充完整信息后的表
*/
private List<TableInfo> processTable(List<TableInfo> tableList, NamingStrategy strategy, StrategyConfig config) {
String[] tablePrefix = config.getTablePrefix();
String[] fieldPrefix = config.getFieldPrefix();
for (TableInfo tableInfo : tableList) {
tableInfo.setEntityName(strategyConfig, NamingStrategy.capitalFirst(processName(tableInfo.getName(), strategy, tablePrefix)));
if (StringUtils.isNotEmpty(globalConfig.getMapperName())) {
tableInfo.setMapperName(String.format(globalConfig.getMapperName(), tableInfo.getEntityName()));
} else {
tableInfo.setMapperName(tableInfo.getEntityName() + ConstVal.MAPPER);
}
if (StringUtils.isNotEmpty(globalConfig.getXmlName())) {
tableInfo.setXmlName(String.format(globalConfig.getXmlName(), tableInfo.getEntityName()));
} else {
tableInfo.setXmlName(tableInfo.getEntityName() + ConstVal.MAPPER);
}
if (StringUtils.isNotEmpty(globalConfig.getServiceName())) {
tableInfo.setServiceName(String.format(globalConfig.getServiceName(), tableInfo.getEntityName()));
} else {
tableInfo.setServiceName("I" + tableInfo.getEntityName() + ConstVal.SERIVCE);
}
if (StringUtils.isNotEmpty(globalConfig.getServiceImplName())) {
tableInfo.setServiceImplName(String.format(globalConfig.getServiceImplName(), tableInfo.getEntityName()));
} else {
tableInfo.setServiceImplName(tableInfo.getEntityName() + ConstVal.SERVICEIMPL);
}
if (StringUtils.isNotEmpty(globalConfig.getControllerName())) {
tableInfo.setControllerName(String.format(globalConfig.getControllerName(), tableInfo.getEntityName()));
} else {
tableInfo.setControllerName(tableInfo.getEntityName() + ConstVal.CONTROLLER);
}
//强制开启字段注解
checkTableIdTableFieldAnnotation(config, tableInfo, fieldPrefix);
}
return tableList;
}
开发者ID:baomidou,项目名称:mybatis-plus,代码行数:46,代码来源:ConfigBuilder.java
示例5: getNaming
import com.baomidou.mybatisplus.generator.config.rules.NamingStrategy; //导入依赖的package包/类
public NamingStrategy getNaming() {
return naming;
}
开发者ID:baomidou,项目名称:mybatis-plus,代码行数:4,代码来源:StrategyConfig.java
示例6: setNaming
import com.baomidou.mybatisplus.generator.config.rules.NamingStrategy; //导入依赖的package包/类
public StrategyConfig setNaming(NamingStrategy naming) {
this.naming = naming;
return this;
}
开发者ID:baomidou,项目名称:mybatis-plus,代码行数:5,代码来源:StrategyConfig.java
示例7: setColumnNaming
import com.baomidou.mybatisplus.generator.config.rules.NamingStrategy; //导入依赖的package包/类
public StrategyConfig setColumnNaming(NamingStrategy columnNaming) {
this.columnNaming = columnNaming;
return this;
}
开发者ID:baomidou,项目名称:mybatis-plus,代码行数:5,代码来源:StrategyConfig.java
示例8: convertTableFields
import com.baomidou.mybatisplus.generator.config.rules.NamingStrategy; //导入依赖的package包/类
/**
* <p>
* 将字段信息与表信息关联
* </p>
*
* @param tableInfo 表信息
* @param strategy 命名策略
* @return
*/
private TableInfo convertTableFields(TableInfo tableInfo, NamingStrategy strategy) {
boolean haveId = false;
List<TableField> fieldList = new ArrayList<>();
List<TableField> commonFieldList = new ArrayList<>();
try {
String tableFieldsSql = querySQL.getTableFieldsSql();
if (QuerySQL.POSTGRE_SQL == querySQL) {
tableFieldsSql = String.format(tableFieldsSql, dataSourceConfig.getSchemaname(), tableInfo.getName());
} else {
tableFieldsSql = String.format(tableFieldsSql, tableInfo.getName());
}
PreparedStatement preparedStatement = connection.prepareStatement(tableFieldsSql);
ResultSet results = preparedStatement.executeQuery();
while (results.next()) {
TableField field = new TableField();
String key = results.getString(querySQL.getFieldKey());
// 避免多重主键设置,目前只取第一个找到ID,并放到list中的索引为0的位置
boolean isId = StringUtils.isNotEmpty(key) && key.toUpperCase().equals("PRI");
// 处理ID
if (isId && !haveId) {
field.setKeyFlag(true);
if (isKeyIdentity(results)) {
field.setKeyIdentityFlag(true);
}
haveId = true;
} else {
field.setKeyFlag(false);
}
// 处理其它信息
field.setName(results.getString(querySQL.getFieldName()));
field.setType(results.getString(querySQL.getFieldType()));
field.setPropertyName(strategyConfig, processName(field.getName(), strategy));
field.setColumnType(dataSourceConfig.getTypeConvert().processTypeConvert(field.getType()));
field.setComment(results.getString(querySQL.getFieldComment()));
if (strategyConfig.includeSuperEntityColumns(field.getName())) {
// 跳过公共字段
commonFieldList.add(field);
continue;
}
// 填充逻辑判断
List<TableFill> tableFillList = this.getStrategyConfig().getTableFillList();
if (null != tableFillList) {
for (TableFill tableFill : tableFillList) {
if (tableFill.getFieldName().equals(field.getName())) {
field.setFill(tableFill.getFieldFill().name());
break;
}
}
}
fieldList.add(field);
}
} catch (SQLException e) {
System.err.println("SQL Exception:" + e.getMessage());
}
tableInfo.setFields(fieldList);
tableInfo.setCommonFields(commonFieldList);
return tableInfo;
}
开发者ID:baomidou,项目名称:mybatis-plus,代码行数:68,代码来源:ConfigBuilder.java
示例9: generateByTables
import com.baomidou.mybatisplus.generator.config.rules.NamingStrategy; //导入依赖的package包/类
private void generateByTables(String packageName, String... tableNames) {
GlobalConfig config = new GlobalConfig();
String dbUrl = "jdbc:mysql://localhost:3306/mybatis-plus";
DataSourceConfig dataSourceConfig = new DataSourceConfig();
dataSourceConfig.setDbType(DbType.MYSQL)
.setUrl(dbUrl)
.setUsername("root")
.setPassword("")
.setDriverName("com.mysql.jdbc.Driver");
StrategyConfig strategyConfig = new StrategyConfig();
strategyConfig
.setCapitalMode(true)
.setEntityLombokModel(false)
.setDbColumnUnderline(true)
.setNaming(NamingStrategy.underline_to_camel)
.entityTableFieldAnnotationEnable(enableTableFieldAnnotation)
.fieldPrefix(fieldPrefix)//test_id -> id, test_type -> type
.setInclude(tableNames);//修改替换成你需要的表名,多个表名传数组
config.setActiveRecord(false)
.setIdType(tableIdType)
.setAuthor("K神带你飞")
.setOutputDir("d:\\codeGen")
.setFileOverride(true);
if (!serviceClassNameStartWithI) {
config.setServiceName("%sService");
}
new AutoGenerator().setGlobalConfig(config)
.setDataSource(dataSourceConfig)
.setStrategy(strategyConfig)
.setPackageInfo(
new PackageConfig()
.setParent(packageName)
.setController("controller")
.setEntity("entity")
).execute();
}
开发者ID:baomidou,项目名称:mybatis-plus,代码行数:37,代码来源:CodeGeneratorTest.java
注:本文中的com.baomidou.mybatisplus.generator.config.rules.NamingStrategy类示例整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。 |
请发表评论