Skip to content
项目
群组
代码片段
帮助
当前项目
正在载入...
登录 / 注册
切换导航面板
B
basic-api-boot
概览
概览
详情
活动
周期分析
版本库
存储库
文件
提交
分支
标签
贡献者
分支图
比较
统计图
问题
0
议题
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
CI / CD
CI / CD
流水线
作业
日程表
图表
维基
Wiki
代码片段
代码片段
成员
成员
折叠边栏
关闭边栏
活动
图像
聊天
创建新问题
作业
提交
问题看板
Open sidebar
Basic
basic-api-boot
Commits
0c712c1e
提交
0c712c1e
authored
4月 20, 2022
作者:
方治民
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
feat: 新增 JTS 依赖及 Jackson 序列化配置、hibernate-types 扩展自定义类型
上级
8514e938
隐藏空白字符变更
内嵌
并排
正在显示
8 个修改的文件
包含
53 行增加
和
16 行删除
+53
-16
build.gradle
app/build.gradle
+7
-1
application-conf-patch.yml
app/src/main/resources/application-conf-patch.yml
+5
-0
application.yml
app/src/main/resources/application.yml
+1
-1
build.gradle
basic-auth/build.gradle
+7
-2
Permission.java
...in/java/com/yiring/auth/domain/permission/Permission.java
+9
-12
build.gradle
basic-common/core/build.gradle
+9
-0
JacksonConfig.java
...src/main/java/com/yiring/common/config/JacksonConfig.java
+5
-0
build.gradle
build.gradle
+10
-0
没有找到文件。
app/build.gradle
浏览文件 @
0c712c1e
...
...
@@ -18,6 +18,7 @@ dependencies {
// 本地依赖
implementation
fileTree
(
dir:
project
.
rootDir
.
getPath
()
+
'\\libs'
,
includes:
[
'*jar'
])
// 公共依赖
implementation
project
(
":basic-common:core"
)
implementation
project
(
":basic-common:util"
)
...
...
@@ -42,6 +43,11 @@ dependencies {
// fastjson
implementation
"com.alibaba:fastjson:${fastJsonVersion}"
// hutool-core
// hutool
implementation
"cn.hutool:hutool-core:${hutoolVersion}"
// https://github.com/vladmihalcea/hibernate-types
// hibernate-types-55
implementation
"com.vladmihalcea:hibernate-types-55:${hibernateTypesVersion}"
}
app/src/main/resources/application-conf-patch.yml
浏览文件 @
0c712c1e
...
...
@@ -3,6 +3,11 @@ spring:
pathmatch
:
# 修复 swagger 插件在 2.6.x 接口路径匹配问题
matching-strategy
:
ant_path_matcher
jpa
:
properties
:
hibernate
:
# 关闭 hibernate-types banner 日志信息
types.print.banner
:
false
logging
:
level
:
...
...
app/src/main/resources/application.yml
浏览文件 @
0c712c1e
...
...
@@ -8,7 +8,7 @@ spring:
name
:
"
basic-api-app"
profiles
:
include
:
auth, conf-patch
active
:
mock
active
:
test
# DEBUG
debug
:
false
basic-auth/build.gradle
浏览文件 @
0c712c1e
...
...
@@ -15,9 +15,14 @@ dependencies {
implementation
"cn.dev33:sa-token-spring-boot-starter:${saTokenVersion}"
implementation
"cn.dev33:sa-token-dao-redis-jackson:${saTokenVersion}"
// fastjson
implementation
"com.alibaba:fastjson:${fastJsonVersion}"
// hutool-core
implementation
"cn.hutool:hutool-core:${hutoolVersion}"
// fastjson
implementation
"com.alibaba:fastjson:${fastJsonVersion}"
// https://github.com/vladmihalcea/hibernate-types
// hibernate-types-55
implementation
"com.vladmihalcea:hibernate-types-55:${hibernateTypesVersion}"
}
basic-auth/src/main/java/com/yiring/auth/domain/permission/Permission.java
浏览文件 @
0c712c1e
/* (C) 2022 YiRing, Inc. */
package
com
.
yiring
.
auth
.
domain
.
permission
;
import
com.alibaba.fastjson.JSON
;
import
com.alibaba.fastjson.JSONObject
;
import
com.vladmihalcea.hibernate.type.json.JsonType
;
import
com.yiring.common.domain.BasicEntity
;
import
java.io.Serial
;
import
java.io.Serializable
;
...
...
@@ -14,6 +14,7 @@ import lombok.experimental.FieldNameConstants;
import
lombok.experimental.SuperBuilder
;
import
org.hibernate.Hibernate
;
import
org.hibernate.annotations.Comment
;
import
org.hibernate.annotations.TypeDef
;
/**
* 权限
...
...
@@ -31,7 +32,7 @@ import org.hibernate.annotations.Comment;
@FieldNameConstants
@FieldDefaults
(
level
=
AccessLevel
.
PRIVATE
)
@Entity
@
Comment
(
"系统权限"
)
@
TypeDef
(
name
=
"json"
,
typeClass
=
JsonType
.
class
)
@Table
(
name
=
"SYS_PERMISSION"
,
indexes
=
{
...
...
@@ -41,6 +42,7 @@ import org.hibernate.annotations.Comment;
@Index
(
columnList
=
"uid"
,
unique
=
true
),
}
)
@Comment
(
"系统权限"
)
public
class
Permission
extends
BasicEntity
implements
Serializable
{
@Serial
...
...
@@ -88,9 +90,9 @@ public class Permission extends BasicEntity implements Serializable {
* 可用于扩展一些前端可能用到的路由参数
*/
@Comment
(
"扩展元数据信息"
)
@
Lob
@Column
(
columnDefinition
=
"
JSON
"
)
String
meta
;
@
org
.
hibernate
.
annotations
.
Type
(
type
=
"json"
)
@Column
(
columnDefinition
=
"
json
"
)
JSONObject
meta
;
@SuppressWarnings
({
"unused"
})
public
enum
Type
{
...
...
@@ -115,17 +117,12 @@ public class Permission extends BasicEntity implements Serializable {
* @return JSON 格式 Meta 元数据
*/
public
JSONObject
getMetaJson
()
{
JSONObject
meta
=
new
JSONObject
();
JSONObject
meta
=
new
JSONObject
(
true
);
meta
.
put
(
"title"
,
this
.
name
);
meta
.
put
(
"icon"
,
this
.
icon
);
meta
.
put
(
"orderNo"
,
this
.
serial
);
meta
.
put
(
"hideMenu"
,
this
.
hidden
);
try
{
String
raw
=
this
.
meta
.
replace
(
"\\"
,
""
).
replaceAll
(
"^\"(.*)\"$"
,
"$1"
);
meta
.
putAll
(
JSON
.
parseObject
(
raw
));
}
catch
(
Exception
ignored
)
{}
meta
.
putAll
(
this
.
meta
);
return
meta
;
}
...
...
basic-common/core/build.gradle
浏览文件 @
0c712c1e
...
...
@@ -18,4 +18,13 @@ dependencies {
// fastjson
implementation
"com.alibaba:fastjson:${fastJsonVersion}"
// JTS 几何对象操作库
implementation
"org.locationtech.jts:jts-core:${jtsVersion}"
// https://mvnrepository.com/artifact/com.graphhopper.external/jackson-datatype-jts
implementation
(
"com.graphhopper.external:jackson-datatype-jts:${jacksonDatatypeJtsVersion}"
)
{
exclude
group:
'com.fasterxml.jackson.core'
,
module:
'jackson-databind'
exclude
group:
'org.locationtech.jts'
,
module:
'jts-core'
}
}
basic-common/core/src/main/java/com/yiring/common/config/JacksonConfig.java
浏览文件 @
0c712c1e
/* (C) 2022 YiRing, Inc. */
package
com
.
yiring
.
common
.
config
;
import
com.bedatadriven.jackson.datatype.jts.JtsModule
;
import
com.fasterxml.jackson.annotation.JsonInclude
;
import
com.fasterxml.jackson.databind.ObjectMapper
;
import
com.fasterxml.jackson.datatype.jsr310.JavaTimeModule
;
...
...
@@ -25,8 +26,12 @@ public class JacksonConfig {
@Bean
public
ObjectMapper
objectMapper
()
{
ObjectMapper
mapper
=
new
ObjectMapper
();
// 忽略空值
mapper
.
setSerializationInclusion
(
JsonInclude
.
Include
.
NON_NULL
);
// Java 8 Date/Time support
mapper
.
registerModule
(
javaTimeModule
);
// JTS Geometry support
mapper
.
registerModule
(
new
JtsModule
());
// feat: add AdminServerModule
return
mapper
;
}
...
...
build.gradle
浏览文件 @
0c712c1e
...
...
@@ -19,8 +19,18 @@ buildscript {
okhttpVersion
=
'4.9.3'
// https://mvnrepository.com/artifact/io.minio/minio
minioVersion
=
'8.3.8'
// https://mvnrepository.com/artifact/com.vladmihalcea/hibernate-types-55
hibernateTypesVersion
=
'2.16.1'
// https://mvnrepository.com/artifact/org.hibernate/hibernate-spatial
hibernateSpatialVersion
=
'5.6.8.Final'
// https://mvnrepository.com/artifact/org.locationtech.jts/jts-core
jtsVersion
=
'1.18.2'
// https://mvnrepository.com/artifact/com.graphhopper.external/jackson-datatype-jts
jacksonDatatypeJtsVersion
=
'1.0-2.7'
// https://mvnrepository.com/artifact/com.baomidou/mybatis-plus-boot-starter
mybatisPlusVersion
=
'3.5.1'
// https://mvnrepository.com/artifact/com.github.liaochong/myexcel
myexcelVersion
=
'4.1.1'
}
}
...
...
编写
预览
Markdown
格式
0%
重试
或
添加新文件
添加附件
取消
您添加了
0
人
到此讨论。请谨慎行事。
请先完成此评论的编辑!
取消
请
注册
或者
登录
后发表评论