Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
A
amos-tool
Project
Project
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
张帅
amos-tool
Commits
859185cf
Commit
859185cf
authored
Jul 05, 2023
by
陈祥烨
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
AES加密算法
parent
46450f7b
Hide whitespace changes
Inline
Side-by-side
Showing
11 changed files
with
200 additions
and
129 deletions
+200
-129
DataBaseResource.java
...om/yeejoin/amos/api/tool/controller/DataBaseResource.java
+22
-25
RelationResource.java
...om/yeejoin/amos/api/tool/controller/RelationResource.java
+2
-10
Encrypted.java
.../com/yeejoin/amos/api/tool/face/annotation/Encrypted.java
+18
-0
SensitiveData.java
.../yeejoin/amos/api/tool/face/annotation/SensitiveData.java
+19
-0
DataBaseModel.java
...a/com/yeejoin/amos/api/tool/face/model/DataBaseModel.java
+17
-5
DataBaseMapper.java
...om/yeejoin/amos/api/tool/face/orm/dao/DataBaseMapper.java
+5
-1
DataBase.java
...a/com/yeejoin/amos/api/tool/face/orm/entity/DataBase.java
+5
-0
ConnectService.java
...om/yeejoin/amos/api/tool/face/service/ConnectService.java
+0
-70
DataBaseService.java
...m/yeejoin/amos/api/tool/face/service/DataBaseService.java
+73
-10
RelationService.java
...m/yeejoin/amos/api/tool/face/service/RelationService.java
+0
-8
AESUtils.java
...in/java/com/yeejoin/amos/api/tool/face/util/AESUtils.java
+39
-0
No files found.
src/main/java/com/yeejoin/amos/api/tool/controller/DataBaseResource.java
View file @
859185cf
...
...
@@ -2,7 +2,6 @@ package com.yeejoin.amos.api.tool.controller;
import
com.baomidou.mybatisplus.extension.plugins.pagination.Page
;
import
com.yeejoin.amos.api.tool.face.model.DataBaseModel
;
import
com.yeejoin.amos.api.tool.face.service.ConnectService
;
import
com.yeejoin.amos.api.tool.face.service.DataBaseService
;
import
io.swagger.annotations.Api
;
import
io.swagger.annotations.ApiOperation
;
...
...
@@ -29,20 +28,19 @@ public class DataBaseResource {
@Autowired
DataBaseService
dataBaseService
;
@Autowired
ConnectService
connectService
;
/**
* 新增
*/
@TycloudOperation
(
ApiLevel
=
UserType
.
AGENCY
,
needAuth
=
false
)
@PostMapping
(
value
=
"/save"
)
@ApiOperation
(
httpMethod
=
"POST"
,
value
=
"新增"
,
notes
=
"新增"
)
public
ResponseModel
<
DataBaseModel
>
save
(
@RequestBody
DataBaseModel
dataBaseModel
)
throws
SQLException
,
ClassNotFoundException
{
if
(
connectService
.
connectNewDatabase
(
dataBaseModel
)
!=
null
)
return
ResponseHelper
.
buildResponse
(
dataBaseService
.
createWithModel
(
dataBaseModel
));
else
return
ResponseHelper
.
buildResponse
(
new
DataBaseModel
());
@TycloudOperation
(
ApiLevel
=
UserType
.
AGENCY
,
needAuth
=
false
)
@PostMapping
(
value
=
"/refresh"
)
@ApiOperation
(
httpMethod
=
"POST"
,
value
=
"数据库初始化"
,
notes
=
"数据库初始化"
)
public
ResponseModel
<
List
<
DataBaseModel
>>
save
(
@RequestBody
DataBaseModel
dataBaseModel
)
throws
Exception
{
List
<
DataBaseModel
>
dataBaseModels
=
dataBaseService
.
refreshDataBase
(
dataBaseModel
);
if
(
dataBaseModels
==
null
)
return
null
;
else
return
ResponseHelper
.
buildResponse
(
dataBaseModels
);
}
/**
...
...
@@ -58,36 +56,35 @@ public class DataBaseResource {
Long
[]
seq
=
(
Long
[])
ConvertUtils
.
convert
(
Nbr
,
Long
.
class
);
Boolean
Nbr2
[]
=
new
Boolean
[
Nbr
.
length
];
for
(
int
i
=
0
;
i
<
Nbr
.
length
;
i
++)
{
for
(
int
i
=
0
;
i
<
Nbr
.
length
;
i
++)
{
Nbr2
[
i
]
=
dataBaseService
.
removeById
(
seq
[
i
]);
}
return
ResponseHelper
.
buildResponse
(
Nbr2
);
return
ResponseHelper
.
buildResponse
(
Nbr2
);
}
/**
* 列表分页查询
*@param current 当前页
*@param current 每页大小
*
* @param current 当前页
* @param current 每页大小
*/
@TycloudOperation
(
ApiLevel
=
UserType
.
AGENCY
,
needAuth
=
false
)
@TycloudOperation
(
ApiLevel
=
UserType
.
AGENCY
,
needAuth
=
false
)
@GetMapping
(
value
=
"/page"
)
@ApiOperation
(
httpMethod
=
"GET"
,
value
=
"分页查询"
,
notes
=
"分页查询"
)
public
ResponseModel
<
Page
<
DataBaseModel
>>
queryForPage
(
@RequestParam
(
value
=
"current"
)
int
current
,
@RequestParam
(
value
=
"size"
)
int
size
)
{
Page
<
DataBaseModel
>
page
=
new
Page
<
DataBaseModel
>();
@ApiOperation
(
httpMethod
=
"GET"
,
value
=
"分页查询"
,
notes
=
"分页查询"
)
public
ResponseModel
<
Page
<
DataBaseModel
>>
queryForPage
(
@RequestParam
(
value
=
"current"
)
int
current
,
@RequestParam
(
value
=
"size"
)
int
size
)
{
Page
<
DataBaseModel
>
page
=
new
Page
<
DataBaseModel
>();
page
.
setCurrent
(
current
);
page
.
setSize
(
size
);
return
ResponseHelper
.
buildResponse
(
dataBaseService
.
queryForDataBasePage
(
page
));
}
/**
*列表全部数据查询
*
列表全部数据查询
*/
@TycloudOperation
(
ApiLevel
=
UserType
.
AGENCY
,
needAuth
=
false
)
@ApiOperation
(
httpMethod
=
"GET"
,
value
=
"列表全部数据查询"
,
notes
=
"列表全部数据查询"
)
@TycloudOperation
(
ApiLevel
=
UserType
.
AGENCY
,
needAuth
=
false
)
@ApiOperation
(
httpMethod
=
"GET"
,
value
=
"列表全部数据查询"
,
notes
=
"列表全部数据查询"
)
@GetMapping
(
value
=
"/list"
)
public
ResponseModel
<
List
<
DataBaseModel
>>
selectForList
()
{
public
ResponseModel
<
List
<
DataBaseModel
>>
selectForList
()
{
return
ResponseHelper
.
buildResponse
(
dataBaseService
.
queryForDataBaseList
());
}
}
src/main/java/com/yeejoin/amos/api/tool/controller/RelationResource.java
View file @
859185cf
package
com
.
yeejoin
.
amos
.
api
.
tool
.
controller
;
import
com.yeejoin.amos.api.tool.face.model.RelationTreeModel
;
import
com.yeejoin.amos.api.tool.face.service.AgencyTreeService
;
import
com.yeejoin.amos.api.tool.face.service.ConnectService
;
import
com.yeejoin.amos.api.tool.face.service.DataBaseService
;
import
com.yeejoin.amos.api.tool.face.service.RelationService
;
import
io.swagger.annotations.Api
;
...
...
@@ -10,16 +8,12 @@ import io.swagger.annotations.ApiOperation;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.web.bind.annotation.*
;
import
org.typroject.tyboot.core.foundation.enumeration.UserType
;
import
org.typroject.tyboot.core.foundation.utils.StringUtil
;
import
org.typroject.tyboot.core.restful.doc.TycloudOperation
;
import
org.typroject.tyboot.core.restful.utils.ResponseHelper
;
import
org.typroject.tyboot.core.restful.utils.ResponseModel
;
import
java.sql.Connection
;
import
java.sql.SQLException
;
import
java.util.ArrayList
;
import
java.util.Arrays
;
import
java.util.List
;
@CrossOrigin
@RestController
...
...
@@ -29,8 +23,6 @@ public class RelationResource {
@Autowired
RelationService
relationService
;
@Autowired
ConnectService
connectService
;
@Autowired
DataBaseService
dataBaseService
;
@Autowired
AgencyTreeService
agencyTreeService
;
...
...
@@ -38,10 +30,10 @@ public class RelationResource {
@TycloudOperation
(
ApiLevel
=
UserType
.
AGENCY
,
needAuth
=
false
)
@DeleteMapping
(
value
=
"/relation/{agencyCodeId}/{sequenceNbrs}"
)
@ApiOperation
(
httpMethod
=
"DELETE"
,
value
=
"机构删除"
,
notes
=
"机构删除"
)
public
ResponseModel
<
String
>
deleteDataBase
(
@PathVariable
Long
agencyCodeId
,
@PathVariable
String
sequenceNbrs
)
throws
ClassNotFoundException
,
SQL
Exception
{
public
ResponseModel
<
String
>
deleteDataBase
(
@PathVariable
Long
agencyCodeId
,
@PathVariable
String
sequenceNbrs
)
throws
Exception
{
Long
[]
seqs
=
dataBaseService
.
stringToLong
(
sequenceNbrs
);
for
(
Long
seq
:
seqs
)
{
Connection
connection
=
connect
Service
.
connectNewDatabase
(
dataBaseService
.
queryBySeq
(
seq
));
Connection
connection
=
dataBase
Service
.
connectNewDatabase
(
dataBaseService
.
queryBySeq
(
seq
));
relationService
.
deleteDataBase
(
connection
,
agencyTreeService
.
queryForAgencyCodeById
(
agencyCodeId
));
}
return
ResponseHelper
.
buildResponse
(
"The data has been deleted !"
);
...
...
src/main/java/com/yeejoin/amos/api/tool/face/annotation/Encrypted.java
0 → 100644
View file @
859185cf
package
com
.
yeejoin
.
amos
.
api
.
tool
.
face
.
annotation
;
import
java.lang.annotation.ElementType
;
import
java.lang.annotation.Retention
;
import
java.lang.annotation.RetentionPolicy
;
import
java.lang.annotation.Target
;
/**
* 需要加解密的字段用这个注解
* @author lima
* @date 2023/3/3 17:29
*/
@Retention
(
RetentionPolicy
.
RUNTIME
)
@Target
(
ElementType
.
FIELD
)
public
@interface
Encrypted
{
}
\ No newline at end of file
src/main/java/com/yeejoin/amos/api/tool/face/annotation/SensitiveData.java
0 → 100644
View file @
859185cf
package
com
.
yeejoin
.
amos
.
api
.
tool
.
face
.
annotation
;
import
java.lang.annotation.ElementType
;
import
java.lang.annotation.Inherited
;
import
java.lang.annotation.Retention
;
import
java.lang.annotation.RetentionPolicy
;
import
java.lang.annotation.Target
;
/**
* 带有敏感字段的类需要加这个注解
* @author lima
* @date 2023/3/6 16:18
*/
@Inherited
@Target
({
ElementType
.
TYPE
})
@Retention
(
RetentionPolicy
.
RUNTIME
)
public
@interface
SensitiveData
{
}
\ No newline at end of file
src/main/java/com/yeejoin/amos/api/tool/face/model/DataBaseModel.java
View file @
859185cf
...
...
@@ -3,20 +3,21 @@ package com.yeejoin.amos.api.tool.face.model;
import
io.swagger.annotations.ApiModel
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.Data
;
import
lombok.EqualsAndHashCode
;
import
lombok.NoArgsConstructor
;
import
org.typroject.tyboot.core.rdbms.model.BaseModel
;
/**
* @author r
*/
@EqualsAndHashCode
(
callSuper
=
true
)
@Data
@NoArgsConstructor
@ApiModel
(
value
=
"DataBaseModel"
,
description
=
""
)
public
class
DataBaseModel
extends
BaseModel
{
private
static
final
long
serialVersionUID
=
1L
;
@ApiModelProperty
(
value
=
"数据名称"
)
private
String
dataName
;
private
String
dataName
=
""
;
@ApiModelProperty
(
value
=
"主机IP"
)
private
String
ip
;
...
...
@@ -25,11 +26,22 @@ public class DataBaseModel extends BaseModel {
private
String
port
;
@ApiModelProperty
(
value
=
"数据库名"
)
private
String
dbName
;
private
String
dbName
=
""
;
@ApiModelProperty
(
value
=
"用户名"
)
private
String
userName
;
@ApiModelProperty
(
value
=
"密码"
)
private
String
passWord
;
public
DataBaseModel
(
String
dataName
,
String
ip
,
String
port
,
String
dbName
,
String
userName
,
String
passWord
)
{
this
.
dataName
=
dataName
;
this
.
ip
=
ip
;
this
.
port
=
port
;
this
.
dbName
=
dbName
;
this
.
userName
=
userName
;
this
.
passWord
=
passWord
;
}
}
src/main/java/com/yeejoin/amos/api/tool/face/orm/dao/DataBaseMapper.java
View file @
859185cf
...
...
@@ -2,12 +2,16 @@ package com.yeejoin.amos.api.tool.face.orm.dao;
import
com.baomidou.mybatisplus.core.mapper.BaseMapper
;
import
com.yeejoin.amos.api.tool.face.orm.entity.DataBase
;
import
org.mapstruct.Mapper
;
import
org.springframework.stereotype.Repository
;
/**
* Mapper 接口
*
* @author r
*/
public
interface
DataBaseMapper
extends
BaseMapper
<
DataBase
>
{
@Mapper
@Repository
public
interface
DataBaseMapper
extends
BaseMapper
<
DataBase
>
{
}
src/main/java/com/yeejoin/amos/api/tool/face/orm/entity/DataBase.java
View file @
859185cf
...
...
@@ -2,6 +2,8 @@ package com.yeejoin.amos.api.tool.face.orm.entity;
import
com.baomidou.mybatisplus.annotation.TableField
;
import
com.baomidou.mybatisplus.annotation.TableName
;
import
lombok.AllArgsConstructor
;
import
lombok.NoArgsConstructor
;
import
org.typroject.tyboot.core.rdbms.orm.entity.BaseEntity
;
import
lombok.Data
;
import
lombok.EqualsAndHashCode
;
...
...
@@ -10,6 +12,8 @@ import lombok.experimental.Accessors;
* @author r
*/
@Data
@NoArgsConstructor
@AllArgsConstructor
@EqualsAndHashCode
(
callSuper
=
true
)
@Accessors
(
chain
=
true
)
@TableName
(
"database_join_record"
)
...
...
@@ -50,4 +54,5 @@ public class DataBase extends BaseEntity {
*/
@TableField
(
"passWord"
)
private
String
passWord
;
}
src/main/java/com/yeejoin/amos/api/tool/face/service/ConnectService.java
deleted
100644 → 0
View file @
46450f7b
package
com
.
yeejoin
.
amos
.
api
.
tool
.
face
.
service
;
import
com.yeejoin.amos.api.tool.face.model.DataBaseModel
;
import
com.yeejoin.amos.api.tool.face.orm.dao.DataBaseMapper
;
import
com.yeejoin.amos.api.tool.face.orm.entity.DataBase
;
import
org.springframework.stereotype.Service
;
import
org.typroject.tyboot.core.rdbms.service.BaseService
;
import
java.sql.*
;
import
java.util.ArrayList
;
import
java.util.List
;
@Service
public
class
ConnectService
extends
BaseService
<
DataBaseModel
,
DataBase
,
DataBaseMapper
>
{
public
List
<
Connection
>
connectAllDatabases
()
{
List
<
Connection
>
connections
=
new
ArrayList
<>();
// JDBC连接
Connection
connection
=
null
;
// Statement statement = null;
// ResultSet resultSet = null;
try
{
// 加载数据库驱动
Class
.
forName
(
"com.mysql.cj.jdbc.Driver"
);
// 建立数据库连接
// connection = DriverManager.getConnection(url, username, password);
// 创建Statement对象
// statement = connection.createStatement();
// 执行查询语句
// String sql = "SELECT * FROM database_join_record";
// resultSet = statement.executeQuery(sql);
List
<
DataBaseModel
>
dataBaseModels
=
this
.
queryForList
(
""
,
false
);
// 处理查询结果
for
(
DataBaseModel
dataBaseModel
:
dataBaseModels
){
// 获取结果集中的数据
// String ip = dataBaseModel.getIp();
// String port = resultSet.getString("port");
// String dbName = resultSet.getString("dbName");
// String userName = resultSet.getString("userName");
// String passWord = resultSet.getString("passWord");
// 连接数据库
String
dbUrl
=
"jdbc:mysql://"
+
dataBaseModel
.
getIp
()
+
":"
+
dataBaseModel
.
getPort
()
+
"/"
+
dataBaseModel
.
getDbName
();
Connection
dbConnection
=
DriverManager
.
getConnection
(
dbUrl
,
dataBaseModel
.
getUserName
(),
dataBaseModel
.
getPassWord
());
// 将连接添加到列表中
connections
.
add
(
dbConnection
);
}
}
catch
(
ClassNotFoundException
|
SQLException
e
)
{
e
.
printStackTrace
();
}
return
connections
;
}
public
Connection
connectNewDatabase
(
DataBaseModel
dataBaseModel
)
throws
SQLException
,
ClassNotFoundException
{
// 加载数据库驱动
Class
.
forName
(
"com.mysql.cj.jdbc.Driver"
);
// 连接新增的数据库
String
dbUrl
=
"jdbc:mysql://"
+
dataBaseModel
.
getIp
()
+
":"
+
dataBaseModel
.
getPort
()
+
"/"
+
dataBaseModel
.
getDbName
();
return
DriverManager
.
getConnection
(
dbUrl
,
dataBaseModel
.
getUserName
(),
dataBaseModel
.
getPassWord
());
}
}
src/main/java/com/yeejoin/amos/api/tool/face/service/DataBaseService.java
View file @
859185cf
package
com
.
yeejoin
.
amos
.
api
.
tool
.
face
.
service
;
import
com.baomidou.mybatisplus.core.conditions.query.QueryWrapper
;
import
com.baomidou.mybatisplus.extension.plugins.pagination.Page
;
import
com.yeejoin.amos.api.tool.face.model.DataBaseModel
;
import
com.yeejoin.amos.api.tool.face.orm.dao.DataBaseMapper
;
import
com.yeejoin.amos.api.tool.face.orm.entity.DataBase
;
import
com.yeejoin.amos.api.tool.face.util.AESUtils
;
import
org.apache.commons.beanutils.ConvertUtils
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.stereotype.Service
;
import
org.typroject.tyboot.core.rdbms.service.BaseService
;
import
java.sql.*
;
import
java.util.ArrayList
;
import
java.util.Collection
;
import
java.util.List
;
/**
* 服务实现类
*
* @author r
*/
@Service
public
class
DataBaseService
extends
BaseService
<
DataBaseModel
,
DataBase
,
DataBaseMapper
>
{
public
class
DataBaseService
extends
BaseService
<
DataBaseModel
,
DataBase
,
DataBaseMapper
>
{
@Autowired
private
DataBaseMapper
dataBaseMapper
;
// public void deleteAll(){
// dataBaseMapper.deleteAll();
// }
/**
* 分页查询
*/
public
Page
<
DataBaseModel
>
queryForDataBasePage
(
Page
<
DataBaseModel
>
page
)
{
public
Page
<
DataBaseModel
>
queryForDataBasePage
(
Page
<
DataBaseModel
>
page
)
{
return
this
.
queryForPage
(
page
,
null
,
false
);
}
/**
* 列表查询 示例
*/
public
List
<
DataBaseModel
>
queryForDataBaseList
()
{
return
this
.
queryForList
(
""
,
false
);
}
public
List
<
DataBaseModel
>
queryForDbInfoListByApiSource
(
String
apiSource
){
return
this
.
queryForList
(
""
,
false
,
apiSource
);
public
List
<
DataBaseModel
>
queryForDataBaseList
()
{
return
this
.
queryForList
(
""
,
false
);
}
public
List
<
DataBaseModel
>
queryForDbInfoListByApiSource
(
String
apiSource
)
{
return
this
.
queryForList
(
""
,
false
,
apiSource
);
}
public
void
deleteBySeqs
(
String
sequenceNbrs
)
{
String
Nbr
[]
=
sequenceNbrs
.
split
(
","
);
Long
[]
seq
=
(
Long
[])
ConvertUtils
.
convert
(
Nbr
,
Long
.
class
);
Boolean
Nbr2
[]
=
new
Boolean
[
Nbr
.
length
];
for
(
int
i
=
0
;
i
<
Nbr
.
length
;
i
++)
{
for
(
int
i
=
0
;
i
<
Nbr
.
length
;
i
++)
{
Nbr2
[
i
]
=
this
.
removeById
(
seq
[
i
]);
}
}
public
Long
[]
stringToLong
(
String
sequenceNbrs
){
public
Long
[]
stringToLong
(
String
sequenceNbrs
)
{
String
[]
seqs
=
sequenceNbrs
.
split
(
","
);
Long
[]
seq
=
new
Long
[
seqs
.
length
];
for
(
int
i
=
0
;
i
<
seqs
.
length
;
i
++)
{
for
(
int
i
=
0
;
i
<
seqs
.
length
;
i
++)
{
seq
[
i
]
=
Long
.
parseLong
(
seqs
[
i
]);
}
return
seq
;
}
public
String
[]
getDataBaseName
(
Connection
connection
)
throws
ClassNotFoundException
,
SQLException
{
Statement
stmt
=
connection
.
createStatement
();
ResultSet
rs
=
stmt
.
executeQuery
(
"SHOW DATABASES"
);
String
[]
result
=
new
String
[
1000
];
int
count
=
0
;
while
(
rs
.
next
())
{
result
[
count
++]
=
rs
.
getString
(
1
);
}
return
result
;
}
public
List
<
DataBaseModel
>
refreshDataBase
(
DataBaseModel
dataBaseModel
)
throws
Exception
{
this
.
remove
(
new
QueryWrapper
<>());
//连接数据库
String
url
=
"jdbc:mysql://"
+
dataBaseModel
.
getIp
()
+
":"
+
dataBaseModel
.
getPort
()
+
"/"
;
String
user
=
dataBaseModel
.
getUserName
();
String
pwd
=
dataBaseModel
.
getPassWord
();
Class
.
forName
(
"com.mysql.cj.jdbc.Driver"
);
Connection
connection
=
DriverManager
.
getConnection
(
url
,
user
,
pwd
);
pwd
=
AESUtils
.
encrypt
(
pwd
);
if
(
connection
==
null
)
return
null
;
List
<
DataBaseModel
>
dataBaseModels
=
new
ArrayList
<>();
Collection
<
DataBase
>
dataBases
=
new
ArrayList
<>();
String
[]
dataBaseName
=
this
.
getDataBaseName
(
connection
);
for
(
String
name
:
dataBaseName
)
{
if
(
name
==
null
)
break
;
DataBaseModel
model
=
new
DataBaseModel
(
name
,
dataBaseModel
.
getIp
(),
dataBaseModel
.
getPort
(),
name
,
user
,
pwd
);
dataBaseModels
.
add
(
model
);
DataBase
dataBase
=
this
.
prepareEntity
(
model
);
dataBases
.
add
(
dataBase
);
}
this
.
saveBatch
(
dataBases
);
connection
.
close
();
return
dataBaseModels
;
}
public
Connection
connectNewDatabase
(
DataBaseModel
dataBaseModel
)
throws
Exception
{
// 加载数据库驱动
Class
.
forName
(
"com.mysql.cj.jdbc.Driver"
);
// 连接新增的数据库
String
dbUrl
=
"jdbc:mysql://"
+
dataBaseModel
.
getIp
()
+
":"
+
dataBaseModel
.
getPort
()
+
"/"
+
dataBaseModel
.
getDbName
();
dataBaseModel
.
setPassWord
(
AESUtils
.
decrypt
(
dataBaseModel
.
getPassWord
()));
return
DriverManager
.
getConnection
(
dbUrl
,
dataBaseModel
.
getUserName
(),
dataBaseModel
.
getPassWord
());
}
}
src/main/java/com/yeejoin/amos/api/tool/face/service/RelationService.java
View file @
859185cf
...
...
@@ -19,8 +19,6 @@ public class RelationService extends BaseService<RelationModel, Relation, Relati
@Autowired
DataBaseService
dataBaseService
;
@Autowired
ConnectService
connectService
;
/**
...
...
@@ -125,12 +123,6 @@ public class RelationService extends BaseService<RelationModel, Relation, Relati
public
List
<
RelationTreeModel
>
createRelationTree
(
Connection
connection
)
throws
SQLException
{
List
<
HashMap
<
String
,
String
>>
maps
=
this
.
queryRelation
(
connection
);
List
<
RelationTreeModel
>
trees
=
new
ArrayList
<>();
// for (RelationTreeModel root: createNodes(maps)){
// if(root.getParentName().equals("")){
//// System.out.println(root);
// trees.addAll(createTree(createNodes(maps),""));
// }
// }
trees
.
addAll
(
createTree
(
createNodes
(
maps
),
""
));
return
trees
;
}
...
...
src/main/java/com/yeejoin/amos/api/tool/face/util/AESUtils.java
0 → 100644
View file @
859185cf
package
com
.
yeejoin
.
amos
.
api
.
tool
.
face
.
util
;
import
javax.crypto.Cipher
;
import
javax.crypto.spec.SecretKeySpec
;
import
java.util.Base64
;
/**
* 加解密工具类
* @author lima
* @date 2023/3/3 16:56
*/
public
class
AESUtils
{
private
static
final
String
ALGORITHM
=
"AES"
;
private
static
final
String
SECRET_KEY
=
"aes-key-lima1995"
;
// 密钥
/**
* 加密
*/
public
static
String
encrypt
(
String
value
)
throws
Exception
{
SecretKeySpec
keySpec
=
new
SecretKeySpec
(
SECRET_KEY
.
getBytes
(),
ALGORITHM
);
Cipher
cipher
=
Cipher
.
getInstance
(
ALGORITHM
);
cipher
.
init
(
Cipher
.
ENCRYPT_MODE
,
keySpec
);
byte
[]
encrypted
=
cipher
.
doFinal
(
value
.
getBytes
());
return
Base64
.
getEncoder
().
encodeToString
(
encrypted
);
}
/**
* 解密
*/
public
static
String
decrypt
(
String
value
)
throws
Exception
{
SecretKeySpec
keySpec
=
new
SecretKeySpec
(
SECRET_KEY
.
getBytes
(),
ALGORITHM
);
Cipher
cipher
=
Cipher
.
getInstance
(
ALGORITHM
);
cipher
.
init
(
Cipher
.
DECRYPT_MODE
,
keySpec
);
byte
[]
decoded
=
Base64
.
getDecoder
().
decode
(
value
);
byte
[]
decrypted
=
cipher
.
doFinal
(
decoded
);
return
new
String
(
decrypted
);
}
}
\ No newline at end of file
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