mirror of
https://gitee.com/best_handsome/mybatis-plus-join
synced 2025-07-11 00:02:22 +08:00
update
This commit is contained in:
parent
088d39ebcc
commit
e26aad80b2
139
pom.xml
139
pom.xml
@ -4,7 +4,7 @@
|
|||||||
<modelVersion>4.0.0</modelVersion>
|
<modelVersion>4.0.0</modelVersion>
|
||||||
<groupId>com.github.yulichang</groupId>
|
<groupId>com.github.yulichang</groupId>
|
||||||
<artifactId>mybatis-plus-join</artifactId>
|
<artifactId>mybatis-plus-join</artifactId>
|
||||||
<version>1.0.0-SNAPSHOT</version>
|
<version>1.0.2</version>
|
||||||
<name>mp</name>
|
<name>mp</name>
|
||||||
<description>An enhanced toolkit of Mybatis-Plus to simplify development.</description>
|
<description>An enhanced toolkit of Mybatis-Plus to simplify development.</description>
|
||||||
<url>https://github.com/yulichang/mybatis-plus-join</url>
|
<url>https://github.com/yulichang/mybatis-plus-join</url>
|
||||||
@ -34,18 +34,6 @@
|
|||||||
<jdkVersion.test>1.8</jdkVersion.test>
|
<jdkVersion.test>1.8</jdkVersion.test>
|
||||||
</properties>
|
</properties>
|
||||||
|
|
||||||
|
|
||||||
<dependencyManagement>
|
|
||||||
<dependencies>
|
|
||||||
<dependency>
|
|
||||||
<groupId>org.springframework.boot</groupId>
|
|
||||||
<artifactId>spring-boot-dependencies</artifactId>
|
|
||||||
<version>2.3.2.RELEASE</version>
|
|
||||||
<type>pom</type>
|
|
||||||
<scope>import</scope>
|
|
||||||
</dependency>
|
|
||||||
</dependencies>
|
|
||||||
</dependencyManagement>
|
|
||||||
<dependencies>
|
<dependencies>
|
||||||
<dependency>
|
<dependency>
|
||||||
<groupId>com.baomidou</groupId>
|
<groupId>com.baomidou</groupId>
|
||||||
@ -62,22 +50,13 @@
|
|||||||
</dependency>
|
</dependency>
|
||||||
</dependencies>
|
</dependencies>
|
||||||
|
|
||||||
<distributionManagement>
|
|
||||||
<snapshotRepository>
|
|
||||||
<id>ossrh</id>
|
|
||||||
<url>https://oss.sonatype.org/content/repositories/snapshots</url>
|
|
||||||
</snapshotRepository>
|
|
||||||
<repository>
|
|
||||||
<id>ossrh</id>
|
|
||||||
<url>https://oss.sonatype.org/service/local/staging/deploy/maven2/</url>
|
|
||||||
</repository>
|
|
||||||
</distributionManagement>
|
|
||||||
<build>
|
<build>
|
||||||
<plugins>
|
<plugins>
|
||||||
<plugin>
|
<plugin>
|
||||||
<groupId>org.apache.maven.plugins</groupId>
|
<groupId>org.apache.maven.plugins</groupId>
|
||||||
<artifactId>maven-source-plugin</artifactId>
|
<artifactId>maven-source-plugin</artifactId>
|
||||||
<version>3.2.1</version>
|
<version>2.2.1</version>
|
||||||
<executions>
|
<executions>
|
||||||
<execution>
|
<execution>
|
||||||
<id>attach-sources</id>
|
<id>attach-sources</id>
|
||||||
@ -100,6 +79,33 @@
|
|||||||
</execution>
|
</execution>
|
||||||
</executions>
|
</executions>
|
||||||
</plugin>
|
</plugin>
|
||||||
|
|
||||||
|
<plugin>
|
||||||
|
<groupId>org.apache.maven.plugins</groupId>
|
||||||
|
<artifactId>maven-gpg-plugin</artifactId>
|
||||||
|
<version>1.5</version>
|
||||||
|
<executions>
|
||||||
|
<execution>
|
||||||
|
<id>sign-artifacts</id>
|
||||||
|
<phase>verify</phase>
|
||||||
|
<goals>
|
||||||
|
<goal>sign</goal>
|
||||||
|
</goals>
|
||||||
|
</execution>
|
||||||
|
</executions>
|
||||||
|
</plugin>
|
||||||
|
|
||||||
|
<plugin>
|
||||||
|
<groupId>org.sonatype.plugins</groupId>
|
||||||
|
<artifactId>nexus-staging-maven-plugin</artifactId>
|
||||||
|
<version>1.6.8</version>
|
||||||
|
<extensions>true</extensions>
|
||||||
|
<configuration>
|
||||||
|
<serverId>ossrh</serverId>
|
||||||
|
<nexusUrl>https://oss.sonatype.org/</nexusUrl>
|
||||||
|
<autoReleaseAfterClose>true</autoReleaseAfterClose>
|
||||||
|
</configuration>
|
||||||
|
</plugin>
|
||||||
</plugins>
|
</plugins>
|
||||||
</build>
|
</build>
|
||||||
|
|
||||||
@ -117,55 +123,10 @@
|
|||||||
<id>release</id>
|
<id>release</id>
|
||||||
<build>
|
<build>
|
||||||
<plugins>
|
<plugins>
|
||||||
<plugin>
|
|
||||||
<groupId>org.sonatype.plugins</groupId>
|
|
||||||
<artifactId>nexus-staging-maven-plugin</artifactId>
|
|
||||||
<version>1.6.7</version>
|
|
||||||
<extensions>true</extensions>
|
|
||||||
<configuration>
|
|
||||||
<serverId>ossrh</serverId>
|
|
||||||
<nexusUrl>https://oss.sonatype.org/</nexusUrl>
|
|
||||||
<autoReleaseAfterClose>true</autoReleaseAfterClose>
|
|
||||||
</configuration>
|
|
||||||
</plugin>
|
|
||||||
<plugin>
|
|
||||||
<groupId>org.apache.maven.plugins</groupId>
|
|
||||||
<artifactId>maven-release-plugin</artifactId>
|
|
||||||
<version>2.5</version>
|
|
||||||
<configuration>
|
|
||||||
<autoVersionSubmodules>true</autoVersionSubmodules>
|
|
||||||
<useReleaseProfile>false</useReleaseProfile>
|
|
||||||
<releaseProfiles>release</releaseProfiles>
|
|
||||||
<goals>deploy</goals>
|
|
||||||
</configuration>
|
|
||||||
</plugin>
|
|
||||||
<plugin>
|
|
||||||
<groupId>org.apache.maven.plugins</groupId>
|
|
||||||
<artifactId>maven-compiler-plugin</artifactId>
|
|
||||||
<version>3.8.1</version>
|
|
||||||
<configuration>
|
|
||||||
<source>1.8</source>
|
|
||||||
<target>1.8</target>
|
|
||||||
</configuration>
|
|
||||||
</plugin>
|
|
||||||
<plugin>
|
|
||||||
<groupId>org.apache.maven.plugins</groupId>
|
|
||||||
<artifactId>maven-gpg-plugin</artifactId>
|
|
||||||
<version>1.6</version>
|
|
||||||
<executions>
|
|
||||||
<execution>
|
|
||||||
<id>sign-artifacts</id>
|
|
||||||
<phase>verify</phase>
|
|
||||||
<goals>
|
|
||||||
<goal>sign</goal>
|
|
||||||
</goals>
|
|
||||||
</execution>
|
|
||||||
</executions>
|
|
||||||
</plugin>
|
|
||||||
<plugin>
|
<plugin>
|
||||||
<groupId>org.apache.maven.plugins</groupId>
|
<groupId>org.apache.maven.plugins</groupId>
|
||||||
<artifactId>maven-source-plugin</artifactId>
|
<artifactId>maven-source-plugin</artifactId>
|
||||||
<version>3.2.1</version>
|
<version>2.2.1</version>
|
||||||
<executions>
|
<executions>
|
||||||
<execution>
|
<execution>
|
||||||
<id>attach-sources</id>
|
<id>attach-sources</id>
|
||||||
@ -188,8 +149,46 @@
|
|||||||
</execution>
|
</execution>
|
||||||
</executions>
|
</executions>
|
||||||
</plugin>
|
</plugin>
|
||||||
|
|
||||||
|
<plugin>
|
||||||
|
<groupId>org.apache.maven.plugins</groupId>
|
||||||
|
<artifactId>maven-gpg-plugin</artifactId>
|
||||||
|
<version>1.5</version>
|
||||||
|
<executions>
|
||||||
|
<execution>
|
||||||
|
<id>sign-artifacts</id>
|
||||||
|
<phase>verify</phase>
|
||||||
|
<goals>
|
||||||
|
<goal>sign</goal>
|
||||||
|
</goals>
|
||||||
|
</execution>
|
||||||
|
</executions>
|
||||||
|
</plugin>
|
||||||
|
|
||||||
|
<plugin>
|
||||||
|
<groupId>org.sonatype.plugins</groupId>
|
||||||
|
<artifactId>nexus-staging-maven-plugin</artifactId>
|
||||||
|
<version>1.6.7</version>
|
||||||
|
<extensions>true</extensions>
|
||||||
|
<configuration>
|
||||||
|
<serverId>ossrh</serverId>
|
||||||
|
<nexusUrl>https://oss.sonatype.org/</nexusUrl>
|
||||||
|
<autoReleaseAfterClose>true</autoReleaseAfterClose>
|
||||||
|
</configuration>
|
||||||
|
</plugin>
|
||||||
</plugins>
|
</plugins>
|
||||||
</build>
|
</build>
|
||||||
</profile>
|
</profile>
|
||||||
</profiles>
|
</profiles>
|
||||||
|
|
||||||
|
<distributionManagement>
|
||||||
|
<snapshotRepository>
|
||||||
|
<id>ossrh</id>
|
||||||
|
<url>https://oss.sonatype.org/content/repositories/snapshots</url>
|
||||||
|
</snapshotRepository>
|
||||||
|
<repository>
|
||||||
|
<id>ossrh</id>
|
||||||
|
<url>https://oss.sonatype.org/service/local/staging/deploy/maven2/</url>
|
||||||
|
</repository>
|
||||||
|
</distributionManagement>
|
||||||
</project>
|
</project>
|
||||||
|
@ -1,98 +0,0 @@
|
|||||||
package com.github.mybatisplus.interceptor;
|
|
||||||
|
|
||||||
import com.baomidou.mybatisplus.core.MybatisParameterHandler;
|
|
||||||
import com.baomidou.mybatisplus.core.toolkit.ClassUtils;
|
|
||||||
import com.baomidou.mybatisplus.core.toolkit.StringUtils;
|
|
||||||
import com.github.mybatisplus.toolkit.Constant;
|
|
||||||
import org.apache.ibatis.executor.resultset.DefaultResultSetHandler;
|
|
||||||
import org.apache.ibatis.executor.resultset.ResultSetHandler;
|
|
||||||
import org.apache.ibatis.plugin.*;
|
|
||||||
import org.springframework.cglib.beans.BeanMap;
|
|
||||||
|
|
||||||
import java.lang.reflect.Field;
|
|
||||||
import java.sql.Statement;
|
|
||||||
import java.util.ArrayList;
|
|
||||||
import java.util.List;
|
|
||||||
import java.util.Map;
|
|
||||||
import java.util.Objects;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* 结果封装
|
|
||||||
*
|
|
||||||
* @author yulichang
|
|
||||||
*/
|
|
||||||
@Intercepts({@Signature(type = ResultSetHandler.class, method = "handleResultSets", args = {Statement.class})})
|
|
||||||
public class MyResultInterceptor implements Interceptor {
|
|
||||||
|
|
||||||
private static Field parameterHandler = null;
|
|
||||||
|
|
||||||
static {
|
|
||||||
try {
|
|
||||||
parameterHandler = DefaultResultSetHandler.class.getDeclaredField("parameterHandler");
|
|
||||||
parameterHandler.setAccessible(true);
|
|
||||||
} catch (NoSuchFieldException e) {
|
|
||||||
e.printStackTrace();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public Object intercept(Invocation invocation) throws Throwable {
|
|
||||||
DefaultResultSetHandler handler = (DefaultResultSetHandler) invocation.getTarget();
|
|
||||||
Object result = invocation.proceed();
|
|
||||||
if (Objects.isNull(result)) {
|
|
||||||
return null;
|
|
||||||
}
|
|
||||||
Class<?> val = getFieldVal(handler);
|
|
||||||
if (val == null) {
|
|
||||||
return result;
|
|
||||||
}
|
|
||||||
if (result instanceof ArrayList) {
|
|
||||||
List<Object> res = new ArrayList<>();
|
|
||||||
for (Object i : ((ArrayList) result)) {
|
|
||||||
if (i instanceof Map) {
|
|
||||||
res.add(mapToBean((Map<String, ?>) i, val));
|
|
||||||
} else {
|
|
||||||
return result;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
return res;
|
|
||||||
} else {
|
|
||||||
return mapToBean((Map<String, ?>) result, val);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
public static <T> T mapToBean(Map<String, ?> map, Class<T> clazz) {
|
|
||||||
T bean = ClassUtils.newInstance(clazz);
|
|
||||||
BeanMap beanMap = BeanMap.create(bean);
|
|
||||||
map.forEach((k, v) -> beanMap.put(StringUtils.underlineToCamel(k), v));
|
|
||||||
return bean;
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
/**
|
|
||||||
* 反射获取方法中的clazz
|
|
||||||
* 先用反射获取,应该是可以通过拓展框架直接获取的, todo
|
|
||||||
*
|
|
||||||
* @see MybatisParameterHandler
|
|
||||||
*/
|
|
||||||
public static Class<?> getFieldVal(DefaultResultSetHandler handler) {
|
|
||||||
try {
|
|
||||||
MybatisParameterHandler mybatisParameterHandler = (MybatisParameterHandler) parameterHandler.get(handler);
|
|
||||||
Object object = mybatisParameterHandler.getParameterObject();
|
|
||||||
if (Objects.isNull(object)) {
|
|
||||||
return null;
|
|
||||||
}
|
|
||||||
if (object instanceof Map) {
|
|
||||||
return (Class<?>) ((Map<?, ?>) object).get(Constant.CLAZZ);
|
|
||||||
}
|
|
||||||
return null;
|
|
||||||
} catch (Exception e) {
|
|
||||||
return null;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public Object plugin(Object target) {
|
|
||||||
return Plugin.wrap(target, this);
|
|
||||||
}
|
|
||||||
}
|
|
@ -1,7 +1,7 @@
|
|||||||
package com.github.mybatisplus;
|
package com.github.yulichang;
|
||||||
|
|
||||||
import com.github.mybatisplus.injector.MySqlInjector;
|
import com.github.yulichang.injector.MySqlInjector;
|
||||||
import com.github.mybatisplus.interceptor.MyResultInterceptor;
|
import com.github.yulichang.interceptor.MyResultInterceptor;
|
||||||
import org.springframework.boot.autoconfigure.condition.ConditionalOnMissingBean;
|
import org.springframework.boot.autoconfigure.condition.ConditionalOnMissingBean;
|
||||||
import org.springframework.context.annotation.Bean;
|
import org.springframework.context.annotation.Bean;
|
||||||
import org.springframework.context.annotation.Configuration;
|
import org.springframework.context.annotation.Configuration;
|
@ -1,10 +1,10 @@
|
|||||||
package com.github.mybatisplus.base;
|
package com.github.yulichang.base;
|
||||||
|
|
||||||
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
||||||
import com.baomidou.mybatisplus.core.metadata.IPage;
|
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||||
import com.baomidou.mybatisplus.core.toolkit.Constants;
|
import com.baomidou.mybatisplus.core.toolkit.Constants;
|
||||||
import com.github.mybatisplus.interfaces.BaseJoin;
|
import com.github.yulichang.interfaces.BaseJoin;
|
||||||
import com.github.mybatisplus.toolkit.Constant;
|
import com.github.yulichang.toolkit.Constant;
|
||||||
import org.apache.ibatis.annotations.Param;
|
import org.apache.ibatis.annotations.Param;
|
||||||
|
|
||||||
import java.util.List;
|
import java.util.List;
|
@ -1,8 +1,8 @@
|
|||||||
package com.github.mybatisplus.base;
|
package com.github.yulichang.base;
|
||||||
|
|
||||||
import com.baomidou.mybatisplus.core.metadata.IPage;
|
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||||
import com.baomidou.mybatisplus.extension.service.IService;
|
import com.baomidou.mybatisplus.extension.service.IService;
|
||||||
import com.github.mybatisplus.interfaces.BaseJoin;
|
import com.github.yulichang.interfaces.BaseJoin;
|
||||||
|
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
import java.util.Map;
|
import java.util.Map;
|
@ -1,8 +1,8 @@
|
|||||||
package com.github.mybatisplus.base;
|
package com.github.yulichang.base;
|
||||||
|
|
||||||
import com.baomidou.mybatisplus.core.metadata.IPage;
|
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||||
import com.github.mybatisplus.interfaces.BaseJoin;
|
import com.github.yulichang.interfaces.BaseJoin;
|
||||||
|
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
import java.util.Map;
|
import java.util.Map;
|
@ -1,8 +1,8 @@
|
|||||||
package com.github.mybatisplus.injector;
|
package com.github.yulichang.injector;
|
||||||
|
|
||||||
import com.baomidou.mybatisplus.core.injector.AbstractMethod;
|
import com.baomidou.mybatisplus.core.injector.AbstractMethod;
|
||||||
import com.baomidou.mybatisplus.core.injector.DefaultSqlInjector;
|
import com.baomidou.mybatisplus.core.injector.DefaultSqlInjector;
|
||||||
import com.github.mybatisplus.method.*;
|
import com.github.yulichang.method.*;
|
||||||
|
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
@ -0,0 +1,73 @@
|
|||||||
|
package com.github.yulichang.interceptor;
|
||||||
|
|
||||||
|
import com.baomidou.mybatisplus.core.MybatisParameterHandler;
|
||||||
|
import com.baomidou.mybatisplus.core.toolkit.CollectionUtils;
|
||||||
|
import com.github.yulichang.toolkit.Constant;
|
||||||
|
import org.apache.ibatis.executor.statement.StatementHandler;
|
||||||
|
import org.apache.ibatis.mapping.MappedStatement;
|
||||||
|
import org.apache.ibatis.mapping.ResultMap;
|
||||||
|
import org.apache.ibatis.plugin.*;
|
||||||
|
|
||||||
|
import java.lang.reflect.Field;
|
||||||
|
import java.sql.Connection;
|
||||||
|
import java.util.List;
|
||||||
|
import java.util.Map;
|
||||||
|
import java.util.Objects;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 结果封装
|
||||||
|
*
|
||||||
|
* @author yulichang
|
||||||
|
*/
|
||||||
|
@Intercepts({
|
||||||
|
@Signature(type = StatementHandler.class, method = "prepare", args = {Connection.class, Integer.class}),
|
||||||
|
})
|
||||||
|
//@SuppressWarnings("all")
|
||||||
|
public class MyResultInterceptor implements Interceptor {
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 缓存初始化反射字段
|
||||||
|
* todo
|
||||||
|
* 应该可以想mybatis-plus那样用自定义的MybatisParameterHandler直接获取mappedStatement和resultMap,而不是反射获取
|
||||||
|
*/
|
||||||
|
private static Field mappedStatement = null;
|
||||||
|
private static Field type = null;
|
||||||
|
|
||||||
|
static {
|
||||||
|
try {
|
||||||
|
mappedStatement = MybatisParameterHandler.class.getDeclaredField("mappedStatement");
|
||||||
|
mappedStatement.setAccessible(true);
|
||||||
|
type = ResultMap.class.getDeclaredField("type");
|
||||||
|
type.setAccessible(true);
|
||||||
|
} catch (NoSuchFieldException e) {
|
||||||
|
e.printStackTrace();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public Object intercept(Invocation invocation) throws Throwable {
|
||||||
|
if (Objects.nonNull(invocation.getTarget()) && invocation.getTarget() instanceof MybatisParameterHandler) {
|
||||||
|
MybatisParameterHandler mybatisParameterHandler = (MybatisParameterHandler) invocation.getTarget();
|
||||||
|
Map<String, ?> map = (Map<String, ?>) mybatisParameterHandler.getParameterObject();
|
||||||
|
if (CollectionUtils.isNotEmpty(map)) {
|
||||||
|
try {
|
||||||
|
Class<?> resClazz = (Class<?>) map.get(Constant.CLAZZ);
|
||||||
|
MappedStatement statement = (MappedStatement) mappedStatement.get(mybatisParameterHandler);
|
||||||
|
List<ResultMap> list = statement.getResultMaps();
|
||||||
|
if (CollectionUtils.isNotEmpty(list)) {
|
||||||
|
ResultMap resultMap = list.get(0);
|
||||||
|
type.set(resultMap, resClazz);
|
||||||
|
}
|
||||||
|
} catch (Exception e) {
|
||||||
|
return invocation.proceed();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return invocation.proceed();
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public Object plugin(Object target) {
|
||||||
|
return Plugin.wrap(target, this);
|
||||||
|
}
|
||||||
|
}
|
@ -1,4 +1,4 @@
|
|||||||
package com.github.mybatisplus.interfaces;
|
package com.github.yulichang.interfaces;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @author yulichang
|
* @author yulichang
|
@ -1,10 +1,10 @@
|
|||||||
package com.github.mybatisplus.method;
|
package com.github.yulichang.method;
|
||||||
|
|
||||||
import com.baomidou.mybatisplus.core.injector.AbstractMethod;
|
import com.baomidou.mybatisplus.core.injector.AbstractMethod;
|
||||||
import com.baomidou.mybatisplus.core.metadata.TableInfo;
|
import com.baomidou.mybatisplus.core.metadata.TableInfo;
|
||||||
import com.baomidou.mybatisplus.core.toolkit.StringPool;
|
import com.baomidou.mybatisplus.core.toolkit.StringPool;
|
||||||
import com.baomidou.mybatisplus.core.toolkit.sql.SqlScriptUtils;
|
import com.baomidou.mybatisplus.core.toolkit.sql.SqlScriptUtils;
|
||||||
import com.github.mybatisplus.toolkit.Constant;
|
import com.github.yulichang.toolkit.Constant;
|
||||||
|
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
import java.util.List;
|
import java.util.List;
|
@ -1,12 +1,9 @@
|
|||||||
package com.github.mybatisplus.method;
|
package com.github.yulichang.method;
|
||||||
|
|
||||||
import com.baomidou.mybatisplus.core.metadata.TableInfo;
|
import com.baomidou.mybatisplus.core.metadata.TableInfo;
|
||||||
import com.github.mybatisplus.toolkit.Constant;
|
|
||||||
import org.apache.ibatis.mapping.MappedStatement;
|
import org.apache.ibatis.mapping.MappedStatement;
|
||||||
import org.apache.ibatis.mapping.SqlSource;
|
import org.apache.ibatis.mapping.SqlSource;
|
||||||
|
|
||||||
import java.util.Map;
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* copy {@link com.baomidou.mybatisplus.core.injector.methods.SelectMaps}
|
* copy {@link com.baomidou.mybatisplus.core.injector.methods.SelectMaps}
|
||||||
*/
|
*/
|
||||||
@ -18,6 +15,6 @@ public class SelectJoinList extends MyAbstractMethod {
|
|||||||
String sql = String.format(sqlMethod.getSql(), sqlSelectColumns(tableInfo, true),
|
String sql = String.format(sqlMethod.getSql(), sqlSelectColumns(tableInfo, true),
|
||||||
tableInfo.getTableName(), sqlWhereEntityWrapper(true, tableInfo), sqlComment());
|
tableInfo.getTableName(), sqlWhereEntityWrapper(true, tableInfo), sqlComment());
|
||||||
SqlSource sqlSource = languageDriver.createSqlSource(configuration, sql, modelClass);
|
SqlSource sqlSource = languageDriver.createSqlSource(configuration, sql, modelClass);
|
||||||
return this.addSelectMappedStatementForOther(mapperClass, sqlMethod.getMethod(), sqlSource, Map.class);
|
return this.addSelectMappedStatementForOther(mapperClass, sqlMethod.getMethod(), sqlSource, Object.class);
|
||||||
}
|
}
|
||||||
}
|
}
|
@ -1,4 +1,4 @@
|
|||||||
package com.github.mybatisplus.method;
|
package com.github.yulichang.method;
|
||||||
|
|
||||||
import com.baomidou.mybatisplus.core.metadata.TableInfo;
|
import com.baomidou.mybatisplus.core.metadata.TableInfo;
|
||||||
import org.apache.ibatis.mapping.MappedStatement;
|
import org.apache.ibatis.mapping.MappedStatement;
|
@ -1,7 +1,6 @@
|
|||||||
package com.github.mybatisplus.method;
|
package com.github.yulichang.method;
|
||||||
|
|
||||||
import com.baomidou.mybatisplus.core.metadata.TableInfo;
|
import com.baomidou.mybatisplus.core.metadata.TableInfo;
|
||||||
import com.github.mybatisplus.toolkit.Constant;
|
|
||||||
import org.apache.ibatis.mapping.MappedStatement;
|
import org.apache.ibatis.mapping.MappedStatement;
|
||||||
import org.apache.ibatis.mapping.SqlSource;
|
import org.apache.ibatis.mapping.SqlSource;
|
||||||
|
|
@ -1,7 +1,6 @@
|
|||||||
package com.github.mybatisplus.method;
|
package com.github.yulichang.method;
|
||||||
|
|
||||||
import com.baomidou.mybatisplus.core.metadata.TableInfo;
|
import com.baomidou.mybatisplus.core.metadata.TableInfo;
|
||||||
import com.github.mybatisplus.toolkit.Constant;
|
|
||||||
import org.apache.ibatis.mapping.MappedStatement;
|
import org.apache.ibatis.mapping.MappedStatement;
|
||||||
import org.apache.ibatis.mapping.SqlSource;
|
import org.apache.ibatis.mapping.SqlSource;
|
||||||
|
|
@ -1,12 +1,9 @@
|
|||||||
package com.github.mybatisplus.method;
|
package com.github.yulichang.method;
|
||||||
|
|
||||||
import com.baomidou.mybatisplus.core.metadata.TableInfo;
|
import com.baomidou.mybatisplus.core.metadata.TableInfo;
|
||||||
import com.github.mybatisplus.toolkit.Constant;
|
|
||||||
import org.apache.ibatis.mapping.MappedStatement;
|
import org.apache.ibatis.mapping.MappedStatement;
|
||||||
import org.apache.ibatis.mapping.SqlSource;
|
import org.apache.ibatis.mapping.SqlSource;
|
||||||
|
|
||||||
import java.util.Map;
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* copy {@link com.baomidou.mybatisplus.core.injector.methods.SelectMaps}
|
* copy {@link com.baomidou.mybatisplus.core.injector.methods.SelectMaps}
|
||||||
*/
|
*/
|
||||||
@ -18,6 +15,6 @@ public class SelectJoinOne extends MyAbstractMethod {
|
|||||||
String sql = String.format(sqlMethod.getSql(), sqlSelectColumns(tableInfo, true),
|
String sql = String.format(sqlMethod.getSql(), sqlSelectColumns(tableInfo, true),
|
||||||
tableInfo.getTableName(), sqlWhereEntityWrapper(true, tableInfo), sqlComment());
|
tableInfo.getTableName(), sqlWhereEntityWrapper(true, tableInfo), sqlComment());
|
||||||
SqlSource sqlSource = languageDriver.createSqlSource(configuration, sql, modelClass);
|
SqlSource sqlSource = languageDriver.createSqlSource(configuration, sql, modelClass);
|
||||||
return this.addSelectMappedStatementForOther(mapperClass, sqlMethod.getMethod(), sqlSource, Map.class);
|
return this.addSelectMappedStatementForOther(mapperClass, sqlMethod.getMethod(), sqlSource, Object.class);
|
||||||
}
|
}
|
||||||
}
|
}
|
@ -1,12 +1,9 @@
|
|||||||
package com.github.mybatisplus.method;
|
package com.github.yulichang.method;
|
||||||
|
|
||||||
import com.baomidou.mybatisplus.core.metadata.TableInfo;
|
import com.baomidou.mybatisplus.core.metadata.TableInfo;
|
||||||
import com.github.mybatisplus.toolkit.Constant;
|
|
||||||
import org.apache.ibatis.mapping.MappedStatement;
|
import org.apache.ibatis.mapping.MappedStatement;
|
||||||
import org.apache.ibatis.mapping.SqlSource;
|
import org.apache.ibatis.mapping.SqlSource;
|
||||||
|
|
||||||
import java.util.Map;
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* copy {@link com.baomidou.mybatisplus.core.injector.methods.SelectMaps}
|
* copy {@link com.baomidou.mybatisplus.core.injector.methods.SelectMaps}
|
||||||
*/
|
*/
|
||||||
@ -18,6 +15,6 @@ public class SelectJoinPage extends MyAbstractMethod {
|
|||||||
String sql = String.format(sqlMethod.getSql(), sqlSelectColumns(tableInfo, true),
|
String sql = String.format(sqlMethod.getSql(), sqlSelectColumns(tableInfo, true),
|
||||||
tableInfo.getTableName(), sqlWhereEntityWrapper(true, tableInfo), sqlComment());
|
tableInfo.getTableName(), sqlWhereEntityWrapper(true, tableInfo), sqlComment());
|
||||||
SqlSource sqlSource = languageDriver.createSqlSource(configuration, sql, modelClass);
|
SqlSource sqlSource = languageDriver.createSqlSource(configuration, sql, modelClass);
|
||||||
return this.addSelectMappedStatementForOther(mapperClass, sqlMethod.getMethod(), sqlSource, Map.class);
|
return this.addSelectMappedStatementForOther(mapperClass, sqlMethod.getMethod(), sqlSource, Object.class);
|
||||||
}
|
}
|
||||||
}
|
}
|
@ -1,4 +1,4 @@
|
|||||||
package com.github.mybatisplus.method;
|
package com.github.yulichang.method;
|
||||||
|
|
||||||
import java.util.Arrays;
|
import java.util.Arrays;
|
||||||
import java.util.List;
|
import java.util.List;
|
@ -1,4 +1,4 @@
|
|||||||
package com.github.mybatisplus.query;
|
package com.github.yulichang.query;
|
||||||
|
|
||||||
import com.baomidou.mybatisplus.core.conditions.AbstractWrapper;
|
import com.baomidou.mybatisplus.core.conditions.AbstractWrapper;
|
||||||
import com.baomidou.mybatisplus.core.toolkit.Assert;
|
import com.baomidou.mybatisplus.core.toolkit.Assert;
|
||||||
@ -7,7 +7,7 @@ import com.baomidou.mybatisplus.core.toolkit.StringPool;
|
|||||||
import com.baomidou.mybatisplus.core.toolkit.support.ColumnCache;
|
import com.baomidou.mybatisplus.core.toolkit.support.ColumnCache;
|
||||||
import com.baomidou.mybatisplus.core.toolkit.support.SFunction;
|
import com.baomidou.mybatisplus.core.toolkit.support.SFunction;
|
||||||
import com.baomidou.mybatisplus.core.toolkit.support.SerializedLambda;
|
import com.baomidou.mybatisplus.core.toolkit.support.SerializedLambda;
|
||||||
import com.github.mybatisplus.toolkit.Constant;
|
import com.github.yulichang.toolkit.Constant;
|
||||||
import org.apache.ibatis.reflection.property.PropertyNamer;
|
import org.apache.ibatis.reflection.property.PropertyNamer;
|
||||||
|
|
||||||
import java.util.Arrays;
|
import java.util.Arrays;
|
@ -1,4 +1,4 @@
|
|||||||
package com.github.mybatisplus.query;
|
package com.github.yulichang.query;
|
||||||
|
|
||||||
import com.baomidou.mybatisplus.core.conditions.SharedString;
|
import com.baomidou.mybatisplus.core.conditions.SharedString;
|
||||||
import com.baomidou.mybatisplus.core.conditions.query.Query;
|
import com.baomidou.mybatisplus.core.conditions.query.Query;
|
||||||
@ -11,8 +11,8 @@ import com.baomidou.mybatisplus.core.toolkit.Assert;
|
|||||||
import com.baomidou.mybatisplus.core.toolkit.StringPool;
|
import com.baomidou.mybatisplus.core.toolkit.StringPool;
|
||||||
import com.baomidou.mybatisplus.core.toolkit.StringUtils;
|
import com.baomidou.mybatisplus.core.toolkit.StringUtils;
|
||||||
import com.baomidou.mybatisplus.core.toolkit.support.SFunction;
|
import com.baomidou.mybatisplus.core.toolkit.support.SFunction;
|
||||||
import com.github.mybatisplus.query.interfaces.MyJoin;
|
import com.github.yulichang.query.interfaces.MyJoin;
|
||||||
import com.github.mybatisplus.toolkit.Constant;
|
import com.github.yulichang.toolkit.Constant;
|
||||||
|
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
import java.util.Arrays;
|
import java.util.Arrays;
|
@ -1,4 +1,4 @@
|
|||||||
package com.github.mybatisplus.query;
|
package com.github.yulichang.query;
|
||||||
|
|
||||||
import com.baomidou.mybatisplus.core.conditions.AbstractWrapper;
|
import com.baomidou.mybatisplus.core.conditions.AbstractWrapper;
|
||||||
import com.baomidou.mybatisplus.core.conditions.SharedString;
|
import com.baomidou.mybatisplus.core.conditions.SharedString;
|
||||||
@ -10,8 +10,8 @@ import com.baomidou.mybatisplus.core.metadata.TableInfoHelper;
|
|||||||
import com.baomidou.mybatisplus.core.toolkit.ArrayUtils;
|
import com.baomidou.mybatisplus.core.toolkit.ArrayUtils;
|
||||||
import com.baomidou.mybatisplus.core.toolkit.StringPool;
|
import com.baomidou.mybatisplus.core.toolkit.StringPool;
|
||||||
import com.baomidou.mybatisplus.core.toolkit.StringUtils;
|
import com.baomidou.mybatisplus.core.toolkit.StringUtils;
|
||||||
import com.github.mybatisplus.query.interfaces.MyJoin;
|
import com.github.yulichang.query.interfaces.MyJoin;
|
||||||
import com.github.mybatisplus.toolkit.Constant;
|
import com.github.yulichang.toolkit.Constant;
|
||||||
|
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
import java.util.List;
|
import java.util.List;
|
@ -1,7 +1,7 @@
|
|||||||
package com.github.mybatisplus.query.interfaces;
|
package com.github.yulichang.query.interfaces;
|
||||||
|
|
||||||
import com.github.mybatisplus.interfaces.BaseJoin;
|
import com.github.yulichang.interfaces.BaseJoin;
|
||||||
import com.github.mybatisplus.toolkit.Constant;
|
import com.github.yulichang.toolkit.Constant;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @author yulichang
|
* @author yulichang
|
@ -1,4 +1,4 @@
|
|||||||
package com.github.mybatisplus.toolkit;
|
package com.github.yulichang.toolkit;
|
||||||
|
|
||||||
import com.baomidou.mybatisplus.core.toolkit.StringPool;
|
import com.baomidou.mybatisplus.core.toolkit.StringPool;
|
||||||
|
|
@ -1,4 +1,4 @@
|
|||||||
package com.github.mybatisplus.toolkit;
|
package com.github.yulichang.toolkit;
|
||||||
|
|
||||||
import com.baomidou.mybatisplus.core.toolkit.LambdaUtils;
|
import com.baomidou.mybatisplus.core.toolkit.LambdaUtils;
|
||||||
import com.baomidou.mybatisplus.core.toolkit.StringUtils;
|
import com.baomidou.mybatisplus.core.toolkit.StringUtils;
|
@ -1,4 +1,4 @@
|
|||||||
package com.github.mybatisplus.wrapper;
|
package com.github.yulichang.wrapper;
|
||||||
|
|
||||||
import com.baomidou.mybatisplus.core.metadata.TableInfo;
|
import com.baomidou.mybatisplus.core.metadata.TableInfo;
|
||||||
import com.baomidou.mybatisplus.core.metadata.TableInfoHelper;
|
import com.baomidou.mybatisplus.core.metadata.TableInfoHelper;
|
||||||
@ -8,7 +8,7 @@ import com.baomidou.mybatisplus.core.toolkit.StringPool;
|
|||||||
import com.baomidou.mybatisplus.core.toolkit.support.ColumnCache;
|
import com.baomidou.mybatisplus.core.toolkit.support.ColumnCache;
|
||||||
import com.baomidou.mybatisplus.core.toolkit.support.SFunction;
|
import com.baomidou.mybatisplus.core.toolkit.support.SFunction;
|
||||||
import com.baomidou.mybatisplus.core.toolkit.support.SerializedLambda;
|
import com.baomidou.mybatisplus.core.toolkit.support.SerializedLambda;
|
||||||
import com.github.mybatisplus.toolkit.MyLambdaUtils;
|
import com.github.yulichang.toolkit.MyLambdaUtils;
|
||||||
import org.apache.ibatis.reflection.property.PropertyNamer;
|
import org.apache.ibatis.reflection.property.PropertyNamer;
|
||||||
|
|
||||||
import java.util.Arrays;
|
import java.util.Arrays;
|
@ -1,4 +1,4 @@
|
|||||||
package com.github.mybatisplus.wrapper;
|
package com.github.yulichang.wrapper;
|
||||||
|
|
||||||
import com.baomidou.mybatisplus.core.conditions.ISqlSegment;
|
import com.baomidou.mybatisplus.core.conditions.ISqlSegment;
|
||||||
import com.baomidou.mybatisplus.core.conditions.SharedString;
|
import com.baomidou.mybatisplus.core.conditions.SharedString;
|
||||||
@ -12,8 +12,8 @@ import com.baomidou.mybatisplus.core.toolkit.*;
|
|||||||
import com.baomidou.mybatisplus.core.toolkit.sql.SqlUtils;
|
import com.baomidou.mybatisplus.core.toolkit.sql.SqlUtils;
|
||||||
import com.baomidou.mybatisplus.core.toolkit.sql.StringEscape;
|
import com.baomidou.mybatisplus.core.toolkit.sql.StringEscape;
|
||||||
import com.baomidou.mybatisplus.core.toolkit.support.SFunction;
|
import com.baomidou.mybatisplus.core.toolkit.support.SFunction;
|
||||||
import com.github.mybatisplus.wrapper.interfaces.MyCompare;
|
import com.github.yulichang.wrapper.interfaces.MyCompare;
|
||||||
import com.github.mybatisplus.wrapper.interfaces.MyFunc;
|
import com.github.yulichang.wrapper.interfaces.MyFunc;
|
||||||
|
|
||||||
import java.util.Arrays;
|
import java.util.Arrays;
|
||||||
import java.util.Collection;
|
import java.util.Collection;
|
@ -1,4 +1,4 @@
|
|||||||
package com.github.mybatisplus.wrapper;
|
package com.github.yulichang.wrapper;
|
||||||
|
|
||||||
import com.baomidou.mybatisplus.core.conditions.SharedString;
|
import com.baomidou.mybatisplus.core.conditions.SharedString;
|
||||||
import com.baomidou.mybatisplus.core.conditions.segments.MergeSegments;
|
import com.baomidou.mybatisplus.core.conditions.segments.MergeSegments;
|
||||||
@ -10,10 +10,10 @@ import com.baomidou.mybatisplus.core.toolkit.Assert;
|
|||||||
import com.baomidou.mybatisplus.core.toolkit.StringPool;
|
import com.baomidou.mybatisplus.core.toolkit.StringPool;
|
||||||
import com.baomidou.mybatisplus.core.toolkit.StringUtils;
|
import com.baomidou.mybatisplus.core.toolkit.StringUtils;
|
||||||
import com.baomidou.mybatisplus.core.toolkit.support.SFunction;
|
import com.baomidou.mybatisplus.core.toolkit.support.SFunction;
|
||||||
import com.github.mybatisplus.toolkit.Constant;
|
import com.github.yulichang.toolkit.Constant;
|
||||||
import com.github.mybatisplus.toolkit.MyLambdaUtils;
|
import com.github.yulichang.toolkit.MyLambdaUtils;
|
||||||
import com.github.mybatisplus.wrapper.interfaces.MyLambdaJoin;
|
import com.github.yulichang.wrapper.interfaces.MyLambdaJoin;
|
||||||
import com.github.mybatisplus.wrapper.interfaces.MySFunctionQuery;
|
import com.github.yulichang.wrapper.interfaces.MySFunctionQuery;
|
||||||
|
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
import java.util.List;
|
import java.util.List;
|
@ -1,4 +1,4 @@
|
|||||||
package com.github.mybatisplus.wrapper.interfaces;
|
package com.github.yulichang.wrapper.interfaces;
|
||||||
|
|
||||||
import com.baomidou.mybatisplus.core.toolkit.support.SFunction;
|
import com.baomidou.mybatisplus.core.toolkit.support.SFunction;
|
||||||
|
|
@ -1,4 +1,4 @@
|
|||||||
package com.github.mybatisplus.wrapper.interfaces;
|
package com.github.yulichang.wrapper.interfaces;
|
||||||
|
|
||||||
import com.baomidou.mybatisplus.core.toolkit.support.SFunction;
|
import com.baomidou.mybatisplus.core.toolkit.support.SFunction;
|
||||||
|
|
@ -1,8 +1,8 @@
|
|||||||
package com.github.mybatisplus.wrapper.interfaces;
|
package com.github.yulichang.wrapper.interfaces;
|
||||||
|
|
||||||
import com.baomidou.mybatisplus.core.toolkit.support.SFunction;
|
import com.baomidou.mybatisplus.core.toolkit.support.SFunction;
|
||||||
import com.github.mybatisplus.interfaces.BaseJoin;
|
import com.github.yulichang.interfaces.BaseJoin;
|
||||||
import com.github.mybatisplus.toolkit.Constant;
|
import com.github.yulichang.toolkit.Constant;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @author yulichang
|
* @author yulichang
|
@ -1,4 +1,4 @@
|
|||||||
package com.github.mybatisplus.wrapper.interfaces;
|
package com.github.yulichang.wrapper.interfaces;
|
||||||
|
|
||||||
import com.baomidou.mybatisplus.core.metadata.TableFieldInfo;
|
import com.baomidou.mybatisplus.core.metadata.TableFieldInfo;
|
||||||
import com.baomidou.mybatisplus.core.toolkit.support.SFunction;
|
import com.baomidou.mybatisplus.core.toolkit.support.SFunction;
|
@ -1,2 +1,2 @@
|
|||||||
org.springframework.boot.autoconfigure.EnableAutoConfiguration=\
|
org.springframework.boot.autoconfigure.EnableAutoConfiguration=\
|
||||||
com.github.mybatisplus.MybatisPlusConfiguration
|
com.github.yulichang.MybatisPlusConfiguration
|
||||||
|
Loading…
x
Reference in New Issue
Block a user