Skip to content
项目
群组
代码片段
帮助
当前项目
正在载入...
登录 / 注册
切换导航面板
E
event
概览
概览
详情
活动
周期分析
版本库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
统计图
问题
0
议题
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
CI / CD
CI / CD
流水线
作业
日程表
图表
维基
Wiki
代码片段
代码片段
成员
成员
折叠边栏
关闭边栏
活动
图像
聊天
创建新问题
作业
提交
问题看板
Open sidebar
陈世强
event
Commits
4f2d5918
提交
4f2d5918
authored
5月 22, 2025
作者:
yanxin
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
增加专题跨环境同步相关接口
上级
4138b031
全部展开
隐藏空白字符变更
内嵌
并排
正在显示
20 个修改的文件
包含
585 行增加
和
0 行删除
+585
-0
SubjectSyncConfig.java
src/main/java/com/zzsn/event/config/SubjectSyncConfig.java
+48
-0
SubjectSyncController.java
...java/com/zzsn/event/controller/SubjectSyncController.java
+0
-0
GroupType.java
src/main/java/com/zzsn/event/entity/GroupType.java
+77
-0
GroupTypeMap.java
src/main/java/com/zzsn/event/entity/GroupTypeMap.java
+63
-0
InfoSourceGroupMap.java
src/main/java/com/zzsn/event/entity/InfoSourceGroupMap.java
+63
-0
SubjectAboutTable.java
src/main/java/com/zzsn/event/entity/SubjectAboutTable.java
+39
-0
GroupTypeMapMapper.java
src/main/java/com/zzsn/event/mapper/GroupTypeMapMapper.java
+17
-0
GroupTypeMapper.java
src/main/java/com/zzsn/event/mapper/GroupTypeMapper.java
+16
-0
InfoSourceGroupMapMapper.java
.../java/com/zzsn/event/mapper/InfoSourceGroupMapMapper.java
+15
-0
GroupTypeMapMapper.xml
...ain/java/com/zzsn/event/mapper/xml/GroupTypeMapMapper.xml
+6
-0
GroupTypeMapper.xml
src/main/java/com/zzsn/event/mapper/xml/GroupTypeMapper.xml
+5
-0
InfoSourceGroupMapMapper.xml
...va/com/zzsn/event/mapper/xml/InfoSourceGroupMapMapper.xml
+6
-0
IGroupTypeMapService.java
...ain/java/com/zzsn/event/service/IGroupTypeMapService.java
+16
-0
IGroupTypeService.java
src/main/java/com/zzsn/event/service/IGroupTypeService.java
+16
-0
IInfoSourceGroupMapService.java
...va/com/zzsn/event/service/IInfoSourceGroupMapService.java
+15
-0
GroupTypeMapServiceImpl.java
.../com/zzsn/event/service/impl/GroupTypeMapServiceImpl.java
+17
-0
GroupTypeServiceImpl.java
...ava/com/zzsn/event/service/impl/GroupTypeServiceImpl.java
+18
-0
InfoSourceGroupMapServiceImpl.java
...zsn/event/service/impl/InfoSourceGroupMapServiceImpl.java
+18
-0
AesEncryptUtil.java
...n/java/com/zzsn/event/util/encryption/AesEncryptUtil.java
+118
-0
EncryptedString.java
.../java/com/zzsn/event/util/encryption/EncryptedString.java
+12
-0
没有找到文件。
src/main/java/com/zzsn/event/config/SubjectSyncConfig.java
0 → 100644
浏览文件 @
4f2d5918
package
com
.
zzsn
.
event
.
config
;
import
lombok.Data
;
import
org.springframework.boot.context.properties.ConfigurationProperties
;
import
org.springframework.cloud.context.config.annotation.RefreshScope
;
import
org.springframework.stereotype.Component
;
import
java.util.ArrayList
;
import
java.util.List
;
/**
* 专题数据同步配置类
*/
@Data
@Component
@RefreshScope
@ConfigurationProperties
(
SubjectSyncConfig
.
PREFIX
)
public
class
SubjectSyncConfig
{
public
static
final
String
PREFIX
=
"subject.sync"
;
private
List
<
Config
>
configs
=
new
ArrayList
<>();
@Data
public
static
class
Config
{
//环境名称
private
String
name
;
//环境编码
private
String
code
;
//访问地址
private
String
domain
;
//鉴权地址
private
String
loginUrl
;
//专题列表查询地址
private
String
subjectListUrl
;
//查询接口地址
private
String
findDataUrl
;
//用户名
private
String
username
;
//密码
private
String
password
;
}
@Data
public
static
class
ConfigVo
{
//环境名称
private
String
name
;
//环境编码
private
String
code
;
}
}
src/main/java/com/zzsn/event/controller/SubjectSyncController.java
0 → 100644
浏览文件 @
4f2d5918
差异被折叠。
点击展开。
src/main/java/com/zzsn/event/entity/GroupType.java
0 → 100644
浏览文件 @
4f2d5918
package
com
.
zzsn
.
event
.
entity
;
import
com.baomidou.mybatisplus.annotation.IdType
;
import
com.baomidou.mybatisplus.annotation.TableId
;
import
com.baomidou.mybatisplus.annotation.TableName
;
import
com.fasterxml.jackson.annotation.JsonFormat
;
import
io.swagger.annotations.ApiModel
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.AllArgsConstructor
;
import
lombok.Builder
;
import
lombok.Data
;
import
lombok.NoArgsConstructor
;
import
org.jeecgframework.poi.excel.annotation.Excel
;
import
org.springframework.format.annotation.DateTimeFormat
;
import
java.io.Serializable
;
import
java.util.Date
;
/**
* @Description: 信息源组类别
* @Author: jeecg-boot
* @Date: 2021-11-25
* @Version: V1.0
*/
@Data
@TableName
(
"group_type"
)
@ApiModel
(
value
=
"group_type对象"
,
description
=
"信息源组类别"
)
@Builder
@NoArgsConstructor
@AllArgsConstructor
public
class
GroupType
implements
Serializable
{
private
static
final
long
serialVersionUID
=
1L
;
/**主键*/
@TableId
(
type
=
IdType
.
ASSIGN_ID
)
@ApiModelProperty
(
value
=
"主键"
)
private
String
id
;
/**类别名称*/
@Excel
(
name
=
"类别名称"
,
width
=
15
)
@ApiModelProperty
(
value
=
"类别名称"
)
private
String
typeName
;
/**创建人*/
@ApiModelProperty
(
value
=
"创建人"
)
private
String
createBy
;
/**创建日期*/
@JsonFormat
(
timezone
=
"GMT+8"
,
pattern
=
"yyyy-MM-dd HH:mm:ss"
)
@DateTimeFormat
(
pattern
=
"yyyy-MM-dd HH:mm:ss"
)
@ApiModelProperty
(
value
=
"创建日期"
)
private
Date
createTime
;
/**更新人*/
@ApiModelProperty
(
value
=
"更新人"
)
private
String
updateBy
;
/**更新日期*/
@JsonFormat
(
timezone
=
"GMT+8"
,
pattern
=
"yyyy-MM-dd HH:mm:ss"
)
@DateTimeFormat
(
pattern
=
"yyyy-MM-dd HH:mm:ss"
)
@ApiModelProperty
(
value
=
"更新日期"
)
private
Date
updateTime
;
/**所属部门*/
@ApiModelProperty
(
value
=
"所属部门"
)
private
String
sysOrgCode
;
/**父级节点*/
@Excel
(
name
=
"父级节点"
,
width
=
15
)
@ApiModelProperty
(
value
=
"父级节点"
)
private
String
pid
;
/**是否有子节点*/
@Excel
(
name
=
"是否有子节点"
,
width
=
15
,
dicCode
=
"yn"
)
@ApiModelProperty
(
value
=
"是否有子节点"
)
private
String
hasChild
;
/**
* 状态(1启用 0不启用)
*/
private
Integer
status
;
/**所属客户*/
@ApiModelProperty
(
value
=
"所属客户"
)
private
String
customerId
;
}
src/main/java/com/zzsn/event/entity/GroupTypeMap.java
0 → 100644
浏览文件 @
4f2d5918
package
com
.
zzsn
.
event
.
entity
;
import
com.baomidou.mybatisplus.annotation.IdType
;
import
com.baomidou.mybatisplus.annotation.TableId
;
import
com.baomidou.mybatisplus.annotation.TableName
;
import
com.fasterxml.jackson.annotation.JsonFormat
;
import
io.swagger.annotations.ApiModel
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.Data
;
import
lombok.EqualsAndHashCode
;
import
lombok.experimental.Accessors
;
import
org.jeecgframework.poi.excel.annotation.Excel
;
import
org.springframework.format.annotation.DateTimeFormat
;
import
java.io.Serializable
;
import
java.util.Date
;
/**
* @Description: 信息源组-类别关联表
* @Author: jeecg-boot
* @Date: 2021-11-25
* @Version: V1.0
*/
@Data
@TableName
(
"group_type_map"
)
@Accessors
(
chain
=
true
)
@EqualsAndHashCode
(
callSuper
=
false
)
@ApiModel
(
value
=
"group_type_map对象"
,
description
=
"信息源组-类别关联表"
)
public
class
GroupTypeMap
implements
Serializable
{
private
static
final
long
serialVersionUID
=
1L
;
/**主键*/
@TableId
(
type
=
IdType
.
ASSIGN_ID
)
@ApiModelProperty
(
value
=
"主键"
)
private
String
id
;
/**信息源组id*/
@Excel
(
name
=
"信息源组id"
,
width
=
15
)
@ApiModelProperty
(
value
=
"信息源组id"
)
private
String
groupId
;
/**类别id*/
@Excel
(
name
=
"类别id"
,
width
=
15
)
@ApiModelProperty
(
value
=
"类别id"
)
private
String
typeId
;
/**创建人*/
@ApiModelProperty
(
value
=
"创建人"
)
private
String
createBy
;
/**创建日期*/
@JsonFormat
(
timezone
=
"GMT+8"
,
pattern
=
"yyyy-MM-dd HH:mm:ss"
)
@DateTimeFormat
(
pattern
=
"yyyy-MM-dd HH:mm:ss"
)
@ApiModelProperty
(
value
=
"创建日期"
)
private
Date
createTime
;
/**更新人*/
@ApiModelProperty
(
value
=
"更新人"
)
private
String
updateBy
;
/**更新日期*/
@JsonFormat
(
timezone
=
"GMT+8"
,
pattern
=
"yyyy-MM-dd HH:mm:ss"
)
@DateTimeFormat
(
pattern
=
"yyyy-MM-dd HH:mm:ss"
)
@ApiModelProperty
(
value
=
"更新日期"
)
private
Date
updateTime
;
/**所属部门*/
@ApiModelProperty
(
value
=
"所属部门"
)
private
String
sysOrgCode
;
}
src/main/java/com/zzsn/event/entity/InfoSourceGroupMap.java
0 → 100644
浏览文件 @
4f2d5918
package
com
.
zzsn
.
event
.
entity
;
import
com.baomidou.mybatisplus.annotation.IdType
;
import
com.baomidou.mybatisplus.annotation.TableId
;
import
com.baomidou.mybatisplus.annotation.TableName
;
import
com.fasterxml.jackson.annotation.JsonFormat
;
import
io.swagger.annotations.ApiModel
;
import
io.swagger.annotations.ApiModelProperty
;
import
lombok.Data
;
import
lombok.EqualsAndHashCode
;
import
lombok.experimental.Accessors
;
import
org.jeecgframework.poi.excel.annotation.Excel
;
import
org.springframework.format.annotation.DateTimeFormat
;
import
java.io.Serializable
;
import
java.util.Date
;
/**
* @Description: 信息源组和信息源关联表
* @Author: jeecg-boot
* @Date: 2021-11-24
* @Version: V1.0
*/
@Data
@TableName
(
"info_source_group_map"
)
@Accessors
(
chain
=
true
)
@EqualsAndHashCode
(
callSuper
=
false
)
@ApiModel
(
value
=
"info_source_group_map对象"
,
description
=
"信息源组和信息源关联表"
)
public
class
InfoSourceGroupMap
implements
Serializable
{
private
static
final
long
serialVersionUID
=
1L
;
/**主键*/
@TableId
(
type
=
IdType
.
ASSIGN_ID
)
@ApiModelProperty
(
value
=
"主键"
)
private
String
id
;
/**信息源组id*/
@Excel
(
name
=
"信息源组id"
,
width
=
15
)
@ApiModelProperty
(
value
=
"信息源组id"
)
private
String
groupId
;
/**信息源id*/
@Excel
(
name
=
"信息源id"
,
width
=
15
)
@ApiModelProperty
(
value
=
"信息源id"
)
private
String
sourceId
;
/**创建人*/
@ApiModelProperty
(
value
=
"创建人"
)
private
String
createBy
;
/**创建日期*/
@JsonFormat
(
timezone
=
"GMT+8"
,
pattern
=
"yyyy-MM-dd HH:mm:ss"
)
@DateTimeFormat
(
pattern
=
"yyyy-MM-dd HH:mm:ss"
)
@ApiModelProperty
(
value
=
"创建日期"
)
private
Date
createTime
;
/**更新人*/
@ApiModelProperty
(
value
=
"更新人"
)
private
String
updateBy
;
/**更新日期*/
@JsonFormat
(
timezone
=
"GMT+8"
,
pattern
=
"yyyy-MM-dd HH:mm:ss"
)
@DateTimeFormat
(
pattern
=
"yyyy-MM-dd HH:mm:ss"
)
@ApiModelProperty
(
value
=
"更新日期"
)
private
Date
updateTime
;
/**所属部门*/
@ApiModelProperty
(
value
=
"所属部门"
)
private
String
sysOrgCode
;
}
src/main/java/com/zzsn/event/entity/SubjectAboutTable.java
0 → 100644
浏览文件 @
4f2d5918
package
com
.
zzsn
.
event
.
entity
;
import
com.zzsn.event.vo.SubjectKeywordsMap
;
import
lombok.Data
;
import
java.io.Serializable
;
import
java.util.ArrayList
;
import
java.util.List
;
/**
* @Description: 专题相关表(数据同步使用)
* @Author: yanxin
* @Date: 2023-06-12
* @Version: V1.0
*/
@Data
public
class
SubjectAboutTable
implements
Serializable
{
private
static
final
long
serialVersionUID
=
1L
;
/**专题直接关联部分begin*/
private
List
<
Subject
>
subject
=
new
ArrayList
<>();
private
List
<
SubjectKeywords
>
subjectKeywords
=
new
ArrayList
<>();
private
List
<
SubjectKeywordsMap
>
subjectKeywordsMap
=
new
ArrayList
<>();
private
List
<
SubjectModelMap
>
subjectModelMap
=
new
ArrayList
<>();
private
List
<
SubjectSearchEnginesMap
>
subjectSearchEnginesMap
=
new
ArrayList
<>();
/**专题直接关联部分end*/
/**专题分类部分begin*/
private
List
<
SubjectTypeMap
>
subjectTypeMap
=
new
ArrayList
<>();
private
List
<
SubjectType
>
subjectType
=
new
ArrayList
<>();
/**专题分类部分end*/
/**信息源以及信息源组部分begin*/
private
List
<
InfoSource
>
infoSource
=
new
ArrayList
<>();
private
List
<
SubjectInfoSourceMap
>
subjectInfoSourceMap
=
new
ArrayList
<>();
private
List
<
InfoSourceGroup
>
infoSourceGroup
=
new
ArrayList
<>();
private
List
<
InfoSourceGroupMap
>
infoSourceGroupMap
=
new
ArrayList
<>();
private
List
<
GroupType
>
groupType
=
new
ArrayList
<>();
private
List
<
GroupTypeMap
>
groupTypeMap
=
new
ArrayList
<>();
/**信息源以及信息源组部分end*/
}
src/main/java/com/zzsn/event/mapper/GroupTypeMapMapper.java
0 → 100644
浏览文件 @
4f2d5918
package
com
.
zzsn
.
event
.
mapper
;
import
com.baomidou.mybatisplus.core.mapper.BaseMapper
;
import
com.zzsn.event.entity.GroupTypeMap
;
import
org.apache.ibatis.annotations.Mapper
;
/**
* @Description: 信息源组-类别关联表
* @Author: jeecg-boot
* @Date: 2021-11-25
* @Version: V1.0
*/
@Mapper
public
interface
GroupTypeMapMapper
extends
BaseMapper
<
GroupTypeMap
>
{
}
src/main/java/com/zzsn/event/mapper/GroupTypeMapper.java
0 → 100644
浏览文件 @
4f2d5918
package
com
.
zzsn
.
event
.
mapper
;
import
com.baomidou.mybatisplus.core.mapper.BaseMapper
;
import
com.zzsn.event.entity.GroupType
;
import
org.apache.ibatis.annotations.Mapper
;
/**
* @Description: 信息源组类别
* @Author: jeecg-boot
* @Date: 2021-11-25
* @Version: V1.0
*/
@Mapper
public
interface
GroupTypeMapper
extends
BaseMapper
<
GroupType
>
{
}
src/main/java/com/zzsn/event/mapper/InfoSourceGroupMapMapper.java
0 → 100644
浏览文件 @
4f2d5918
package
com
.
zzsn
.
event
.
mapper
;
import
com.baomidou.mybatisplus.core.mapper.BaseMapper
;
import
com.zzsn.event.entity.InfoSourceGroupMap
;
import
org.apache.ibatis.annotations.Mapper
;
/**
* @author 张宗涵
* @date 2024/5/22
*/
@Mapper
public
interface
InfoSourceGroupMapMapper
extends
BaseMapper
<
InfoSourceGroupMap
>
{
}
src/main/java/com/zzsn/event/mapper/xml/GroupTypeMapMapper.xml
0 → 100644
浏览文件 @
4f2d5918
<?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=
"com.zzsn.event.mapper.GroupTypeMapMapper"
>
</mapper>
\ No newline at end of file
src/main/java/com/zzsn/event/mapper/xml/GroupTypeMapper.xml
0 → 100644
浏览文件 @
4f2d5918
<?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=
"com.zzsn.event.mapper.GroupTypeMapper"
>
</mapper>
src/main/java/com/zzsn/event/mapper/xml/InfoSourceGroupMapMapper.xml
0 → 100644
浏览文件 @
4f2d5918
<?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=
"com.zzsn.event.mapper.InfoSourceGroupMapMapper"
>
</mapper>
\ No newline at end of file
src/main/java/com/zzsn/event/service/IGroupTypeMapService.java
0 → 100644
浏览文件 @
4f2d5918
package
com
.
zzsn
.
event
.
service
;
import
com.baomidou.mybatisplus.extension.service.IService
;
import
com.zzsn.event.entity.GroupTypeMap
;
/**
* @Description: 信息源组-类别关联表
* @Author: jeecg-boot
* @Date: 2021-11-25
* @Version: V1.0
*/
public
interface
IGroupTypeMapService
extends
IService
<
GroupTypeMap
>
{
}
src/main/java/com/zzsn/event/service/IGroupTypeService.java
0 → 100644
浏览文件 @
4f2d5918
package
com
.
zzsn
.
event
.
service
;
import
com.baomidou.mybatisplus.extension.service.IService
;
import
com.zzsn.event.entity.GroupType
;
/**
* @Description: 信息源组类别
* @Author: jeecg-boot
* @Date: 2021-11-25
* @Version: V1.0
*/
public
interface
IGroupTypeService
extends
IService
<
GroupType
>
{
}
src/main/java/com/zzsn/event/service/IInfoSourceGroupMapService.java
0 → 100644
浏览文件 @
4f2d5918
package
com
.
zzsn
.
event
.
service
;
import
com.baomidou.mybatisplus.extension.service.IService
;
import
com.zzsn.event.entity.InfoSourceGroupMap
;
/**
* @Description: 信息源组和信息源关联表
* @Author: jeecg-boot
* @Date: 2021-11-24
* @Version: V1.0
*/
public
interface
IInfoSourceGroupMapService
extends
IService
<
InfoSourceGroupMap
>
{
}
src/main/java/com/zzsn/event/service/impl/GroupTypeMapServiceImpl.java
0 → 100644
浏览文件 @
4f2d5918
package
com
.
zzsn
.
event
.
service
.
impl
;
import
com.baomidou.mybatisplus.extension.service.impl.ServiceImpl
;
import
com.zzsn.event.entity.GroupTypeMap
;
import
com.zzsn.event.mapper.GroupTypeMapMapper
;
import
com.zzsn.event.service.IGroupTypeMapService
;
import
org.springframework.stereotype.Service
;
/**
* @Description: 信息源组-类别关联表
* @Author: jeecg-boot
* @Date: 2021-11-25
* @Version: V1.0
*/
@Service
public
class
GroupTypeMapServiceImpl
extends
ServiceImpl
<
GroupTypeMapMapper
,
GroupTypeMap
>
implements
IGroupTypeMapService
{
}
src/main/java/com/zzsn/event/service/impl/GroupTypeServiceImpl.java
0 → 100644
浏览文件 @
4f2d5918
package
com
.
zzsn
.
event
.
service
.
impl
;
import
com.baomidou.mybatisplus.extension.service.impl.ServiceImpl
;
import
com.zzsn.event.entity.GroupType
;
import
com.zzsn.event.mapper.GroupTypeMapper
;
import
com.zzsn.event.service.IGroupTypeService
;
import
org.springframework.stereotype.Service
;
/**
* @Description: 信息源组类别
* @Author: jeecg-boot
* @Date: 2021-11-25
* @Version: V1.0
*/
@Service
public
class
GroupTypeServiceImpl
extends
ServiceImpl
<
GroupTypeMapper
,
GroupType
>
implements
IGroupTypeService
{
}
src/main/java/com/zzsn/event/service/impl/InfoSourceGroupMapServiceImpl.java
0 → 100644
浏览文件 @
4f2d5918
package
com
.
zzsn
.
event
.
service
.
impl
;
import
com.baomidou.mybatisplus.extension.service.impl.ServiceImpl
;
import
com.zzsn.event.entity.InfoSourceGroupMap
;
import
com.zzsn.event.mapper.InfoSourceGroupMapMapper
;
import
com.zzsn.event.service.IInfoSourceGroupMapService
;
import
org.springframework.stereotype.Service
;
/**
* @Description: 信息源组和信息源关联表
* @Author: jeecg-boot
* @Date: 2021-11-24
* @Version: V1.0
*/
@Service
public
class
InfoSourceGroupMapServiceImpl
extends
ServiceImpl
<
InfoSourceGroupMapMapper
,
InfoSourceGroupMap
>
implements
IInfoSourceGroupMapService
{
}
src/main/java/com/zzsn/event/util/encryption/AesEncryptUtil.java
0 → 100644
浏览文件 @
4f2d5918
package
com
.
zzsn
.
event
.
util
.
encryption
;
import
org.springframework.util.Base64Utils
;
import
javax.crypto.Cipher
;
import
javax.crypto.spec.IvParameterSpec
;
import
javax.crypto.spec.SecretKeySpec
;
/**
* AES 加密
*/
public
class
AesEncryptUtil
{
//使用AES-128-CBC加密模式,key需要为16位,key和iv可以相同!
private
static
String
KEY
=
EncryptedString
.
key
;
private
static
String
IV
=
EncryptedString
.
iv
;
/**
* 加密方法
* @param data 要加密的数据
* @param key 加密key
* @param iv 加密iv
* @return 加密的结果
* @throws Exception
*/
public
static
String
encrypt
(
String
data
,
String
key
,
String
iv
)
throws
Exception
{
try
{
Cipher
cipher
=
Cipher
.
getInstance
(
"AES/CBC/NoPadding"
);
//"算法/模式/补码方式"NoPadding PkcsPadding
int
blockSize
=
cipher
.
getBlockSize
();
byte
[]
dataBytes
=
data
.
getBytes
();
int
plaintextLength
=
dataBytes
.
length
;
if
(
plaintextLength
%
blockSize
!=
0
)
{
plaintextLength
=
plaintextLength
+
(
blockSize
-
(
plaintextLength
%
blockSize
));
}
byte
[]
plaintext
=
new
byte
[
plaintextLength
];
System
.
arraycopy
(
dataBytes
,
0
,
plaintext
,
0
,
dataBytes
.
length
);
SecretKeySpec
keyspec
=
new
SecretKeySpec
(
key
.
getBytes
(),
"AES"
);
IvParameterSpec
ivspec
=
new
IvParameterSpec
(
iv
.
getBytes
());
cipher
.
init
(
Cipher
.
ENCRYPT_MODE
,
keyspec
,
ivspec
);
byte
[]
encrypted
=
cipher
.
doFinal
(
plaintext
);
return
Base64Utils
.
encodeToString
(
encrypted
);
}
catch
(
Exception
e
)
{
e
.
printStackTrace
();
return
null
;
}
}
/**
* 解密方法
* @param data 要解密的数据
* @param key 解密key
* @param iv 解密iv
* @return 解密的结果
*/
public
static
String
desEncrypt
(
String
data
,
String
key
,
String
iv
)
{
try
{
byte
[]
encrypted1
=
Base64Utils
.
decodeFromString
(
data
);
Cipher
cipher
=
Cipher
.
getInstance
(
"AES/CBC/NoPadding"
);
SecretKeySpec
keyspec
=
new
SecretKeySpec
(
key
.
getBytes
(),
"AES"
);
IvParameterSpec
ivspec
=
new
IvParameterSpec
(
iv
.
getBytes
());
cipher
.
init
(
Cipher
.
DECRYPT_MODE
,
keyspec
,
ivspec
);
byte
[]
original
=
cipher
.
doFinal
(
encrypted1
);
return
new
String
(
original
);
}
catch
(
Exception
e
)
{
e
.
printStackTrace
();
return
null
;
}
}
/**
* 使用默认的key和iv加密
* @param data
* @return
* @throws Exception
*/
public
static
String
encrypt
(
String
data
)
throws
Exception
{
return
encrypt
(
data
,
KEY
,
IV
);
}
/**
* 使用默认的key和iv解密
* @param data
* @return
*/
public
static
String
desEncrypt
(
String
data
)
{
return
desEncrypt
(
data
,
KEY
,
IV
);
}
// /**
// * 测试
// */
// public static void main(String args[]) throws Exception {
// String test1 = "sa";
// String test =new String(test1.getBytes(),"UTF-8");
// String data = null;
// String key = KEY;
// String iv = IV;
// // /g2wzfqvMOeazgtsUVbq1kmJawROa6mcRAzwG1/GeJ4=
// data = encrypt(test, key, iv);
// System.out.println("数据:"+test);
// System.out.println("加密:"+data);
// String jiemi =desEncrypt(data, key, iv).trim();
// System.out.println("解密:"+jiemi);
// }
}
src/main/java/com/zzsn/event/util/encryption/EncryptedString.java
0 → 100644
浏览文件 @
4f2d5918
package
com
.
zzsn
.
event
.
util
.
encryption
;
import
lombok.Data
;
@Data
public
class
EncryptedString
{
public
static
String
key
=
"1234567890adbcde"
;
//长度为16个字符
public
static
String
iv
=
"1234567890hjlkew"
;
//长度为16个字符
}
编写
预览
Markdown
格式
0%
重试
或
添加新文件
添加附件
取消
您添加了
0
人
到此讨论。请谨慎行事。
请先完成此评论的编辑!
取消
请
注册
或者
登录
后发表评论