> YMP中文手册 > 5-4自动生成实体类(方式一)

自动生成实体类(方式一)


YMP框架自v1.0开始就支持通过数据库表结构自动生成实体类代码,所以v2.0版本不但重构了实体代码生成器,而且更简单好用!

#-------------------------------------
# JDBC数据实体代码生成器配置参数
#-------------------------------------

# 是否生成新的BaseEntity类,默认为false(即表示使用框架提供的BaseEntity类)
ymp.params.jdbc.use_base_entity=

# 是否使用类名后缀,不使用和使用的区别如: User-->UserModel,默认为false
ymp.params.jdbc.use_class_suffix=

# 是否采用链式调用模式,默认为false
ymp.params.jdbc.use_chain_mode=

# 是否添加类成员属性值状态变化注解,默认为false
ymp.params.jdbc.use_state_support=

# 数据库名称(仅针对特定的数据库使用,如oracle),默认为空
ymp.params.jdbc.db_name=

# 数据库用户名称(仅针对特定的数据库使用,如Oracle),默认为空
ymp.params.jdbc.db_username=

# 数据库表名称前缀,多个用'|'分隔,默认为空
ymp.params.jdbc.table_prefix=

# 否剔除生成的实体映射表名前缀,默认为false
ymp.params.jdbc.remove_table_prefix=

# 预生成实体的数据表名称列表,多个用'|'分隔,默认为空表示全部生成
ymp.params.jdbc.table_list=

# 排除的数据表名称列表,在此列表内的数据表将不被生成实体,多个用'|'分隔,默认为空
ymp.params.jdbc.table_exclude_list=

# 生成的代码文件输出路径,默认为${root}
ymp.params.jdbc.output_path=

# 生成的代码所属包名称,默认为: packages
ymp.params.jdbc.package_name=

实际上你可以什么都不用配置(请参看以上配置项说明,根据实际情况进行配置),但使用过程中需要注意以下几点:

  • 代码生成器依赖JDBC持久化模块才能完成与数据库连接等操作;

  • 在多数据源模式下,代码生成器使用的是默认数据源;

  • 代码生成器依赖freemarker模板引擎,所以请检查依赖关系是否正确;

  • 在WEB工程中运行代码生成器时请确认servlet-api和jsp-api包依赖关系是否正确;

  • 如果你的工程中引用了很多的模块,在运行代码生成器时可以暂时通过ymp.excluded_modules参数排除掉;

了解了以上的配置后,直接运行代码生成器:

net.ymate.platform.persistence.jdbc.scaffold.EntityGenerator

找到并运行它,如果是maven项目,可以通过以下命令执执行:

mvn compile exec:java -Dexec.mainClass="net.ymate.platform.persistence.jdbc.scaffold.EntityGenerator"

OK!就这么简单,一切都结束了!