package com.example.demo.mp;
import com.baomidou.mybatisplus.generator.AutoGenerator;
import com.baomidou.mybatisplus.generator.InjectionConfig;
import com.baomidou.mybatisplus.generator.config.*;
import com.baomidou.mybatisplus.generator.config.converts.MySqlTypeConvert;
import com.baomidou.mybatisplus.generator.config.po.TableInfo;
import com.baomidou.mybatisplus.generator.config.rules.DbColumnType;
import com.baomidou.mybatisplus.generator.config.rules.DbType;
import com.baomidou.mybatisplus.generator.config.rules.NamingStrategy;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
/**
* Created by Administrator on 2020/2/21.
* 自动生成代码
*/
public class MpGenerator {
/**
* <p>
* MySQL 生成演示
* </p>
*/
public static void main(String[] args) {
AutoGenerator mpg = new AutoGenerator();
// 选择 freemarker 引擎,默认 Veloctiy
//mpg.setTemplateEngine(new FreemarkerTemplateEngine());
// 全局配置
GlobalConfig gc = new GlobalConfig();
gc.setOutputDir("D:\\autoCode");
gc.setFileOverride(true);
gc.setActiveRecord(true);// 不需要ActiveRecord特性的请改为false
gc.setEnableCache(false);// XML 二级缓存
gc.setBaseResultMap(true);// XML ResultMap
gc.setBaseColumnList(false);// XML columList
// .setKotlin(true) 是否生成 kotlin 代码
gc.setAuthor("junco");
// 自定义文件命名,注意 %s 会自动填充表实体属性!
// gc.setMapperName("%sDao");
// gc.setXmlName("%sDao");
// gc.setServiceName("MP%sService");
// gc.setServiceImplName("%sServiceDiy");
// gc.setControllerName("%sAction");
mpg.setGlobalConfig(gc);
// 数据源配置
DataSourceConfig dsc = new DataSourceConfig();
dsc.setDbType(DbType.MYSQL);
dsc.setTypeConvert(new MySqlTypeConvert(){
// 自定义数据库表字段类型转换【可选】
@Override
public DbColumnType processTypeConvert(String fieldType) {
System.out.println("转换类型:" + fieldType);
// 注意!!processTypeConvert 存在默认类型转换,如果不是你要的效果请自定义返回、非如下直接返回。
return super.processTypeConvert(fieldType);
}
});
//Loading class `com.mysql.jdbc.Driver'. This is deprecated. The new driver class is `com.mysql.cj.jdbc.Driver'.
//The driver is automatically registered via the SPI and manual loading of the driver class is generally unnecessary.
//dsc.setDriverName("com.mysql.jdbc.Driver");
dsc.setDriverName("com.mysql.cj.jdbc.Driver");
dsc.setUsername("root");
dsc.setPassword("123456");
dsc.setUrl("jdbc:mysql://127.0.0.1:3306/mianguan?characterEncoding=utf8");
mpg.setDataSource(dsc);
// 策略配置
StrategyConfig strategy = new StrategyConfig();
// strategy.setCapitalMode(true);// 全局大写命名 ORACLE 注意
//strategy.setTablePrefix(new String[] { "abc_" });// 此处可以修改为您的表前缀
strategy.setNaming(NamingStrategy.underline_to_camel);// 表名生成策略
strategy.setInclude(new String[] { "user" }); // 需要生成的表
// strategy.setExclude(new String[]{"test"}); // 排除生成的表
// 自定义实体父类
// strategy.setSuperEntityClass("com.baomidou.demo.TestEntity");
// 自定义实体,公共字段
// strategy.setSuperEntityColumns(new String[] { "test_id", "age" });
// 自定义 mapper 父类
// strategy.setSuperMapperClass("com.baomidou.demo.TestMapper");
// 自定义 service 父类
// strategy.setSuperServiceClass("com.baomidou.demo.TestService");
// 自定义 service 实现类父类
// strategy.setSuperServiceImplClass("com.baomidou.demo.TestServiceImpl");
// 自定义 controller 父类
// strategy.setSuperControllerClass("com.baomidou.demo.TestController");
// 【实体】是否生成字段常量(默认 false)
// public static final String ID = "test_id";
strategy.setEntityColumnConstant(true);
//\ 【实体】是否为构建者模型(默认 false)
// public User setName(String name) {this.name = name; return this;}
strategy.setEntityBuilderModel(true);
mpg.setStrategy(strategy);
// 包配置
PackageConfig pc = new PackageConfig();
pc.setParent("com.example.demo");
pc.setModuleName("");
mpg.setPackageInfo(pc);
// // 注入自定义配置,可以在 VM 中使用 cfg.abc 【可无】
InjectionConfig cfg = new InjectionConfig() {
@Override
public void initMap() {
Map<String, Object> map = new HashMap<String, Object>();
map.put("abc", this.getConfig().getGlobalConfig().getAuthor() + "-mp");
this.setMap(map);
}
};
//
// // 自定义 xxList.jsp 生成
List<FileOutConfig> focList = new ArrayList<FileOutConfig>();
// focList.add(new FileOutConfig("/template/list.jsp.vm") {
// @Override
// public String outputFile(TableInfo tableInfo) {
// // 自定义输入文件名称
// return "F://my_" + tableInfo.getEntityName() + ".jsp";
// }
// });
// cfg.setFileOutConfigList(focList);
// mpg.setCfg(cfg);
//
// 调整 xml 生成目录演示
focList.add(new FileOutConfig("/templates/mapper.xml.vm") {
@Override
public String outputFile(TableInfo tableInfo) {
return "/com/example/demo/xml/" + tableInfo.getEntityName() + ".xml";
}
});
cfg.setFileOutConfigList(focList);
mpg.setCfg(cfg);
// 关闭默认 xml 生成,调整生成 至 根目录
// TemplateConfig tc = new TemplateConfig();
// tc.setXml(null);
// mpg.setTemplate(tc);
// 自定义模板配置,可以 copy 源码 mybatis-plus/src/main/resources/templates 下面内容修改,
// 放置自己项目的 src/main/resources/templates 目录下, 默认名称一下可以不配置,也可以自定义模板名称
// TemplateConfig tc = new TemplateConfig();
// tc.setController("...");
// tc.setEntity("...");
// tc.setMapper("...");
// tc.setXml("...");
// tc.setService("...");
// tc.setServiceImpl("...");
// 如上任何一个模块如果设置 空 OR Null 将不生成该模块。
// mpg.setTemplate(tc);
// 执行生成
mpg.execute();
// 打印注入设置【可无】
// System.err.println(mpg.getCfg().getMap().get("abc"));
}
}
没有合适的资源?快使用搜索试试~ 我知道了~
springboot+shiro+mybatis-plus纯净版框架(附带所需数据库sql)
共175个文件
xml:107个
class:30个
java:27个
需积分: 0 0 下载量 138 浏览量
2024-01-22
11:32:35
上传
评论
收藏 128KB ZIP 举报
温馨提示
JDK1.8 springboot框架(2.7.17) shiro实现了简易版的控制登录和角色权限(1.13.0) mybatis-plus实现了简易版的controller,service,mapper自动生成和分页(3.4.0) 在com.example.demo.mp.MpGenerator直接执行main方法(velocity 2.3) 备注:生成的mapper需要手动加上注解@Mapper,否则会报错 整个框架属于纯净版,没有过多的废代码,可以拿来即用,方便快捷。 接口测试调用 1、登陆:http://127.0.0.1:8081/user/login?userName=adminName&password=123456 2、数据获取:http://127.0.0.1:8081/incomePage?pageNum=0&pageSize=10 3、登出:http://127.0.0.1:8081/logout
资源推荐
资源详情
资源评论
收起资源包目录
springboot+shiro+mybatis-plus纯净版框架(附带所需数据库sql) (175个子文件)
ShiroConfiguration.class 6KB
MpGenerator.class 5KB
UserRealm.class 4KB
MybatisPlusConfig.class 4KB
IncomeController.class 3KB
Income.class 3KB
UserController.class 2KB
User.class 2KB
UserServiceImpl.class 2KB
Permission.class 2KB
Role.class 1KB
MpGenerator$2.class 1KB
MpGenerator$3.class 1KB
MpGenerator$1.class 1KB
test.class 802B
DemoApplication.class 733B
PermissionServiceImpl.class 714B
IncomeServiceImpl.class 686B
RoleServiceImpl.class 672B
DemoApplicationTests.class 531B
PermissionController.class 520B
RoleController.class 496B
IUserService.class 403B
PermissionMapper.class 391B
IncomeMapper.class 379B
RoleMapper.class 373B
UserMapper.class 373B
IPermissionService.class 313B
IIncomeService.class 301B
IRoleService.class 295B
mvnw.cmd 6KB
.gitignore 333B
.gitignore 235B
demo.iml 51KB
demo.ipr 4KB
demo.iws 20KB
MpGenerator.java 7KB
ShiroConfiguration.java 6KB
MybatisPlusConfig.java 3KB
UserRealm.java 3KB
Income.java 2KB
IncomeController.java 1KB
UserController.java 1KB
User.java 1KB
Permission.java 1KB
UserServiceImpl.java 1011B
Role.java 977B
PermissionServiceImpl.java 508B
IncomeServiceImpl.java 488B
RoleServiceImpl.java 466B
PermissionMapper.java 338B
IncomeMapper.java 336B
PermissionController.java 325B
test.java 323B
RoleMapper.java 320B
UserMapper.java 316B
RoleController.java 313B
DemoApplication.java 305B
IUserService.java 295B
IPermissionService.java 282B
IIncomeService.java 279B
IRoleService.java 264B
DemoApplicationTests.java 206B
HELP.md 432B
mvnw 10KB
application.properties 427B
application.properties 387B
mianguan.sql 33KB
workspace.xml 20KB
uiDesigner.xml 9KB
pom.xml 3KB
jarRepositories.xml 1KB
compiler.xml 901B
Maven__com_fasterxml_jackson_module_jackson_module_parameter_names_2_13_5.xml 886B
Maven__org_mybatis_spring_boot_mybatis_spring_boot_autoconfigure_2_3_0.xml 880B
misc.xml 873B
Maven__org_springframework_boot_spring_boot_test_autoconfigure_2_7_17.xml 870B
Maven__com_vaadin_external_google_android_json_0_0_20131108_vaadin1.xml 850B
Maven__org_springframework_boot_spring_boot_starter_logging_2_7_17.xml 849B
Maven__com_fasterxml_jackson_datatype_jackson_datatype_jsr310_2_13_5.xml 845B
Maven__org_springframework_boot_spring_boot_starter_tomcat_2_7_17.xml 842B
Maven__org_mybatis_spring_boot_mybatis_spring_boot_starter_2_3_0.xml 838B
Maven__org_springframework_boot_spring_boot_autoconfigure_2_7_17.xml 835B
Maven__com_fasterxml_jackson_datatype_jackson_datatype_jdk8_2_13_5.xml 831B
Maven__org_springframework_boot_spring_boot_starter_test_2_7_17.xml 828B
Maven__org_springframework_boot_spring_boot_starter_json_2_7_17.xml 828B
Maven__org_springframework_boot_spring_boot_starter_jdbc_2_7_17.xml 828B
Maven__org_springframework_boot_spring_boot_starter_web_2_7_17.xml 821B
Maven__org_apache_tomcat_embed_tomcat_embed_websocket_9_0_82.xml 810B
Maven__com_fasterxml_jackson_core_jackson_annotations_2_13_5.xml 801B
Maven__org_springframework_boot_spring_boot_devtools_2_7_17.xml 800B
Maven__org_springframework_boot_spring_boot_starter_2_7_17.xml 793B
Maven__org_junit_platform_junit_platform_commons_1_8_2.xml 783B
Maven__jakarta_activation_jakarta_activation_api_1_2_2.xml 783B
Maven__jakarta_annotation_jakarta_annotation_api_1_3_5.xml 783B
Maven__com_fasterxml_jackson_core_jackson_databind_2_13_5.xml 780B
Maven__org_junit_platform_junit_platform_engine_1_8_2.xml 776B
Maven__org_apache_tomcat_embed_tomcat_embed_core_9_0_82.xml 775B
Maven__org_springframework_boot_spring_boot_test_2_7_17.xml 772B
Maven__commons_collections_commons_collections_3_2_2.xml 766B
共 175 条
- 1
- 2
资源评论
cwr888
- 粉丝: 494
- 资源: 38
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功