1、首先准备一个excel文件:
id | type | name |
id | int | 学号 |
name | string | 姓名 |
age | int | 年龄 |
sex | string | 性别 |
weight | decimal(20,4) | 体重 |
score | decimal(20,4) | 分数 |
2、直接生成java字段和注释:
import pandas as pddf = pd.read_excel('test.xlsx', sheet_name='Sheet1')for i in range(len(df.values)):data_type = ''if df['type'][i] == 'bigint':data_type = "Long"elif df['type'][i] == 'int':data_type = "Integer"elif df['type'][i] == 'string':data_type = "String"elif df['type'][i] == 'decimal(20,4)':data_type = "Double"strs = "/**\n* " + df['name'][i] + "\n*/\n"str_entity = strs + 'private' + ' ' + data_type + ' ' + df['id'][i] + ';'print(str_entity)
3、生成建表语句:
import pandas as pddf = pd.read_excel('test.xlsx', sheet_name='Sheet1')str1 = 'create table student' + ' ' + '(' + '\n'
str2 = ")"
for i in range(len(df.values)):data_type = ''if df['type'][i] == 'bigint':data_type = "bigint(20)"elif df['type'][i] == 'int':data_type = "int(11)"elif df['type'][i] == 'string':data_type = "varchar(20)"elif df['type'][i] == 'decimal(20,4)':data_type = "decimal(20,4)"str = '`' + df['id'][i] + '`' + ' ' + data_type + ' ' + 'NOT NULL COMMENT' + ' ' + "'" + df['name'][i] + "'" + ','str1 = str1 + str + '\n'
# 删除末尾换行符和","
str1 = str1[:-2]
str1 = str1 + str2 + ';'
print(str1)
结果:
可以根据实际需求增加主键或其它约束。