Skip to content
项目
群组
代码片段
帮助
当前项目
正在载入...
登录 / 注册
切换导航面板
kt-keystone
项目
项目
详情
活动
周期分析
仓库
仓库
文件
提交
分支
标签
贡献者
图表
比较
统计图
议题
0
议题
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
CI / CD
CI / CD
流水线
作业
日程
统计图
Wiki
Wiki
代码片段
代码片段
成员
成员
折叠边栏
关闭边栏
活动
图像
聊天
创建新问题
作业
提交
问题看板
Open sidebar
Matrix
kt-keystone
Commits
7e61e683
提交
7e61e683
authored
1月 21, 2022
作者:
Matrix
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
fix(SQL执行器): 结构优化|BUG修复
- 优化了项目结构 - 修复了各类执行器的BUG - 完成了环境变量替换,递归SQL变量的测试
上级
826e8fa5
全部展开
隐藏空白字符变更
内嵌
并排
正在显示
22 个修改的文件
包含
100 行增加
和
71 行删除
+100
-71
pom.xml
kt-base/pom.xml
+7
-1
BaseBootApplication.java
kt-base/src/main/java/org/matrix/BaseBootApplication.java
+39
-1
IDataSourceServiceImpl.java
...g/matrix/actuators/datasource/IDataSourceServiceImpl.java
+5
-1
SqlExpActuator.java
...rc/main/java/org/matrix/actuators/sql/SqlExpActuator.java
+0
-0
SqlRegularObject.java
.../main/java/org/matrix/actuators/sql/SqlRegularObject.java
+1
-1
Action.java
kt-base/src/main/java/org/matrix/database/entity/Action.java
+0
-2
Connect.java
...ase/src/main/java/org/matrix/database/entity/Connect.java
+3
-7
DynamicVariable.java
...main/java/org/matrix/database/entity/DynamicVariable.java
+2
-4
Example.java
...ase/src/main/java/org/matrix/database/entity/Example.java
+0
-2
Move.java
kt-base/src/main/java/org/matrix/database/entity/Move.java
+0
-3
Project.java
...ase/src/main/java/org/matrix/database/entity/Project.java
+0
-3
TestCase.java
...se/src/main/java/org/matrix/database/entity/TestCase.java
+0
-3
ActionMapper.xml
kt-base/src/main/resources/ActionMapper.xml
+0
-5
ConnectMapper.xml
kt-base/src/main/resources/ConnectMapper.xml
+0
-5
DynamicVariableMapper.xml
kt-base/src/main/resources/DynamicVariableMapper.xml
+0
-5
ExampleMapper.xml
kt-base/src/main/resources/ExampleMapper.xml
+0
-5
MoveMapper.xml
kt-base/src/main/resources/MoveMapper.xml
+0
-5
ProjectMapper.xml
kt-base/src/main/resources/ProjectMapper.xml
+0
-5
TestCaseMapper.xml
kt-base/src/main/resources/TestCaseMapper.xml
+0
-5
application.properties
kt-base/src/main/resources/application.properties
+0
-6
application.yml
kt-base/src/main/resources/application.yml
+17
-0
SqlExpActuatorTest.java
...est/java/org/matrix/actuators/sql/SqlExpActuatorTest.java
+26
-2
没有找到文件。
kt-base/pom.xml
浏览文件 @
7e61e683
...
@@ -95,7 +95,6 @@
...
@@ -95,7 +95,6 @@
</dependency>
</dependency>
<!--swagger-->
<!--swagger-->
<dependency>
<dependency>
<groupId>
io.springfox
</groupId>
<groupId>
io.springfox
</groupId>
<artifactId>
springfox-swagger2
</artifactId>
<artifactId>
springfox-swagger2
</artifactId>
...
@@ -159,6 +158,12 @@
...
@@ -159,6 +158,12 @@
<version>
5.5.9
</version>
<version>
5.5.9
</version>
</dependency>
</dependency>
<dependency>
<groupId>
junit
</groupId>
<artifactId>
junit
</artifactId>
<scope>
test
</scope>
</dependency>
</dependencies>
</dependencies>
</project>
</project>
\ No newline at end of file
kt-base/src/main/java/org/matrix/BaseBootApplication.java
浏览文件 @
7e61e683
package
org
.
matrix
;
package
org
.
matrix
;
import
lombok.extern.slf4j.Slf4j
;
import
org.matrix.actuators.datasource.DataSourceDTO
;
import
org.matrix.actuators.datasource.IDataSourceService
;
import
org.mybatis.spring.annotation.MapperScan
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.beans.factory.annotation.Value
;
import
org.springframework.boot.CommandLineRunner
;
import
org.springframework.boot.SpringApplication
;
import
org.springframework.boot.SpringApplication
;
import
org.springframework.boot.autoconfigure.SpringBootApplication
;
import
org.springframework.boot.autoconfigure.SpringBootApplication
;
import
org.springframework.boot.context.properties.ConfigurationProperties
;
/**
/**
* Hello world!
* Hello world!
*
*
* @author matrix
* @author matrix
*/
*/
@Slf4j
@SpringBootApplication
@SpringBootApplication
public
class
BaseBootApplication
{
@MapperScan
(
"org.matrix.database.mapper"
)
public
class
BaseBootApplication
implements
CommandLineRunner
{
@Value
(
"${spring.datasource.dynamic.datasource.master.url}"
)
private
String
url
;
@Value
(
"${spring.datasource.dynamic.datasource.master.username}"
)
private
String
username
;
@Value
(
"${spring.datasource.dynamic.datasource.master.password}"
)
private
String
password
;
@Value
(
"${spring.datasource.dynamic.datasource.master.driverClassName}"
)
private
String
driverClassName
;
private
final
IDataSourceService
dataSourceService
;
public
BaseBootApplication
(
IDataSourceService
dataSourceService
)
{
this
.
dataSourceService
=
dataSourceService
;
}
public
static
void
main
(
String
[]
args
)
{
public
static
void
main
(
String
[]
args
)
{
SpringApplication
.
run
(
BaseBootApplication
.
class
,
args
);
SpringApplication
.
run
(
BaseBootApplication
.
class
,
args
);
}
}
/**
* Callback used to run the bean.
*
* @param args incoming main method arguments
* @throws Exception on error
*/
@Override
public
void
run
(
String
...
args
)
throws
Exception
{
log
.
info
(
"[初始化] 初始化数据源"
+
driverClassName
);
dataSourceService
.
add
(
new
DataSourceDTO
(
"初始数据源"
,
driverClassName
,
url
,
username
,
password
));
}
}
}
kt-base/src/main/java/org/matrix/actuators/datasource/IDataSourceServiceImpl.java
浏览文件 @
7e61e683
...
@@ -20,12 +20,16 @@ import java.util.Set;
...
@@ -20,12 +20,16 @@ import java.util.Set;
* Suffering is the most powerful teacher of life.
* Suffering is the most powerful teacher of life.
*/
*/
@Service
@Service
@RequiredArgsConstructor
(
onConstructor
=
@__
(
@Lazy
))
public
class
IDataSourceServiceImpl
implements
IDataSourceService
{
public
class
IDataSourceServiceImpl
implements
IDataSourceService
{
private
final
DataSource
dataSource
;
private
final
DataSource
dataSource
;
private
final
DefaultDataSourceCreator
dataSourceCreator
;
private
final
DefaultDataSourceCreator
dataSourceCreator
;
public
IDataSourceServiceImpl
(
DataSource
dataSource
,
DefaultDataSourceCreator
dataSourceCreator
)
{
this
.
dataSource
=
dataSource
;
this
.
dataSourceCreator
=
dataSourceCreator
;
}
/**
/**
* 将当前使用的数据替换为参数提供的数据源,如果还没有,则会添加,如果已经有了,则不会添加
* 将当前使用的数据替换为参数提供的数据源,如果还没有,则会添加,如果已经有了,则不会添加
*
*
...
...
kt-base/src/main/java/org/matrix/actuators/sql/SqlExpActuator.java
浏览文件 @
7e61e683
差异被折叠。
点击展开。
kt-base/src/main/java/org/matrix/actuators/sql/SqlRegObject.java
→
kt-base/src/main/java/org/matrix/actuators/sql/SqlReg
ular
Object.java
浏览文件 @
7e61e683
...
@@ -15,7 +15,7 @@ import lombok.NoArgsConstructor;
...
@@ -15,7 +15,7 @@ import lombok.NoArgsConstructor;
@Data
@Data
@NoArgsConstructor
@NoArgsConstructor
@AllArgsConstructor
@AllArgsConstructor
public
class
SqlRegObject
{
public
class
SqlReg
ular
Object
{
/**
/**
* 动态变量名
* 动态变量名
...
...
kt-base/src/main/java/org/matrix/database/entity/Action.java
浏览文件 @
7e61e683
package
org
.
matrix
.
database
.
entity
;
package
org
.
matrix
.
database
.
entity
;
import
com.baomidou.mybatisplus.annotation.IdType
;
import
com.baomidou.mybatisplus.annotation.TableId
;
import
io.swagger.annotations.ApiModel
;
import
io.swagger.annotations.ApiModel
;
import
io.swagger.annotations.ApiModelProperty
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.AllArgsConstructor
;
import
lombok.AllArgsConstructor
;
...
...
kt-base/src/main/java/org/matrix/database/entity/Connect.java
浏览文件 @
7e61e683
package
org
.
matrix
.
database
.
entity
;
package
org
.
matrix
.
database
.
entity
;
import
com.baomidou.mybatisplus.annotation.IdType
;
import
com.baomidou.mybatisplus.annotation.TableId
;
import
io.swagger.annotations.ApiModel
;
import
io.swagger.annotations.ApiModel
;
import
io.swagger.annotations.ApiModelProperty
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.AllArgsConstructor
;
import
lombok.*
;
import
lombok.Data
;
import
lombok.EqualsAndHashCode
;
import
lombok.NoArgsConstructor
;
import
org.matrix.actuators.datasource.DataSourceDTO
;
import
org.matrix.actuators.datasource.DataSourceDTO
;
/**
/**
...
@@ -19,6 +14,7 @@ import org.matrix.actuators.datasource.DataSourceDTO;
...
@@ -19,6 +14,7 @@ import org.matrix.actuators.datasource.DataSourceDTO;
* @since 2022-01-15
* @since 2022-01-15
*/
*/
@Data
@Data
@Builder
@NoArgsConstructor
@NoArgsConstructor
@AllArgsConstructor
@AllArgsConstructor
@EqualsAndHashCode
(
callSuper
=
true
)
@EqualsAndHashCode
(
callSuper
=
true
)
...
@@ -46,7 +42,7 @@ public class Connect extends BaseEntity {
...
@@ -46,7 +42,7 @@ public class Connect extends BaseEntity {
* @return {@link DataSourceDTO}
* @return {@link DataSourceDTO}
*/
*/
public
DataSourceDTO
toDataSourceDTO
()
{
public
DataSourceDTO
toDataSourceDTO
()
{
return
new
DataSourceDTO
(
"name"
,
driver
,
url
,
username
,
password
);
return
new
DataSourceDTO
(
name
,
driver
,
url
,
username
,
password
);
}
}
...
...
kt-base/src/main/java/org/matrix/database/entity/DynamicVariable.java
浏览文件 @
7e61e683
...
@@ -5,10 +5,7 @@ import com.baomidou.mybatisplus.annotation.TableField;
...
@@ -5,10 +5,7 @@ import com.baomidou.mybatisplus.annotation.TableField;
import
com.baomidou.mybatisplus.annotation.TableName
;
import
com.baomidou.mybatisplus.annotation.TableName
;
import
io.swagger.annotations.ApiModel
;
import
io.swagger.annotations.ApiModel
;
import
io.swagger.annotations.ApiModelProperty
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.AllArgsConstructor
;
import
lombok.*
;
import
lombok.Data
;
import
lombok.EqualsAndHashCode
;
import
lombok.NoArgsConstructor
;
import
org.matrix.actuators.sql.SqlExpDetail
;
import
org.matrix.actuators.sql.SqlExpDetail
;
import
org.matrix.enums.DynamicVarType
;
import
org.matrix.enums.DynamicVarType
;
import
org.matrix.exception.GlobalException
;
import
org.matrix.exception.GlobalException
;
...
@@ -22,6 +19,7 @@ import org.matrix.exception.GlobalException;
...
@@ -22,6 +19,7 @@ import org.matrix.exception.GlobalException;
* @since 2022-01-15
* @since 2022-01-15
*/
*/
@Data
@Data
@Builder
@NoArgsConstructor
@NoArgsConstructor
@AllArgsConstructor
@AllArgsConstructor
@EqualsAndHashCode
(
callSuper
=
true
)
@EqualsAndHashCode
(
callSuper
=
true
)
...
...
kt-base/src/main/java/org/matrix/database/entity/Example.java
浏览文件 @
7e61e683
package
org
.
matrix
.
database
.
entity
;
package
org
.
matrix
.
database
.
entity
;
import
com.baomidou.mybatisplus.annotation.IdType
;
import
com.baomidou.mybatisplus.annotation.TableField
;
import
com.baomidou.mybatisplus.annotation.TableField
;
import
com.baomidou.mybatisplus.annotation.TableId
;
import
com.baomidou.mybatisplus.annotation.TableName
;
import
com.baomidou.mybatisplus.annotation.TableName
;
import
com.baomidou.mybatisplus.extension.handlers.FastjsonTypeHandler
;
import
com.baomidou.mybatisplus.extension.handlers.FastjsonTypeHandler
;
import
io.swagger.annotations.ApiModel
;
import
io.swagger.annotations.ApiModel
;
...
...
kt-base/src/main/java/org/matrix/database/entity/Move.java
浏览文件 @
7e61e683
package
org
.
matrix
.
database
.
entity
;
package
org
.
matrix
.
database
.
entity
;
import
com.baomidou.mybatisplus.annotation.IdType
;
import
com.baomidou.mybatisplus.annotation.TableId
;
import
org.matrix.database.entity.BaseEntity
;
import
io.swagger.annotations.ApiModel
;
import
io.swagger.annotations.ApiModel
;
import
io.swagger.annotations.ApiModelProperty
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.*
;
import
lombok.*
;
...
...
kt-base/src/main/java/org/matrix/database/entity/Project.java
浏览文件 @
7e61e683
package
org
.
matrix
.
database
.
entity
;
package
org
.
matrix
.
database
.
entity
;
import
com.baomidou.mybatisplus.annotation.IdType
;
import
com.baomidou.mybatisplus.annotation.TableId
;
import
org.matrix.database.entity.BaseEntity
;
import
io.swagger.annotations.ApiModel
;
import
io.swagger.annotations.ApiModel
;
import
io.swagger.annotations.ApiModelProperty
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.*
;
import
lombok.*
;
...
...
kt-base/src/main/java/org/matrix/database/entity/TestCase.java
浏览文件 @
7e61e683
package
org
.
matrix
.
database
.
entity
;
package
org
.
matrix
.
database
.
entity
;
import
com.baomidou.mybatisplus.annotation.IdType
;
import
com.baomidou.mybatisplus.annotation.TableId
;
import
com.baomidou.mybatisplus.annotation.TableName
;
import
com.baomidou.mybatisplus.annotation.TableName
;
import
org.matrix.database.entity.BaseEntity
;
import
io.swagger.annotations.ApiModel
;
import
io.swagger.annotations.ApiModel
;
import
io.swagger.annotations.ApiModelProperty
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.*
;
import
lombok.*
;
...
...
kt-base/src/main/resources/ActionMapper.xml
deleted
100644 → 0
浏览文件 @
826e8fa5
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper
namespace=
"org.matrix.database.mapper.ActionMapper"
>
</mapper>
kt-base/src/main/resources/ConnectMapper.xml
deleted
100644 → 0
浏览文件 @
826e8fa5
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper
namespace=
"org.matrix.database.mapper.ConnectMapper"
>
</mapper>
kt-base/src/main/resources/DynamicVariableMapper.xml
deleted
100644 → 0
浏览文件 @
826e8fa5
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper
namespace=
"org.matrix.database.mapper.DynamicVariableMapper"
>
</mapper>
kt-base/src/main/resources/ExampleMapper.xml
deleted
100644 → 0
浏览文件 @
826e8fa5
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper
namespace=
"org.matrix.database.mapper.ExampleMapper"
>
</mapper>
kt-base/src/main/resources/MoveMapper.xml
deleted
100644 → 0
浏览文件 @
826e8fa5
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper
namespace=
"org.matrix.database.mapper.MoveMapper"
>
</mapper>
kt-base/src/main/resources/ProjectMapper.xml
deleted
100644 → 0
浏览文件 @
826e8fa5
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper
namespace=
"org.matrix.database.mapper.ProjectMapper"
>
</mapper>
kt-base/src/main/resources/TestCaseMapper.xml
deleted
100644 → 0
浏览文件 @
826e8fa5
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper
namespace=
"org.matrix.database.mapper.TestCaseMapper"
>
</mapper>
kt-base/src/main/resources/application.properties
deleted
100644 → 0
浏览文件 @
826e8fa5
# config mysql database
spring.datasource.driver-class-name
=
com.mysql.cj.jdbc.Driver
spring.datasource.url
=
jdbc:mysql://localhost:3306/test?useUnicode=true&characterEncoding=utf-8&useSSL=false
spring.datasource.username
=
root
spring.datasource.password
=
ldf3291369
kt-base/src/main/resources/application.yml
0 → 100644
浏览文件 @
7e61e683
spring
:
application
:
name
:
keyStone
datasource
:
dynamic
:
primary
:
master
#设置默认的数据源或者数据源组,默认值即为master
strict
:
true
#严格匹配数据源,默认false. true未匹配到指定数据源时抛异常,false使用默认数据源
datasource
:
master
:
#增加默认数据源
driverClassName
:
com.mysql.cj.jdbc.Driver
url
:
jdbc:mysql://localhost:3306/test?useUnicode=true&characterEncoding=utf-8&useSSL=false
username
:
root
password
:
ldf3291369
mybatis-plus
:
type-enums-package
:
org.matrix.enums
\ No newline at end of file
kt-base/src/test/java/org/matrix/actuators/sql/SqlExpActuatorTest.java
浏览文件 @
7e61e683
package
org
.
matrix
.
actuators
.
sql
;
package
org
.
matrix
.
actuators
.
sql
;
import
com.alibaba.fastjson.JSON
;
import
org.junit.Before
;
import
org.junit.jupiter.api.Test
;
import
org.junit.jupiter.api.Test
;
import
org.junit.runner.RunWith
;
import
static
org
.
junit
.
jupiter
.
api
.
Assertions
.*;
import
org.matrix.database.entity.Connect
;
import
org.matrix.database.entity.DynamicVariable
;
import
org.matrix.database.service.IConnectService
;
import
org.matrix.database.service.IDynamicVariableService
;
import
org.matrix.enums.DynamicVarType
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.boot.test.context.SpringBootTest
;
import
org.springframework.test.context.junit4.SpringRunner
;
/**
/**
* SqlExpActuatorTest.
* SqlExpActuatorTest.
...
@@ -11,10 +20,25 @@ import static org.junit.jupiter.api.Assertions.*;
...
@@ -11,10 +20,25 @@ import static org.junit.jupiter.api.Assertions.*;
* @since 2022/1/20 at 3:08 PM
* @since 2022/1/20 at 3:08 PM
* Suffering is the most powerful teacher of life.
* Suffering is the most powerful teacher of life.
*/
*/
@RunWith
(
SpringRunner
.
class
)
@SpringBootTest
class
SqlExpActuatorTest
{
class
SqlExpActuatorTest
{
@Autowired
private
SqlExpActuator
sqlExpActuator
;
@Autowired
private
IDynamicVariableService
variableService
;
@Autowired
private
IConnectService
connectService
;
@Test
@Test
void
parseVarByName
()
{
void
parseVarByName
()
{
String
reuslt
=
sqlExpActuator
.
parseVarByName
(
"${componentName}[2]"
,
1L
,
1L
);
System
.
out
.
println
(
reuslt
);
}
}
@Test
@Test
...
...
编写
预览
Markdown
格式
0%
重试
或
添加新文件
添加附件
取消
您添加了
0
人
到此讨论。请谨慎行事。
请先完成此评论的编辑!
取消
请
注册
或者
登录
后发表评论