# super-mybatis-generator **Repository Path**: hncdyj/super-mybatis-generator ## Basic Information - **Project Name**: super-mybatis-generator - **Description**: 比mybatis-generator更牛逼的生成工具,基本做到稍作前端js代码修改就是一个项目。 - **Primary Language**: Java - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 2 - **Forks**: 0 - **Created**: 2018-01-03 - **Last Updated**: 2024-04-30 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 首先想说说写这个项目的目的
1.项目表太多。
2.mybatis自带的生成mybatis-generator生成的代码可能不太友好,而且只有model,mapper,xml。
3.继承mybatis-generator本身的生成。
4.项目里面里面要写很多Service方法。
5.生成基本可以做所有表的增删改查的前端页面。
6.只专注在service层的业务开发。

## 1.项目采用assembly打包,打出来的包可以直接解压到linux或者window上面运行
项目结构如图: ![image](https://github.com/hncdyj123/super-mybatis-generator/blob/master/image/project.jpg) ## 2.项目运行修改配置:
### 修改根目录下的mbgConfiguration.xml
```Java ``` ### 修改本地配置
修改数据库配置信息
```Java ```
修改model和mapper
1.javaModelGenerator targetProject="D:\super-easyui\src\main\java" D:\super-easyui需要和config.properties配置项:system.projectname保持一致。
targetPackage="com.sym.ams.domain" "com.sym.ams"需要和config.properties配置项:system.project.packagename保持一致。
2.sqlMapGenerator targetProject="D:\super-easyui\src\main\resources\mybatis" D:\super-easyui需要和config.properties配置项:system.projectname保持一致。
```Java
``` 配置需要生成的表,建议所有表,因为innerservice,service,controller,页面会生成所有
```Java
``` ### 修改根目录下config.properties ```Java # 项目根目录 system.projectname=D:\\super-easyui # schema名称(针对oracle一个用户下建立多个表空间) system.db.schema=vehicle6 # 项目包名(数据库查询xml和项目包会用到此配置) system.project.packagename=com.klonetech.dataprocess # 表字符替换名(与Dao,Service,Controller,Jsp,Js生成文件名相关,默认用"_"替换,可不配置) system.table.sub=_ # 表字符替换名(与Dao,Service,Controller,Jsp,Js生成文件名相关,默认用"_"替换,可不配置) system.column.sub=_ # 生成项目中的log的project名称 log.project.name=super-easyui # 生成项目中log的等级 log.level=INFO # 生成项目中的资源文件 prosource.fileNames=app.properties,applicationContext.xml,logback.xml,pom.xml # 生成项目中的JDBC连接 jdbc.driver.config=com.mysql.jdbc.Driver jdbc.url.config=jdbc:mysql://127.0.0.1:3306/klonetech?useUnicode=true&characterEncoding=UTF-8&allowMultiQueries=true&zeroDateTimeBehavior=convertToNull jdbc.username.config=root jdbc.password.config=root jdbc.pool.initialSize.config=150 jdbc.pool.minIdle.config=50 jdbc.pool.maxActive.config=150 ``` ## 3.生成项目预览 查询操作
![image](https://github.com/hncdyj123/super-mybatis-generator/blob/master/image/search.jpg) 修改操作
![image](https://github.com/hncdyj123/super-mybatis-generator/blob/master/image/update.jpg) ## 4.生成项目后运行可能遇到的问题 1.样式错乱。(这个可以微调easyui样式)
2.新增和修改抓包报400错,这是spring绑定实体对象报错。(表单不要提交date,datetime,timestamp等类型,一般提交字符串,用VO接收)
3.每次重新生成请清理src/main/resources/mybatis/mapper目录,因为mybatis-generator会在原来的文件中追加sql。
4.缺失oracle驱动,请自行下载并且上传到maven库中。
5.关于oracle重复生成的问题,请在mbgConfiguration.xml里面的 ```xml
``` 加入schema,避免schema下的表字段不一致,重复生成缺失字段问题。
6.经过验证,生成项目在jetty中跑没有问题,在tomcat中访问init方法会报jsp找不到的问题。
这是因为jsp文件大小写敏感问题,linux对大小写敏感,所以调整的controller模板中init初始化方法中的jsp为大写。(本人偷懒不想改源码)
7.jsp页面翻页失效问题,请在domain里面的实体类继承 domain下的Page类。
## 5.项目资源 1.sql脚本在项目根目录sql下。
2.可执行的tar.gz在项目根目录startrun下。
3.生成的项目在根目录startrun下。
## 6.个人想法 本来是准备统一mybatis-generator生成配置文件,后面想想,要修改源代码重新编译打包,后来放弃了,有兴趣的童鞋可以自己想想合并配置。 其余功能不累赘介绍,大家可以下载代码看。
有时间、有精力的小伙伴可以联系我,有想法生成一套基于spring-boot基本的增、删、改、查。
有好的建议请联系我,hncdyj123#163.com (#换成@)