|
@@ -32,7 +32,7 @@ import java.util.regex.Pattern;
|
|
|
@Service
|
|
|
public class ObjectServiceImpl implements IObjectService {
|
|
|
|
|
|
- private final static String regex = "#|/\\*|\\*/|--|\\buse\\b|\\binsert\\b|\\bdelete\\b|\\bupdate\\b|\\bcreate\\b|\\bdrop\\b|\\btruncate\\b|\\balter\\b|\\bgrant\\b|\\bexecute\\b|\\bexec\\b|\\bxp_cmdshell\\b|\\bcall\\b|\\bdeclare\\b|\\bsource\\b|\\bsql\\b|\\bchr\\b|\\bmid\\b|\\bmaster\\b|\\bchar\\b|\\bsitename\\b|\\bnet user\\b|;|-|\\+|,|\\btable\\b|\\bgroup_concat\\b|\\bcolumn_name\\b|\\binformation_schema.columns\\b|\\btable_schema\\b|//|/";
|
|
|
+ private final static String regex = "#|/\\*|\\*/|--|\\buse\\b|\\binsert\\b|\\bdelete\\b|\\bupdate\\b|\\bcreate\\b|\\bdrop\\b|\\btruncate\\b|\\balter\\b|\\bgrant\\b|\\bexecute\\b|\\bexec\\b|\\bxp_cmdshell\\b|\\bcall\\b|\\bdeclare\\b|\\bsource\\b|\\bsql\\b|\\bchr\\b|\\bmid\\b|\\bmaster\\b|\\bchar\\b|\\bsitename\\b|\\bnet user\\b|;|-|\\+|\\btable\\b|\\bgroup_concat\\b|\\bcolumn_name\\b|\\binformation_schema.columns\\b|\\btable_schema\\b|//|/";
|
|
|
private final Pattern compile;
|
|
|
{
|
|
|
compile = Pattern.compile(regex);
|
|
@@ -66,8 +66,8 @@ public class ObjectServiceImpl implements IObjectService {
|
|
|
|
|
|
String tablename = (String) map.get("tablename");
|
|
|
if(StringUtils.isBlank(tablename))
|
|
|
- //tablename = StringUtils.substringBetween("from ", " ");
|
|
|
- return Result.successData(ResultCode.SUCCESS,lms);
|
|
|
+ tablename = StringUtils.substringBetween("from ", " ");
|
|
|
+ //return Result.successData(ResultCode.SUCCESS,lms);
|
|
|
|
|
|
QueryWrapper<TableColumnHeader> wrapper = new QueryWrapper<>();
|
|
|
wrapper.eq("name", tablename);
|
|
@@ -82,6 +82,14 @@ public class ObjectServiceImpl implements IObjectService {
|
|
|
Table table = new Table();
|
|
|
table.setTableHeader(tableColumnHeader);
|
|
|
table.setTableData(lms);
|
|
|
+ //截取sql
|
|
|
+ if (sql.contains("limit")){
|
|
|
+ String newSql = sql.split("limit")[0];
|
|
|
+ List<LinkedHashMap<String, Object>> linkedHashMaps = objectMapper.selectAll(newSql);
|
|
|
+ table.setCount(linkedHashMaps.size());
|
|
|
+ }else {
|
|
|
+ table.setCount(lms.size());
|
|
|
+ }
|
|
|
return Result.successData(ResultCode.SUCCESS,table);
|
|
|
}
|
|
|
|