Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
S
sqlrest
Overview
Overview
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
comm
sqlrest
Commits
efc7844d
Commit
efc7844d
authored
Aug 25, 2025
by
inrgihc
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
增加脚本日志可展示
parent
87537983
Hide whitespace changes
Inline
Side-by-side
Showing
10 changed files
with
299 additions
and
23 deletions
+299
-23
sqlrest-common/src/main/java/org/dromara/sqlrest/common/service/DisplayRecord.java
+6
-0
sqlrest-core/src/main/java/org/dromara/sqlrest/core/dto/ExecuteSqlRecord.java
+3
-1
sqlrest-core/src/main/java/org/dromara/sqlrest/core/dto/ScripDebugRecord.java
+26
-0
sqlrest-core/src/main/java/org/dromara/sqlrest/core/exec/engine/impl/ScriptExecutorService.java
+4
-0
sqlrest-core/src/main/java/org/dromara/sqlrest/core/exec/logger/DebugExecuteLogger.java
+14
-5
sqlrest-core/src/main/java/org/dromara/sqlrest/core/exec/module/DbVarModule.java
+9
-9
sqlrest-core/src/main/java/org/dromara/sqlrest/core/exec/module/HttpModule.java
+193
-0
sqlrest-core/src/main/java/org/dromara/sqlrest/core/exec/module/LogVarModule.java
+36
-0
sqlrest-core/src/main/java/org/dromara/sqlrest/core/service/ApiAssignmentService.java
+6
-6
sqlrest-core/src/main/java/org/dromara/sqlrest/core/util/SqlJdbcUtils.java
+2
-2
No files found.
sqlrest-common/src/main/java/org/dromara/sqlrest/common/service/DisplayRecord.java
0 → 100644
View file @
efc7844d
package
org
.
dromara
.
sqlrest
.
common
.
service
;
public
interface
DisplayRecord
{
String
getDisplayText
();
}
sqlrest-core/src/main/java/org/dromara/sqlrest/core/dto/ExecuteSqlRecord.java
View file @
efc7844d
...
...
@@ -18,12 +18,13 @@ import lombok.Builder;
import
lombok.Data
;
import
lombok.NoArgsConstructor
;
import
org.apache.ibatis.reflection.ArrayUtil
;
import
org.dromara.sqlrest.common.service.DisplayRecord
;
@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
public
class
ExecuteSqlRecord
{
public
class
ExecuteSqlRecord
implements
DisplayRecord
{
private
String
sql
;
...
...
@@ -56,6 +57,7 @@ public class ExecuteSqlRecord {
return
value
.
toString
();
}
@Override
public
String
getDisplayText
()
{
return
"==> Preparing: "
+
sql
.
trim
()
+
"\n"
+
"==> Parameters: "
+
getParameterValueString
()
+
"\n"
...
...
sqlrest-core/src/main/java/org/dromara/sqlrest/core/dto/ScripDebugRecord.java
0 → 100644
View file @
efc7844d
// Copyright tang. All rights reserved.
// https://gitee.com/inrgihc/sqlrest
//
// Use of this source code is governed by a BSD-style license
//
// Author: tang (inrgihc@126.com)
// Date : 2024/3/31
// Location: beijing , china
/////////////////////////////////////////////////////////////
package
org
.
dromara
.
sqlrest
.
core
.
dto
;
import
org.dromara.sqlrest.common.service.DisplayRecord
;
public
class
ScripDebugRecord
implements
DisplayRecord
{
private
String
text
;
public
ScripDebugRecord
(
String
text
)
{
this
.
text
=
text
;
}
@Override
public
String
getDisplayText
()
{
return
text
;
}
}
sqlrest-core/src/main/java/org/dromara/sqlrest/core/exec/engine/impl/ScriptExecutorService.java
View file @
efc7844d
...
...
@@ -26,8 +26,10 @@ import org.dromara.sqlrest.core.exec.annotation.Module;
import
org.dromara.sqlrest.core.exec.engine.AbstractExecutorEngine
;
import
org.dromara.sqlrest.core.exec.module.CacheVarModule
;
import
org.dromara.sqlrest.core.exec.module.DbVarModule
;
import
org.dromara.sqlrest.core.exec.module.LogVarModule
;
import
org.dromara.sqlrest.core.exec.module.DsVarModule
;
import
org.dromara.sqlrest.core.exec.module.EnvVarModule
;
import
org.dromara.sqlrest.core.exec.module.HttpModule
;
import
org.dromara.sqlrest.core.exec.module.ReqVarModule
;
import
org.dromara.sqlrest.persistence.entity.ApiContextEntity
;
...
...
@@ -36,6 +38,8 @@ public class ScriptExecutorService extends AbstractExecutorEngine {
public
static
List
<
ScriptEditorCompletion
>
syntax
=
new
ArrayList
<>();
public
static
List
<
Class
>
modules
=
Arrays
.
asList
(
EnvVarModule
.
class
,
HttpModule
.
class
,
LogVarModule
.
class
,
DbVarModule
.
class
,
DsVarModule
.
class
,
ReqVarModule
.
class
,
...
...
sqlrest-core/src/main/java/org/dromara/sqlrest/core/exec/logger/
Sql
ExecuteLogger.java
→
sqlrest-core/src/main/java/org/dromara/sqlrest/core/exec/logger/
Debug
ExecuteLogger.java
View file @
efc7844d
...
...
@@ -12,25 +12,34 @@ package org.dromara.sqlrest.core.exec.logger;
import
java.util.ArrayList
;
import
java.util.Collections
;
import
java.util.List
;
import
org.dromara.sqlrest.common.service.DisplayRecord
;
import
org.dromara.sqlrest.core.dto.ExecuteSqlRecord
;
import
org.dromara.sqlrest.core.dto.ScripDebugRecord
;
public
final
class
Sql
ExecuteLogger
{
public
final
class
Debug
ExecuteLogger
{
private
static
final
ThreadLocal
<
List
<
ExecuteSql
Record
>>
threadLocal
=
new
ThreadLocal
<>();
private
static
final
ThreadLocal
<
List
<
Display
Record
>>
threadLocal
=
new
ThreadLocal
<>();
public
static
void
init
()
{
threadLocal
.
set
(
new
ArrayList
<>());
}
public
static
void
add
(
String
sql
,
List
parameters
,
Long
costs
)
{
List
<
ExecuteSql
Record
>
list
=
threadLocal
.
get
();
List
<
Display
Record
>
list
=
threadLocal
.
get
();
if
(
null
!=
list
)
{
list
.
add
(
new
ExecuteSqlRecord
(
sql
,
parameters
,
costs
));
}
}
public
static
List
<
ExecuteSqlRecord
>
get
()
{
List
<
ExecuteSqlRecord
>
list
=
threadLocal
.
get
();
public
static
void
add
(
String
text
)
{
List
<
DisplayRecord
>
list
=
threadLocal
.
get
();
if
(
null
!=
list
)
{
list
.
add
(
new
ScripDebugRecord
(
text
));
}
}
public
static
List
<
DisplayRecord
>
get
()
{
List
<
DisplayRecord
>
list
=
threadLocal
.
get
();
if
(
null
==
list
)
{
return
Collections
.
emptyList
();
}
...
...
sqlrest-core/src/main/java/org/dromara/sqlrest/core/exec/module/DbVarModule.java
View file @
efc7844d
...
...
@@ -27,7 +27,7 @@ import org.dromara.sqlrest.common.enums.ProductTypeEnum;
import
org.dromara.sqlrest.common.service.VarModuleInterface
;
import
org.dromara.sqlrest.core.exec.annotation.Comment
;
import
org.dromara.sqlrest.core.exec.annotation.Module
;
import
org.dromara.sqlrest.core.exec.logger.
Sql
ExecuteLogger
;
import
org.dromara.sqlrest.core.exec.logger.
Debug
ExecuteLogger
;
import
org.dromara.sqlrest.core.util.ConvertUtils
;
import
org.dromara.sqlrest.core.util.PageSizeUtils
;
import
org.dromara.sqlrest.core.util.PageSqlUtils
;
...
...
@@ -102,7 +102,7 @@ public class DbVarModule implements VarModuleInterface {
try
{
return
build
(
jdbcTemplate
.
queryForList
(
sqlMeta
.
getSql
(),
sqlMeta
.
getParameter
().
toArray
()));
}
finally
{
Sql
ExecuteLogger
.
add
(
sqlMeta
.
getSql
(),
sqlMeta
.
getParameter
(),
System
.
currentTimeMillis
()
-
start
);
Debug
ExecuteLogger
.
add
(
sqlMeta
.
getSql
(),
sqlMeta
.
getParameter
(),
System
.
currentTimeMillis
()
-
start
);
}
}
...
...
@@ -118,7 +118,7 @@ public class DbVarModule implements VarModuleInterface {
try
{
return
jdbcTemplate
.
queryForObject
(
countSql
,
Integer
.
class
,
sqlMeta
.
getParameter
().
toArray
());
}
finally
{
Sql
ExecuteLogger
.
add
(
countSql
,
sqlMeta
.
getParameter
(),
System
.
currentTimeMillis
()
-
start
);
Debug
ExecuteLogger
.
add
(
countSql
,
sqlMeta
.
getParameter
(),
System
.
currentTimeMillis
()
-
start
);
}
}
...
...
@@ -145,7 +145,7 @@ public class DbVarModule implements VarModuleInterface {
},
sqlMeta
.
getParameter
().
toArray
()));
}
finally
{
Sql
ExecuteLogger
.
add
(
sqlMeta
.
getSql
(),
sqlMeta
.
getParameter
(),
System
.
currentTimeMillis
()
-
start
);
Debug
ExecuteLogger
.
add
(
sqlMeta
.
getSql
(),
sqlMeta
.
getParameter
(),
System
.
currentTimeMillis
()
-
start
);
}
}
...
...
@@ -166,7 +166,7 @@ public class DbVarModule implements VarModuleInterface {
try
{
return
build
(
jdbcTemplate
.
queryForList
(
pageSql
,
parameters
.
toArray
()));
}
finally
{
Sql
ExecuteLogger
.
add
(
pageSql
,
parameters
,
System
.
currentTimeMillis
()
-
start
);
Debug
ExecuteLogger
.
add
(
pageSql
,
parameters
,
System
.
currentTimeMillis
()
-
start
);
}
}
...
...
@@ -190,7 +190,7 @@ public class DbVarModule implements VarModuleInterface {
keyHolder
);
return
build
(
keyHolder
.
getKeys
());
}
finally
{
Sql
ExecuteLogger
.
add
(
sqlMeta
.
getSql
(),
parameters
,
System
.
currentTimeMillis
()
-
start
);
Debug
ExecuteLogger
.
add
(
sqlMeta
.
getSql
(),
parameters
,
System
.
currentTimeMillis
()
-
start
);
}
}
...
...
@@ -206,7 +206,7 @@ public class DbVarModule implements VarModuleInterface {
try
{
return
jdbcTemplate
.
update
(
sqlMeta
.
getSql
(),
parameters
.
toArray
());
}
finally
{
Sql
ExecuteLogger
.
add
(
sqlMeta
.
getSql
(),
parameters
,
System
.
currentTimeMillis
()
-
start
);
Debug
ExecuteLogger
.
add
(
sqlMeta
.
getSql
(),
parameters
,
System
.
currentTimeMillis
()
-
start
);
}
}
...
...
@@ -219,7 +219,7 @@ public class DbVarModule implements VarModuleInterface {
try
{
return
Arrays
.
stream
(
jdbcTemplate
.
batchUpdate
(
sqlList
.
toArray
(
new
String
[
0
]))).
sum
();
}
finally
{
Sql
ExecuteLogger
.
add
(
sqlList
.
stream
().
collect
(
Collectors
.
joining
(
";"
)),
Debug
ExecuteLogger
.
add
(
sqlList
.
stream
().
collect
(
Collectors
.
joining
(
";"
)),
Collections
.
emptyList
(),
System
.
currentTimeMillis
()
-
start
);
}
}
...
...
@@ -236,7 +236,7 @@ public class DbVarModule implements VarModuleInterface {
try
{
return
jdbcTemplate
.
update
(
sqlMeta
.
getSql
(),
parameters
.
toArray
());
}
finally
{
Sql
ExecuteLogger
.
add
(
sqlMeta
.
getSql
(),
parameters
,
System
.
currentTimeMillis
()
-
start
);
Debug
ExecuteLogger
.
add
(
sqlMeta
.
getSql
(),
parameters
,
System
.
currentTimeMillis
()
-
start
);
}
}
}
...
...
sqlrest-core/src/main/java/org/dromara/sqlrest/core/exec/module/HttpModule.java
0 → 100644
View file @
efc7844d
// Copyright tang. All rights reserved.
// https://gitee.com/inrgihc/sqlrest
//
// Use of this source code is governed by a BSD-style license
//
// Author: tang (inrgihc@126.com)
// Date : 2024/3/31
// Location: beijing , china
/////////////////////////////////////////////////////////////
package
org
.
dromara
.
sqlrest
.
core
.
exec
.
module
;
import
java.util.HashMap
;
import
java.util.Map
;
import
java.util.Objects
;
import
java.util.stream.Collectors
;
import
lombok.NoArgsConstructor
;
import
org.apache.commons.lang3.StringUtils
;
import
org.dromara.sqlrest.common.service.VarModuleInterface
;
import
org.dromara.sqlrest.core.exec.annotation.Comment
;
import
org.dromara.sqlrest.core.exec.annotation.Module
;
import
org.dromara.sqlrest.core.executor.AlarmHttpRequestFactory
;
import
org.springframework.http.HttpEntity
;
import
org.springframework.http.HttpHeaders
;
import
org.springframework.http.HttpMethod
;
import
org.springframework.http.MediaType
;
import
org.springframework.http.ResponseEntity
;
import
org.springframework.stereotype.Service
;
import
org.springframework.util.LinkedMultiValueMap
;
import
org.springframework.util.MultiValueMap
;
import
org.springframework.web.client.RestTemplate
;
@Service
@NoArgsConstructor
@Module
(
HttpModule
.
VAR_NAME
)
public
class
HttpModule
implements
VarModuleInterface
{
protected
static
final
String
VAR_NAME
=
"http"
;
protected
static
final
RestTemplate
template
=
new
RestTemplate
(
new
AlarmHttpRequestFactory
());
private
HttpHeaders
httpHeaders
=
new
HttpHeaders
();
private
Class
<?>
responseType
=
Object
.
class
;
private
MultiValueMap
<
String
,
Object
>
params
=
new
LinkedMultiValueMap
<>();
private
MultiValueMap
<
String
,
Object
>
data
=
new
LinkedMultiValueMap
<>();
private
Map
<
String
,
?>
variables
=
new
HashMap
<>();
private
String
url
;
private
HttpMethod
method
=
HttpMethod
.
GET
;
private
HttpEntity
<
Object
>
entity
=
null
;
private
Object
requestBody
;
public
HttpModule
(
String
url
)
{
this
.
url
=
url
;
}
@Override
public
String
getVarModuleName
()
{
return
VAR_NAME
;
}
@Comment
(
"创建连接"
)
public
HttpModule
connect
(
@Comment
(
"目标URL"
)
String
url
)
{
return
new
HttpModule
(
url
);
}
@Comment
(
"设置URL参数"
)
public
HttpModule
param
(
@Comment
(
"参数名"
)
String
key
,
@Comment
(
"参数值"
)
Object
...
values
)
{
if
(
values
!=
null
)
{
for
(
Object
value
:
values
)
{
this
.
params
.
add
(
key
,
value
);
}
}
return
this
;
}
@Comment
(
"批量设置URL参数"
)
public
HttpModule
param
(
@Comment
(
"参数值"
)
Map
<
String
,
Object
>
values
)
{
values
.
forEach
((
key
,
value
)
->
param
(
key
,
Objects
.
toString
(
value
,
""
)));
return
this
;
}
@Comment
(
"设置form参数"
)
public
HttpModule
data
(
@Comment
(
"参数名"
)
String
key
,
@Comment
(
"参数值"
)
Object
...
values
)
{
if
(
values
!=
null
)
{
for
(
Object
value
:
values
)
{
this
.
data
.
add
(
key
,
value
);
}
}
return
this
;
}
@Comment
(
"批量设置form参数"
)
public
HttpModule
data
(
@Comment
(
"参数值"
)
Map
<
String
,
Object
>
values
)
{
values
.
forEach
((
key
,
value
)
->
data
(
key
,
Objects
.
toString
(
value
,
""
)));
return
this
;
}
@Comment
(
"设置header"
)
public
HttpModule
header
(
@Comment
(
"header键"
)
String
key
,
@Comment
(
"header值"
)
String
value
)
{
httpHeaders
.
add
(
key
,
value
);
return
this
;
}
@Comment
(
"批量设置header"
)
public
HttpModule
header
(
@Comment
(
"header值"
)
Map
<
String
,
Object
>
values
)
{
values
.
entrySet
()
.
stream
()
.
filter
(
it
->
it
.
getValue
()
!=
null
)
.
forEach
(
entry
->
header
(
entry
.
getKey
(),
entry
.
getValue
().
toString
()));
return
this
;
}
@Comment
(
"设置请求方法,默认GET"
)
public
HttpModule
method
(
@Comment
(
"请求方法"
)
HttpMethod
method
)
{
this
.
method
=
method
;
return
this
;
}
@Comment
(
"设置`RequestBody`"
)
public
HttpModule
body
(
@Comment
(
"body值"
)
Object
requestBody
)
{
this
.
requestBody
=
requestBody
;
this
.
contentType
(
MediaType
.
APPLICATION_JSON
);
return
this
;
}
@Comment
(
"设置`ContentType`"
)
public
HttpModule
contentType
(
@Comment
(
"Content-Type值"
)
String
contentType
)
{
return
contentType
(
MediaType
.
parseMediaType
(
contentType
));
}
@Comment
(
"设置`ContentType`"
)
public
HttpModule
contentType
(
@Comment
(
"Content-Type值"
)
MediaType
mediaType
)
{
this
.
httpHeaders
.
setContentType
(
mediaType
);
return
this
;
}
@Comment
(
"设置返回值为`byte[]`"
)
public
HttpModule
expectBytes
()
{
this
.
responseType
=
byte
[].
class
;
return
this
;
}
@Comment
(
"设置返回值为`String`"
)
public
HttpModule
expectString
()
{
this
.
responseType
=
String
.
class
;
return
this
;
}
@Comment
(
"发送`GET`请求"
)
public
ResponseEntity
<?>
get
()
{
this
.
method
(
HttpMethod
.
GET
);
return
this
.
execute
();
}
@Comment
(
"发送`POST`请求"
)
public
ResponseEntity
<?>
post
()
{
this
.
method
(
HttpMethod
.
POST
);
return
this
.
execute
();
}
@Comment
(
"发送`PUT`请求"
)
public
ResponseEntity
<?>
put
()
{
this
.
method
(
HttpMethod
.
PUT
);
return
this
.
execute
();
}
@Comment
(
"发送`DELETE`请求"
)
public
ResponseEntity
<?>
delete
()
{
this
.
method
(
HttpMethod
.
DELETE
);
return
this
.
execute
();
}
@Comment
(
"执行请求"
)
public
ResponseEntity
<?>
execute
()
{
if
(!
this
.
params
.
isEmpty
())
{
String
queryString
=
this
.
params
.
entrySet
().
stream
()
.
map
(
it
->
it
.
getValue
().
stream
()
.
map
(
value
->
it
.
getKey
()
+
"="
+
value
)
.
collect
(
Collectors
.
joining
(
"&"
))
).
collect
(
Collectors
.
joining
(
"&"
));
if
(
StringUtils
.
isNotBlank
(
queryString
))
{
this
.
url
+=
(
this
.
url
.
contains
(
"?"
)
?
"&"
:
"?"
)
+
queryString
;
}
}
if
(!
this
.
data
.
isEmpty
())
{
this
.
entity
=
new
HttpEntity
<>(
this
.
data
,
this
.
httpHeaders
);
}
else
if
(
this
.
entity
==
null
&&
this
.
requestBody
!=
null
)
{
this
.
entity
=
new
HttpEntity
<>(
this
.
requestBody
,
this
.
httpHeaders
);
}
else
{
this
.
entity
=
new
HttpEntity
<>(
null
,
this
.
httpHeaders
);
}
return
template
.
exchange
(
url
,
this
.
method
,
entity
,
responseType
,
variables
);
}
}
\ No newline at end of file
sqlrest-core/src/main/java/org/dromara/sqlrest/core/exec/module/LogVarModule.java
0 → 100644
View file @
efc7844d
// Copyright tang. All rights reserved.
// https://gitee.com/inrgihc/sqlrest
//
// Use of this source code is governed by a BSD-style license
//
// Author: tang (inrgihc@126.com)
// Date : 2024/3/31
// Location: beijing , china
/////////////////////////////////////////////////////////////
package
org
.
dromara
.
sqlrest
.
core
.
exec
.
module
;
import
java.text.MessageFormat
;
import
lombok.NoArgsConstructor
;
import
org.dromara.sqlrest.common.service.VarModuleInterface
;
import
org.dromara.sqlrest.core.exec.annotation.Comment
;
import
org.dromara.sqlrest.core.exec.annotation.Module
;
import
org.dromara.sqlrest.core.exec.logger.DebugExecuteLogger
;
import
org.springframework.stereotype.Service
;
@Service
@NoArgsConstructor
@Module
(
LogVarModule
.
VAR_NAME
)
public
class
LogVarModule
implements
VarModuleInterface
{
protected
static
final
String
VAR_NAME
=
"log"
;
@Override
public
String
getVarModuleName
()
{
return
VAR_NAME
;
}
@Comment
(
"打印调试日志信息"
)
public
void
print
(
@Comment
(
"message"
)
String
message
,
Object
...
arguments
)
{
DebugExecuteLogger
.
add
(
MessageFormat
.
format
(
message
,
arguments
));
}
}
sqlrest-core/src/main/java/org/dromara/sqlrest/core/service/ApiAssignmentService.java
View file @
efc7844d
...
...
@@ -25,6 +25,7 @@ import org.dromara.sqlrest.common.enums.ParamLocationEnum;
import
org.dromara.sqlrest.common.enums.ParamTypeEnum
;
import
org.dromara.sqlrest.common.exception.CommonException
;
import
org.dromara.sqlrest.common.exception.ResponseErrorCode
;
import
org.dromara.sqlrest.common.service.DisplayRecord
;
import
org.dromara.sqlrest.core.driver.DriverLoadService
;
import
org.dromara.sqlrest.core.dto.ApiAssignmentBaseResponse
;
import
org.dromara.sqlrest.core.dto.ApiAssignmentDetailResponse
;
...
...
@@ -32,10 +33,9 @@ import org.dromara.sqlrest.core.dto.ApiAssignmentSaveRequest;
import
org.dromara.sqlrest.core.dto.ApiDebugExecuteRequest
;
import
org.dromara.sqlrest.core.dto.AssignmentSearchRequest
;
import
org.dromara.sqlrest.core.dto.DataTypeFormatMapValue
;
import
org.dromara.sqlrest.core.dto.ExecuteSqlRecord
;
import
org.dromara.sqlrest.core.dto.ScriptEditorCompletion
;
import
org.dromara.sqlrest.core.dto.SqlParamParseResponse
;
import
org.dromara.sqlrest.core.exec.logger.
Sql
ExecuteLogger
;
import
org.dromara.sqlrest.core.exec.logger.
Debug
ExecuteLogger
;
import
org.dromara.sqlrest.core.exec.annotation.Comment
;
import
org.dromara.sqlrest.core.exec.engine.ApiExecutorEngineFactory
;
import
org.dromara.sqlrest.core.exec.engine.impl.ScriptExecutorService
;
...
...
@@ -321,15 +321,15 @@ public class ApiAssignmentService {
ResultEntity
entity
;
try
{
Sql
ExecuteLogger
.
init
();
Debug
ExecuteLogger
.
init
();
HikariDataSource
dataSource
=
DataSourceUtils
.
getHikariDataSource
(
dataSourceEntity
,
driverPath
.
getAbsolutePath
());
List
<
Object
>
results
=
ApiExecutorEngineFactory
.
getExecutor
(
request
.
getEngine
(),
dataSource
,
dataSourceEntity
.
getType
(),
true
)
.
execute
(
scripts
,
params
,
request
.
getNamingStrategy
());
Object
answer
=
results
.
size
()
>
1
?
results
:
(
1
==
results
.
size
())
?
results
.
get
(
0
)
:
null
;
List
<
OutParam
>
types
=
JacksonUtils
.
parseFiledTypesAndFillNullAsString
(
results
);
String
logs
=
Optional
.
ofNullable
(
Sql
ExecuteLogger
.
get
())
.
orElseGet
(
ArrayList:
:
new
).
stream
().
map
(
ExecuteSql
Record:
:
getDisplayText
)
String
logs
=
Optional
.
ofNullable
(
Debug
ExecuteLogger
.
get
())
.
orElseGet
(
ArrayList:
:
new
).
stream
().
map
(
Display
Record:
:
getDisplayText
)
.
collect
(
Collectors
.
toList
()).
stream
().
collect
(
Collectors
.
joining
(
"\n\n"
));
Map
<
String
,
Object
>
respMap
=
new
HashMap
<>(
4
);
respMap
.
put
(
"answer"
,
answer
);
...
...
@@ -340,7 +340,7 @@ public class ApiAssignmentService {
log
.
warn
(
"Failed to debug for error:{}"
,
e
.
getMessage
(),
e
);
entity
=
ResultEntity
.
failed
(
ExceptionUtil
.
getMessage
(
e
));
}
finally
{
Sql
ExecuteLogger
.
clear
();
Debug
ExecuteLogger
.
clear
();
}
response
.
setStatus
(
HttpServletResponse
.
SC_OK
);
...
...
sqlrest-core/src/main/java/org/dromara/sqlrest/core/util/SqlJdbcUtils.java
View file @
efc7844d
...
...
@@ -25,7 +25,7 @@ import lombok.extern.slf4j.Slf4j;
import
org.dromara.sqlrest.common.enums.NamingStrategyEnum
;
import
org.dromara.sqlrest.common.enums.ProductTypeEnum
;
import
org.dromara.sqlrest.common.util.LambdaUtils
;
import
org.dromara.sqlrest.core.exec.logger.
Sql
ExecuteLogger
;
import
org.dromara.sqlrest.core.exec.logger.
Debug
ExecuteLogger
;
import
org.dromara.sqlrest.template.SqlMeta
;
@Slf4j
...
...
@@ -89,7 +89,7 @@ public class SqlJdbcUtils {
return
"("
+
updateCount
+
") rows affected"
;
}
}
finally
{
Sql
ExecuteLogger
.
add
(
sql
,
paramValues
,
System
.
currentTimeMillis
()
-
start
);
Debug
ExecuteLogger
.
add
(
sql
,
paramValues
,
System
.
currentTimeMillis
()
-
start
);
}
}
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment