你的位置:首页 > Java教程

[Java教程]基于mybatis


项目简单说明

mybatis-generator,是根据数据库表、字段反向生成实体类等代码文件。我在国庆时候,没事剖析了mybatis-generator-core源码,写了相当详细的中文注释,可以去看看。目前我剖析修改的是1.3.5版本。

 

源码剖析说明

1.剖析org.mybatis.generator.plugins.ToStringPlugin源码
2.剖析org.mybatis.generator.plugins.MapperConfigPlugin源码
3.剖析org.mybatis.generator.api.ShellRunner源码,Main入口
3.剖析org.mybatis.generator.config.4.剖析org.mybatis.generator.config.Context源码,封装元素内容

修改源码说明(原版本没有的功能)

1.数据表的备注信息的添加:在FullyQualifiedTable类中添加remark字段,并在org.mybatis.generator.internal.db.DatabaseIntrospector类calculateIntrospectedTables方法,添加一段获取数据库备注的代码

 1  //设置数据库表的备注信息 2  //start 3  Statement stmt = this.databaseMetaData.getConnection().createStatement(); 4  ResultSet rs = stmt.executeQuery( 5      new StringBuilder() 6      .append("SHOW TABLE STATUS LIKE '") 7      .append(atn.getTableName()) 8      .append("'") 9      .toString());10  while (rs.next())11    table.setRemark(rs.getString("COMMENT"));12  closeResultSet(rs);13  stmt.close();14  //end



2..非model类Example的注释方法的添加,方法名addExampleClassComment(TopLevelClass topLevelClass)
3.重构部分org.mybatis.generator.codegen.mybatis3.IntrospectedTableMyBatis3Impl包里getGeneratedJavaFiles方法
4.详细中文注释的添加,入口包函数在org.mybatis.generator.api.ShellRunner
5.生成的中文注释信息可在修DefaultCommentGenerator类修改

 

源码地址:

https://github.com/orange1438/mybatis-generator-core-chinese-annotation-1.3.5