Commit 3a9a04d6 authored by liaozan's avatar liaozan 🏀

Update code style according to ide inspections

parent 8766714f
...@@ -46,13 +46,13 @@ public class ConfigurationPropertiesUtils { ...@@ -46,13 +46,13 @@ public class ConfigurationPropertiesUtils {
public static String getPrefix(Class<?> sourceClass) { public static String getPrefix(Class<?> sourceClass) {
ConfigurationProperties annotation = sourceClass.getAnnotation(ConfigurationProperties.class); ConfigurationProperties annotation = sourceClass.getAnnotation(ConfigurationProperties.class);
if (annotation == null) { ValidateUtils.notNull(annotation, getErrorDetail(sourceClass));
String className = ConfigurationProperties.class.getName();
String errorDetail = sourceClass.getSimpleName() + " must annotated @" + className + " or overwrite getPropertiesPrefix method";
throw new IllegalStateException(errorDetail);
}
MergedAnnotation<ConfigurationProperties> mergedAnnotation = MergedAnnotation.from(annotation); MergedAnnotation<ConfigurationProperties> mergedAnnotation = MergedAnnotation.from(annotation);
return mergedAnnotation.getString(MergedAnnotation.VALUE); return mergedAnnotation.getString(MergedAnnotation.VALUE);
} }
private static String getErrorDetail(Class<?> sourceClass) {
return sourceClass.getSimpleName() + " must annotated @" + ConfigurationProperties.class.getName() + " or overwrite getPropertiesPrefix method";
}
} }
...@@ -17,12 +17,7 @@ public class ValidationMessageBuilder { ...@@ -17,12 +17,7 @@ public class ValidationMessageBuilder {
StringJoiner joiner = new StringJoiner(", "); StringJoiner joiner = new StringJoiner(", ");
for (ObjectError error : bindingResult.getAllErrors()) { for (ObjectError error : bindingResult.getAllErrors()) {
String errorMessage = Optional.ofNullable(error.getDefaultMessage()).orElse("验证失败"); String errorMessage = Optional.ofNullable(error.getDefaultMessage()).orElse("验证失败");
String source; String source = getSourceName(error);
if (error instanceof FieldError) {
source = ((FieldError) error).getField();
} else {
source = error.getObjectName();
}
joiner.add(source + " " + errorMessage); joiner.add(source + " " + errorMessage);
} }
return joiner.toString(); return joiner.toString();
...@@ -37,6 +32,14 @@ public class ValidationMessageBuilder { ...@@ -37,6 +32,14 @@ public class ValidationMessageBuilder {
return joiner.toString(); return joiner.toString();
} }
private static String getSourceName(ObjectError error) {
if (error instanceof FieldError) {
return ((FieldError) error).getField();
} else {
return error.getObjectName();
}
}
private static String getActualProperty(String propertyPath) { private static String getActualProperty(String propertyPath) {
if (StringUtils.isBlank(propertyPath)) { if (StringUtils.isBlank(propertyPath)) {
return propertyPath; return propertyPath;
......
...@@ -52,9 +52,8 @@ public class HierarchicalDataReadListener extends ExcelReadListenerBase<Map<Inte ...@@ -52,9 +52,8 @@ public class HierarchicalDataReadListener extends ExcelReadListenerBase<Map<Inte
return true; return true;
} }
protected void buildImportedRow(Integer rowIndex, Integer columnIndex, String text) { protected void buildImportedRow(Integer rowIndex, Integer columnIndex, String content) {
ImportedRecord importedRecord = new ImportedRecord(); ImportedRecord importedRecord = createImportedRecord(content);
importedRecord.setText(text);
coordinateTable.put(rowIndex, columnIndex, importedRecord); coordinateTable.put(rowIndex, columnIndex, importedRecord);
if (columnIndex == 0) { if (columnIndex == 0) {
importedRecords.add(importedRecord); importedRecords.add(importedRecord);
...@@ -74,10 +73,16 @@ public class HierarchicalDataReadListener extends ExcelReadListenerBase<Map<Inte ...@@ -74,10 +73,16 @@ public class HierarchicalDataReadListener extends ExcelReadListenerBase<Map<Inte
} }
} }
private ImportedRecord createImportedRecord(String text) {
ImportedRecord importedRecord = new ImportedRecord();
importedRecord.setContent(text);
return importedRecord;
}
@Data @Data
public static class ImportedRecord { public static class ImportedRecord {
private String text; private String content;
private List<ImportedRecord> children = new LinkedList<>(); private List<ImportedRecord> children = new LinkedList<>();
......
...@@ -101,7 +101,7 @@ public class TreeNodeDao<NODE extends TreeNode> { ...@@ -101,7 +101,7 @@ public class TreeNodeDao<NODE extends TreeNode> {
newNode.setDepth(parent.getDepth() + 1); newNode.setDepth(parent.getDepth() + 1);
newNode.setParentId(parent.getId()); newNode.setParentId(parent.getId());
// 增加父节点右边所有节点的left和right,留出空位 // 增加父节点右边所有节点的left和right,留出空位
increaseNodesLeftAndRight(newNode.getRelateId(), parent.getLft(), parent.getLft(), false, 2); increaseNodesLeftAndRight(newNode.getRelateId(), parent.getLft(), parent.getLft());
// 添加节点 // 添加节点
return baseDao.add(newNode); return baseDao.add(newNode);
} }
...@@ -111,7 +111,7 @@ public class TreeNodeDao<NODE extends TreeNode> { ...@@ -111,7 +111,7 @@ public class TreeNodeDao<NODE extends TreeNode> {
newNode.setDepth(preBroNode.getDepth()); newNode.setDepth(preBroNode.getDepth());
newNode.setParentId(preBroNode.getParentId()); newNode.setParentId(preBroNode.getParentId());
// 增加兄弟节点右边所有节点的left和right,留出空位 // 增加兄弟节点右边所有节点的left和right,留出空位
increaseNodesLeftAndRight(preBroNode.getRelateId(), preBroNode.getRgt(), preBroNode.getRgt(), false, 2); increaseNodesLeftAndRight(preBroNode.getRelateId(), preBroNode.getRgt(), preBroNode.getRgt());
// 添加节点 // 添加节点
return baseDao.add(newNode); return baseDao.add(newNode);
} }
...@@ -330,20 +330,20 @@ public class TreeNodeDao<NODE extends TreeNode> { ...@@ -330,20 +330,20 @@ public class TreeNodeDao<NODE extends TreeNode> {
* 如果是父节点的left和right,则includeRight为true,因为父节点的right值也需要更新; * 如果是父节点的left和right,则includeRight为true,因为父节点的right值也需要更新;
* 如果是兄弟节点的left和right,则include为false,因为系统节点的right值不需要更新。 * 如果是兄弟节点的left和right,则include为false,因为系统节点的right值不需要更新。
*/ */
private int increaseNodesLeftAndRight(Long relateId, Integer left, Integer right, boolean includeRight, Integer increment) { private void increaseNodesLeftAndRight(Long relateId, Integer left, Integer right) {
StringBuilder sql = new StringBuilder(); StringBuilder sql = new StringBuilder();
sql.append("UPDATE ") sql.append("UPDATE ")
.append(baseDao.getTableName()) .append(baseDao.getTableName())
.append(" SET lft = lft + ").append(increment) .append(" SET lft = lft + ").append(2)
.append(" WHERE relate_id = #{relateId} AND lft > #{lft} AND validate = #{validate}"); .append(" WHERE relate_id = #{relateId} AND lft > #{lft} AND validate = #{validate}");
baseDao.updateByCompleteSql(sql.toString(), relateId, left, ValidateEnum.VALID.getValue()); baseDao.updateByCompleteSql(sql.toString(), relateId, left, ValidateEnum.VALID.getValue());
sql.delete(0, sql.length()); sql.delete(0, sql.length());
sql.append("UPDATE ").append(baseDao.getTableName()) sql.append("UPDATE ").append(baseDao.getTableName())
.append(" SET rgt = rgt + ").append(increment) .append(" SET rgt = rgt + ").append(2)
.append(" WHERE relate_id = #{relateId} AND rgt ") .append(" WHERE relate_id = #{relateId} AND rgt ")
.append(includeRight ? ">=" : ">") .append(">")
.append(" #{rgt} AND validate = #{validate}"); .append(" #{rgt} AND validate = #{validate}");
return baseDao.updateByCompleteSql(sql.toString(), relateId, right, ValidateEnum.VALID.getValue()); baseDao.updateByCompleteSql(sql.toString(), relateId, right, ValidateEnum.VALID.getValue());
} }
private int decreaseNodesLeftAndRight(Long relateId, Integer left, Integer right, Integer decrement) { private int decreaseNodesLeftAndRight(Long relateId, Integer left, Integer right, Integer decrement) {
......
...@@ -5,7 +5,8 @@ import com.schbrain.common.module.tree.TreeNode; ...@@ -5,7 +5,8 @@ import com.schbrain.common.module.tree.TreeNode;
import java.util.List; import java.util.List;
/** /**
* Created by hzchengyi on 2019/1/21. * @author hzchengyi
* @since 2019/1/21
*/ */
public class EmptyTreeOperationAware<NODE extends TreeNode> implements TreeOperationAware<NODE> { public class EmptyTreeOperationAware<NODE extends TreeNode> implements TreeOperationAware<NODE> {
......
...@@ -5,7 +5,8 @@ import com.schbrain.common.module.tree.TreeNode; ...@@ -5,7 +5,8 @@ import com.schbrain.common.module.tree.TreeNode;
import java.util.List; import java.util.List;
/** /**
* Created by hzchengyi on 2019/1/21. * @author hzchengyi
* @since 2019/1/21
*/ */
public interface TreeOperationAware<NODE extends TreeNode> { public interface TreeOperationAware<NODE extends TreeNode> {
......
package com.schbrain.common.module.tree.event; package com.schbrain.common.module.tree.event;
/** /**
* Created by hzchengyi on 2019/1/21. * @author hzchengyi
* @since 2019/1/21
*/ */
public enum TreeOperationEvent { public enum TreeOperationEvent {
ADD, ADD,
DELETE, DELETE,
MOVE; MOVE
} }
...@@ -88,10 +88,7 @@ public class DefaultGlobalExceptionResolver extends AbstractHandlerMethodExcepti ...@@ -88,10 +88,7 @@ public class DefaultGlobalExceptionResolver extends AbstractHandlerMethodExcepti
if (targetMethod == null) { if (targetMethod == null) {
return null; return null;
} }
ServletInvocableHandlerMethod exceptionHandlerMethod = new ServletInvocableHandlerMethod(handler, targetMethod); return createInvocableHandlerMethod(handler, targetMethod);
exceptionHandlerMethod.setHandlerMethodArgumentResolvers(argumentResolverComposite);
exceptionHandlerMethod.setHandlerMethodReturnValueHandlers(returnValueHandlerComposite);
return exceptionHandlerMethod;
} }
@Nullable @Nullable
...@@ -112,11 +109,26 @@ public class DefaultGlobalExceptionResolver extends AbstractHandlerMethodExcepti ...@@ -112,11 +109,26 @@ public class DefaultGlobalExceptionResolver extends AbstractHandlerMethodExcepti
// nothing to do // nothing to do
} }
private ServletInvocableHandlerMethod createInvocableHandlerMethod(Object handler, Method targetMethod) {
ServletInvocableHandlerMethod exceptionHandlerMethod = new ServletInvocableHandlerMethod(handler, targetMethod);
exceptionHandlerMethod.setHandlerMethodArgumentResolvers(argumentResolverComposite);
exceptionHandlerMethod.setHandlerMethodReturnValueHandlers(returnValueHandlerComposite);
return exceptionHandlerMethod;
}
private ExceptionHandlerMethodResolver getHandlerMethodResolver(Class<?> handlerType) { private ExceptionHandlerMethodResolver getHandlerMethodResolver(Class<?> handlerType) {
return exceptionHandlerMethodResolvers.computeIfAbsent(handlerType, key -> new ExceptionHandlerMethodResolver(handlerType)); return exceptionHandlerMethodResolvers.computeIfAbsent(handlerType, key -> new ExceptionHandlerMethodResolver(handlerType));
} }
private Object[] getArguments(Exception exception, HandlerMethod handlerMethod) { private Object[] getArguments(Exception exception, HandlerMethod handlerMethod) {
List<Throwable> exceptions = getExceptions(exception);
Object[] arguments = new Object[exceptions.size() + 1];
exceptions.toArray(arguments);
arguments[arguments.length - 1] = handlerMethod;
return arguments;
}
private List<Throwable> getExceptions(Exception exception) {
List<Throwable> exceptions = new ArrayList<>(); List<Throwable> exceptions = new ArrayList<>();
Throwable exToExpose = exception; Throwable exToExpose = exception;
while (exToExpose != null) { while (exToExpose != null) {
...@@ -124,10 +136,7 @@ public class DefaultGlobalExceptionResolver extends AbstractHandlerMethodExcepti ...@@ -124,10 +136,7 @@ public class DefaultGlobalExceptionResolver extends AbstractHandlerMethodExcepti
Throwable cause = exToExpose.getCause(); Throwable cause = exToExpose.getCause();
exToExpose = (cause != exToExpose ? cause : null); exToExpose = (cause != exToExpose ? cause : null);
} }
Object[] arguments = new Object[exceptions.size() + 1]; return exceptions;
exceptions.toArray(arguments);
arguments[arguments.length - 1] = handlerMethod;
return arguments;
} }
} }
...@@ -44,6 +44,10 @@ class DubboConfigInitEventListener extends OnceApplicationContextEventListener<D ...@@ -44,6 +44,10 @@ class DubboConfigInitEventListener extends OnceApplicationContextEventListener<D
private ConfigCenterConfig buildConfigCenterConfig() { private ConfigCenterConfig buildConfigCenterConfig() {
Map<String, String> externalConfiguration = filterDubboProperties(environment); Map<String, String> externalConfiguration = filterDubboProperties(environment);
return buildConfigCenterConfig(externalConfiguration);
}
private ConfigCenterConfig buildConfigCenterConfig(Map<String, String> externalConfiguration) {
ConfigCenterConfig configCenterConfig = new ConfigCenterConfig(); ConfigCenterConfig configCenterConfig = new ConfigCenterConfig();
configCenterConfig.setAppExternalConfig(externalConfiguration); configCenterConfig.setAppExternalConfig(externalConfiguration);
return configCenterConfig; return configCenterConfig;
......
...@@ -30,14 +30,17 @@ public class MybatisPlusGlobalConfigCustomizer implements MybatisPlusPropertiesC ...@@ -30,14 +30,17 @@ public class MybatisPlusGlobalConfigCustomizer implements MybatisPlusPropertiesC
@Override @Override
public void customize(MybatisPlusProperties properties) { public void customize(MybatisPlusProperties properties) {
GlobalConfig globalConfig = properties.getGlobalConfig(); DbConfig dbConfig = buildDbConfig(properties);
globalConfig.setBanner(false);
DbConfig dbConfig = globalConfig.getDbConfig();
dbConfig.setIdType(IdType.AUTO); dbConfig.setIdType(IdType.AUTO);
dbConfig.setInsertStrategy(FieldStrategy.NOT_NULL); dbConfig.setInsertStrategy(FieldStrategy.NOT_NULL);
dbConfig.setUpdateStrategy(FieldStrategy.NOT_NULL); dbConfig.setUpdateStrategy(FieldStrategy.NOT_NULL);
dbConfig.setWhereStrategy(FieldStrategy.NOT_NULL); dbConfig.setWhereStrategy(FieldStrategy.NOT_NULL);
} }
private DbConfig buildDbConfig(MybatisPlusProperties properties) {
GlobalConfig globalConfig = properties.getGlobalConfig();
globalConfig.setBanner(false);
return globalConfig.getDbConfig();
}
} }
...@@ -11,7 +11,7 @@ import java.util.Properties; ...@@ -11,7 +11,7 @@ import java.util.Properties;
*/ */
public interface DataSourcePropertiesExtractor { public interface DataSourcePropertiesExtractor {
boolean support(DataSource dataSource) throws SQLException; boolean support(DataSource dataSource);
Properties extract(DataSource dataSource, Map<String, String> properties) throws SQLException; Properties extract(DataSource dataSource, Map<String, String> properties) throws SQLException;
......
...@@ -171,14 +171,9 @@ public class OssUtils { ...@@ -171,14 +171,9 @@ public class OssUtils {
} }
public static UploadCredentials generateUploadToken() { public static UploadCredentials generateUploadToken() {
AssumeRoleRequest request = new AssumeRoleRequest();
request.setSysMethod(MethodType.POST);
request.setRoleArn(stsProperties.getRoleArn());
request.setRoleSessionName(stsProperties.getRoleSessionName());
request.setDurationSeconds(stsProperties.getDurationSeconds());
AssumeRoleResponse response; AssumeRoleResponse response;
try { try {
response = getStsAcsClient().getAcsResponse(request); response = getStsAcsClient().getAcsResponse(createAssumeRoleRequest());
} catch (com.aliyuncs.exceptions.ClientException e) { } catch (com.aliyuncs.exceptions.ClientException e) {
return new UploadCredentials(e.getErrMsg()); return new UploadCredentials(e.getErrMsg());
} }
...@@ -283,6 +278,15 @@ public class OssUtils { ...@@ -283,6 +278,15 @@ public class OssUtils {
return getOssClient().doesObjectExist(bucket, key); return getOssClient().doesObjectExist(bucket, key);
} }
private static AssumeRoleRequest createAssumeRoleRequest() {
AssumeRoleRequest request = new AssumeRoleRequest();
request.setSysMethod(MethodType.POST);
request.setRoleArn(stsProperties.getRoleArn());
request.setRoleSessionName(stsProperties.getRoleSessionName());
request.setDurationSeconds(stsProperties.getDurationSeconds());
return request;
}
private static DownloadResult download0(String bucket, String objectKey) { private static DownloadResult download0(String bucket, String objectKey) {
GetObjectRequest request = new GetObjectRequest(bucket, objectKey); GetObjectRequest request = new GetObjectRequest(bucket, objectKey);
try { try {
......
...@@ -17,35 +17,35 @@ public interface BaseDao<T> { ...@@ -17,35 +17,35 @@ public interface BaseDao<T> {
* 插入单个领域对象 * 插入单个领域对象
* <p><strong>注意:</strong>插入时只会指定非<tt>null</tt>的领域对象属性对应的列</p> * <p><strong>注意:</strong>插入时只会指定非<tt>null</tt>的领域对象属性对应的列</p>
* *
* @param obj 待插入领域对象 * @param entity 待插入领域对象
* @return 插入是否成功 * @return 插入是否成功
*/ */
Boolean add(T obj); Boolean add(T entity);
/** /**
* 批量插入领域对象 * 批量插入领域对象
* *
* @param objList 待插入领域对象列表 * @param entityList 待插入领域对象列表
* @param fields 插入时指定的领域对象属性列表,如果为空表示对象的所有属性 * @param fields 插入时指定的领域对象属性列表,如果为空表示对象的所有属性
* @return 影响行数 * @return 影响行数
*/ */
Integer addList(List<T> objList, String... fields); Integer addList(List<T> entityList, String... fields);
T getById(long id); T getById(long id);
T getOneByObject(T obj); T getOneByObject(T entity);
T getOneByCondition(String whereClause, Object... objs); T getOneByCondition(String whereClause, Object... entityList);
List<T> listByIdList(List<Long> idList); List<T> listByIdList(List<Long> idList);
List<T> listByCondition(String whereClause, Object... objs); List<T> listByCondition(String whereClause, Object... entityList);
List<T> listByObject(T obj); List<T> listByObject(T entity);
Integer getCountByCondition(String whereClause, Object... objs); Integer getCountByCondition(String whereClause, Object... entityList);
Page<T> pageByCondition(int pageNum, int pageSize, String whereClause, Object... objs); Page<T> pageByCondition(int pageNum, int pageSize, String whereClause, Object... entityList);
/** /**
* 分页获取列表 * 分页获取列表
...@@ -54,23 +54,23 @@ public interface BaseDao<T> { ...@@ -54,23 +54,23 @@ public interface BaseDao<T> {
* @param pageSize 当前页记录数 * @param pageSize 当前页记录数
* @param whereClause <tt>where</tt>关键词后的条件语句 * @param whereClause <tt>where</tt>关键词后的条件语句
* @param orderByClause <tt>order by</tt>关键词后的排序语句,注意:语句中不支持参数 * @param orderByClause <tt>order by</tt>关键词后的排序语句,注意:语句中不支持参数
* @param objs <tt>where</tt>关键词后的条件语句中参数对应的值 * @param entityList <tt>where</tt>关键词后的条件语句中参数对应的值
* @return <tt>page</tt>对象,包含记录及分页信息 * @return <tt>page</tt>对象,包含记录及分页信息
*/ */
Page<T> pageByCondition(int pageNum, int pageSize, String whereClause, String orderByClause, Object... objs); Page<T> pageByCondition(int pageNum, int pageSize, String whereClause, String orderByClause, Object... entityList);
Boolean deleteById(long id); Boolean deleteById(long id);
Integer deleteByIdList(List<Long> idList); Integer deleteByIdList(List<Long> idList);
Integer deleteByCondition(String whereClause, Object... objs); Integer deleteByCondition(String whereClause, Object... entityList);
Boolean updateById(T obj); Boolean updateById(T entity);
Boolean updateByIdWithNull(T obj); Boolean updateByIdWithNull(T entity);
Integer updateByCondition(T obj, String whereClause, Object... objs); Integer updateByCondition(T entity, String whereClause, Object... entityList);
Integer updateByCompleteSql(String completeSql, Object... objs); Integer updateByCompleteSql(String completeSql, Object... entityList);
} }
...@@ -35,13 +35,17 @@ public class CustomizeMapperFactoryBean<T> extends MapperFactoryBean<T> { ...@@ -35,13 +35,17 @@ public class CustomizeMapperFactoryBean<T> extends MapperFactoryBean<T> {
List<Interceptor> interceptorList = configuration.getInterceptors(); List<Interceptor> interceptorList = configuration.getInterceptors();
boolean hasPageInterceptor = interceptorList.stream().anyMatch(PageInterceptor.class::isInstance); boolean hasPageInterceptor = interceptorList.stream().anyMatch(PageInterceptor.class::isInstance);
if (!hasPageInterceptor) { if (!hasPageInterceptor) {
PageInterceptor pageInterceptor = new PageInterceptor(); configuration.addInterceptor(createPageInterceptor());
pageInterceptor.setProperties(new Properties());
configuration.addInterceptor(pageInterceptor);
} }
// 创建代理 // 创建代理
BaseDaoInvocationHandler<T> handler = new BaseDaoInvocationHandler<>(originMapperProxy, sqlSession, mapperInterface); BaseDaoInvocationHandler<T> handler = new BaseDaoInvocationHandler<>(originMapperProxy, sqlSession, mapperInterface);
return ProxyUtil.newProxyInstance(mapperInterface.getClassLoader(), handler, mapperInterface); return ProxyUtil.newProxyInstance(mapperInterface.getClassLoader(), handler, mapperInterface);
} }
private PageInterceptor createPageInterceptor() {
PageInterceptor pageInterceptor = new PageInterceptor();
pageInterceptor.setProperties(new Properties());
return pageInterceptor;
}
} }
...@@ -87,10 +87,7 @@ public class BaseMapper { ...@@ -87,10 +87,7 @@ public class BaseMapper {
} }
private void parseMapperClass() { private void parseMapperClass() {
MapperConfig mapperConfig = mapperInterface.getAnnotation(MapperConfig.class); MapperConfig mapperConfig = getMapperConfig();
if (null == mapperConfig) {
throw new MapperParseException(String.format("Can not find MapperConfig annotation in mapper class %s ", mapperInterface.getName()));
}
tableName = mapperConfig.tableName(); tableName = mapperConfig.tableName();
if (StringUtils.isBlank(tableName)) { if (StringUtils.isBlank(tableName)) {
throw new MapperParseException(String.format("Table name is blank in MapperConfig annotation in mapper class %s ", mapperInterface.getName())); throw new MapperParseException(String.format("Table name is blank in MapperConfig annotation in mapper class %s ", mapperInterface.getName()));
...@@ -105,6 +102,14 @@ public class BaseMapper { ...@@ -105,6 +102,14 @@ public class BaseMapper {
} }
} }
private MapperConfig getMapperConfig() {
MapperConfig mapperConfig = mapperInterface.getAnnotation(MapperConfig.class);
if (null == mapperConfig) {
throw new MapperParseException(String.format("Can not find MapperConfig annotation in mapper class %s ", mapperInterface.getName()));
}
return mapperConfig;
}
private Object getById(Object[] args) { private Object getById(Object[] args) {
if (null == args[0]) { if (null == args[0]) {
throw new IllegalArgumentException("Parameter id can not be null"); throw new IllegalArgumentException("Parameter id can not be null");
......
...@@ -34,8 +34,7 @@ public abstract class AbstractSqlSource implements SqlSource { ...@@ -34,8 +34,7 @@ public abstract class AbstractSqlSource implements SqlSource {
if (StringUtils.isBlank(sql)) { if (StringUtils.isBlank(sql)) {
return "1=1"; return "1=1";
} }
Object[] params = ((Object[]) args[1]); int paramCount = getParamCount(args);
int paramCount = null == params ? 0 : params.length;
Matcher matcher = pattern.matcher(sql); Matcher matcher = pattern.matcher(sql);
int i = 0; int i = 0;
StringBuilder result = new StringBuilder(); StringBuilder result = new StringBuilder();
...@@ -78,4 +77,9 @@ public abstract class AbstractSqlSource implements SqlSource { ...@@ -78,4 +77,9 @@ public abstract class AbstractSqlSource implements SqlSource {
return PropertyParser.parse(sql, configuration.getVariables()); return PropertyParser.parse(sql, configuration.getVariables());
} }
private int getParamCount(Object[] args) {
Object[] params = ((Object[]) args[1]);
return null == params ? 0 : params.length;
}
} }
...@@ -20,7 +20,7 @@ public class UpdateByCompleteSqlSource extends AbstractSqlSource { ...@@ -20,7 +20,7 @@ public class UpdateByCompleteSqlSource extends AbstractSqlSource {
@Override @Override
public BoundSql getBoundSql(Object parameterObject) { public BoundSql getBoundSql(Object parameterObject) {
Object[] args = (Object[]) ((Map) parameterObject).get("array"); Object[] args = (Object[]) ((Map<?, ?>) parameterObject).get("array");
SqlSourceBuilder sqlSourceParser = new SqlSourceBuilder(configuration); SqlSourceBuilder sqlSourceParser = new SqlSourceBuilder(configuration);
String sql = replacePlaceholder(getGenericParamSqlAndCheckParamCount(args)); String sql = replacePlaceholder(getGenericParamSqlAndCheckParamCount(args));
Map<String, Object> paramMap = getSqlCommandParam((Object[]) args[1]); Map<String, Object> paramMap = getSqlCommandParam((Object[]) args[1]);
......
...@@ -31,7 +31,7 @@ public class UpdateByConditionSqlSource extends AbstractSqlSource { ...@@ -31,7 +31,7 @@ public class UpdateByConditionSqlSource extends AbstractSqlSource {
@Override @Override
protected BoundSql getBoundSql(String scriptSql, Object parameterObject) { protected BoundSql getBoundSql(String scriptSql, Object parameterObject) {
Object[] args = (Object[]) ((Map) parameterObject).get("array"); Object[] args = (Object[]) ((Map<?, ?>) parameterObject).get("array");
Object[] conditionArgs = new Object[]{args[1], args[2]}; Object[] conditionArgs = new Object[]{args[1], args[2]};
Map<String, Object> paramMap = getSqlCommandParam((Object[]) args[2]); Map<String, Object> paramMap = getSqlCommandParam((Object[]) args[2]);
paramMap.put("obj", args[0]); paramMap.put("obj", args[0]);
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment