# MP功能集合演示项目
该项目演示以下功能:
1. 逻辑删除
2. 自动填充
3. 自定义全局方法:insert/insertBatch
关于自定义全局方法攻略:
1.定义SQL: 参考DeleteAll, MysqlInsertAllBatch
```java
public class MysqlInsertAllBatch extends AbstractMethod {
@Override
public MappedStatement injectMappedStatement(Class<?> mapperClass, Class<?> modelClass, TableInfo tableInfo) {
return null;//TODO: 自定义SQL
}
}
```
2.注册: 参考MyLogicSqlInjector, 注册自定义方法
```java
public class MyLogicSqlInjector extends LogicSqlInjector {
/**
* 如果只需增加方法,保留MP自带方法
* 可以super.getMethodList() 再add
* @return
*/
@Override
public List<AbstractMethod> getMethodList() {
List<AbstractMethod> methodList = super.getMethodList();
methodList.add(new DeleteAll());
methodList.add(new MyInsertAll());
methodList.add(new MysqlInsertAllBatch());
return methodList;
}
}
```
3.把方法定义到BaseMapper,参考MyBaseMapper
```java
public interface MyBaseMapper<T> extends BaseMapper<T> {
Integer deleteAll();
int myInsertAll(T entity);
int mysqlInsertAllBatch(@Param("list") List<T> batchList);
}
```
> 注意: baseMapper的方法名称必须和自定义全局方法里的id一致
```java
public class MysqlInsertAllBatch extends AbstractMethod {
@Override
public MappedStatement injectMappedStatement(Class<?> mapperClass, Class<?> modelClass, TableInfo tableInfo) {
String sql = "xxxxxx";
//第三个参数必须和baseMapper的自定义方法名一致
return this.addInsertMappedStatement(mapperClass, modelClass, "mysqlInsertAllBatch", sqlSource, new NoKeyGenerator(), null, null);
}
```
其中insertBatch: 参考MysqlInsertAllBatch
演示批量保存使用mysql特有语法:
```text
insert into user(id, name, age) values (1, "a", 17), (2,"b", 18)
```
> 坑点:
- 在演示自定义批量和自动填充功能时,需要在mapper方法的参数上定义@Param(),
- 而mp默认仅支持 list, collection, array 3个命名,不然无法自动填充
没有合适的资源?快使用搜索试试~ 我知道了~
资源推荐
资源详情
资源评论
收起资源包目录
java web网上购物系统+毕业设计(完整版) (216个子文件)
mvnw.cmd 5KB
.gitignore 188B
maven-wrapper.jar 46KB
ClassPathAutoMapperScanner.java 23KB
AutoMapperScannerConfigurer.java 15KB
SampleTest.java 7KB
AutoMapperScannerRegistrar.java 7KB
AutoMapperScan.java 6KB
PaginationTest.java 6KB
WrapperTest.java 5KB
MybatisPlusConfig.java 4KB
MysqlGenerator.java 4KB
MyTenantParser.java 4KB
OptLockerTest.java 3KB
DeluxeTest.java 3KB
SampleTest.java 3KB
UserMapper.java 2KB
SampleTest.java 2KB
MysqlInsertAllBatch.java 2KB
RabbitController.java 2KB
SampleTest.java 2KB
SampleTest.java 2KB
SampleTest.java 2KB
ExecutionTest.java 2KB
MyInsertAll.java 2KB
AutoMapperScans.java 1KB
TestTypeHandler.java 1KB
SpringContext.java 1KB
SequenceTest.java 1KB
AutoFillTest.java 1KB
RabbitReceiver.java 1KB
MyLogicSqlInjector.java 1KB
MybatisPlusConfig.java 1KB
FindOne.java 1006B
User.java 997B
package-info.java 995B
User.java 975B
SampleTest.java 942B
SampleTest.java 934B
MybatisPlusConfig.java 929B
MyMetaObjectHandler.java 926B
MyMetaObjectHandler.java 919B
MybatisPlusConfig.java 917B
DeleteAll.java 899B
DeleteAll.java 887B
DbConfigurations.java 880B
MybatisPlusConfig.java 828B
CustomizeSuperMapperTest.java 826B
CustomizeSuperMapperSqlInjector.java 803B
User.java 794B
package-info.java 786B
PerformanceTest.java 718B
DtsRabbitApplication.java 717B
MybatisPlusOptLockerConfig.java 713B
MySqlInjector.java 706B
UserPage.java 674B
MybatisPlusConfig.java 664B
User.java 658B
UserMapper.java 642B
MyBaseMapper.java 631B
InjectorTest.java 623B
MapperClass.java 621B
MyPage.java 617B
GradeEnum.java 572B
AgeEnum.java 572B
UserMapper.java 541B
User.java 535B
District.java 534B
User.java 524B
MybatisPlusConfig.java 523B
User.java 520B
City.java 497B
UserChildren.java 486B
User.java 474B
QuickstartApplication.java 471B
WrapperApplication.java 459B
OptlockerApplication.java 459B
UserMapper.java 458B
SequenceApplication.java 456B
User.java 452B
Application.java 440B
CustomizeBaseMapperApplication.java 440B
User.java 439B
Student.java 429B
ArApplication.java 409B
Application.java 394B
UserMapper.java 391B
UserMapper.java 390B
Application.java 385B
Application.java 383B
Application.java 382B
User.java 370B
DeluxeApplication.java 369B
StudentMapper.java 364B
MyBaseMapper.java 357B
PaginationApplication.java 355B
UserMapper.java 350B
StudentMapper.java 348B
StudentMapper.java 344B
TenantApplication.java 344B
共 216 条
- 1
- 2
- 3
资源评论
- XS302020-04-27内容不完整,不建议下载
- MIAOTIANTIANKING12020-07-23别下载,没有
ruixun8
- 粉丝: 33
- 资源: 17
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功