新增: 自动生成 PO 对象

master
曹世达 6 months ago
parent 25ccae169d
commit 635c44cba4

@ -48,12 +48,14 @@ public class ColumnBuilder {
result.setComment(column.get(columnComment));
String columnName = CONFIG.getString(SqlConsts.LABEL_COLUMN_NAME);
result.setColumnName(column.get(columnName));
String propertyName = StrUtils.toCamelCase(result.getColumnName(), false);
result.setPropertyName(propertyName);
String sqlDataType = CONFIG.getString(SqlConsts.LABEL_DATA_TYPE);
result.setSqlDataType(column.get(sqlDataType));
String javaDataType = TypeUtils.toJavaDataType(result.getSqlDataType());
result.setJavaDataType(javaDataType);
String fieldName = StrUtils.toCamelCase(result.getColumnName(), false);
result.setFieldName(fieldName);
String fieldNameCap = StrUtils.toCamelCase(result.getColumnName(), true);
result.setFieldNameCap(fieldNameCap);
String dbType = CONFIG.getString(SqlConsts.LABEL_DATA_TYPE);
result.setDbType(column.get(dbType));
String javaType = TypeUtils.toJavaDataType(result.getDbType());
result.setJavaType(javaType);
String extra = CONFIG.getString(SqlConsts.LABEL_EXTRA);
result.setAutoIncrement(column.get(extra).contains(SqlConsts.VALUE_AUTO_INCREMENT));

@ -98,10 +98,10 @@ public class TableBuilder {
result.setColumns(columnInfo);
result.setDateExists(columnInfo.stream()
.anyMatch(column -> TypeUtils.JAVA_TYPE_DATE.equals(column.getJavaDataType())));
.anyMatch(column -> TypeUtils.JAVA_TYPE_DATE.equals(column.getJavaType())));
result.setDecimalExists(columnInfo.stream()
.anyMatch(column -> TypeUtils.JAVA_TYPE_DECIMAL.equals(column.getJavaDataType())));
.anyMatch(column -> TypeUtils.JAVA_TYPE_DECIMAL.equals(column.getJavaType())));
List<IndexInfo> indexInfoList = IndexBuilder.loadIndexInfo(
result.getTableSchema(),

@ -3,9 +3,10 @@ package space.caoshd.otone.entity;
public class ColumnInfo {
private String columnName;
private String propertyName;
private String sqlDataType;
private String javaDataType;
private String fieldName;
private String fieldNameCap;
private String dbType;
private String javaType;
private String comment;
private Boolean autoIncrement;
@ -17,28 +18,36 @@ public class ColumnInfo {
this.columnName = columnName;
}
public String getPropertyName() {
return propertyName;
public String getFieldName() {
return fieldName;
}
public void setPropertyName(String propertyName) {
this.propertyName = propertyName;
public void setFieldName(String fieldName) {
this.fieldName = fieldName;
}
public String getSqlDataType() {
return sqlDataType;
public String getFieldNameCap() {
return fieldNameCap;
}
public void setSqlDataType(String sqlDataType) {
this.sqlDataType = sqlDataType;
public void setFieldNameCap(String fieldNameCap) {
this.fieldNameCap = fieldNameCap;
}
public String getJavaDataType() {
return javaDataType;
public String getDbType() {
return dbType;
}
public void setJavaDataType(String javaDataType) {
this.javaDataType = javaDataType;
public void setDbType(String dbType) {
this.dbType = dbType;
}
public String getJavaType() {
return javaType;
}
public void setJavaType(String javaType) {
this.javaType = javaType;
}
public String getComment() {

@ -1,5 +1,13 @@
package ${cls.packageName};
import java.io.Serializable;
#if(${tbl.decimalExists})
import java.math.BigDecimal;
#end
#if(${tbl.dateExists})
import java.util.Date;
#end
#define($authorComment)
#if(${ext.author} && ${ext.author} != "")
@ -15,5 +23,33 @@ package ${cls.packageName};
* $!{tbl.comment}数据实体
* ${authorComment}${versionComment}
*/
public class ${ClassName} {
public class ${ClassName} implements Serializable {
#foreach($column in ${tbl.columns})
/**
* ${column.comment}
*/
private ${column.javaType} ${column.fieldName};
#end
#foreach($column in ${tbl.columns})
/**
* 获取${column.comment}
*
* @return ${column.comment}
*/
public ${column.javaType} get${column.fieldNameCap}() {
return ${column.fieldName};
}
/**
* 设置${column.comment}
*
* @param ${column.fieldName} ${column.comment}
*/
public void set${column.fieldNameCap}(${column.javaType} ${column.fieldName}) {
this.${column.fieldName} = ${column.fieldName};
}
#end
}
Loading…
Cancel
Save