Skip to content
Toggle navigation
Projects
Groups
Snippets
Help
yangxiujun
/
paidan_demo
This project
Loading...
Sign in
Toggle navigation
Go to a project
Project
Repository
Issues
0
Merge Requests
0
Pipelines
Wiki
Snippets
Settings
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Commit 2fae346c
authored
Jul 13, 2023
by
chamberone
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
fix: 替换序列化
1 parent
f6bbc580
Hide whitespace changes
Inline
Side-by-side
Showing
5 changed files
with
32 additions
and
193 deletions
project-user/pom.xml
project-user/src/main/java/com/dituhui/pea/user/commom/RedisConfig.java
project-user/src/main/java/com/dituhui/pea/user/commom/RedisService.java
project-user/src/main/java/com/dituhui/pea/user/controller/UserController.java
project-user/src/main/java/com/dituhui/pea/user/service/UserService.java
project-user/pom.xml
View file @
2fae346
...
...
@@ -107,6 +107,11 @@
<version>
2.5.1
</version>
</dependency>
<dependency>
<groupId>
com.google.code.gson
</groupId>
<artifactId>
gson
</artifactId>
</dependency>
</dependencies>
<build>
...
...
project-user/src/main/java/com/dituhui/pea/user/commom/RedisConfig.java
View file @
2fae346
...
...
@@ -15,16 +15,16 @@ import com.fasterxml.jackson.databind.ObjectMapper;
public
class
RedisConfig
{
@Bean
public
RedisTemplate
<
String
,
Object
>
redisTemplate
(
RedisConnectionFactory
connectionFactory
)
{
ObjectMapper
objectMapper
=
new
ObjectMapper
();
objectMapper
.
setSerializationInclusion
(
JsonInclude
.
Include
.
NON_NULL
);
objectMapper
.
activateDefaultTyping
(
objectMapper
.
getPolymorphicTypeValidator
(),
ObjectMapper
.
DefaultTyping
.
EVERYTHING
,
JsonTypeInfo
.
As
.
PROPERTY
);
public
RedisTemplate
<
String
,
String
>
redisTemplate
(
RedisConnectionFactory
connectionFactory
)
{
//
ObjectMapper objectMapper = new ObjectMapper();
//
objectMapper.setSerializationInclusion(JsonInclude.Include.NON_NULL);
//
objectMapper.activateDefaultTyping(objectMapper.getPolymorphicTypeValidator(),
//
ObjectMapper.DefaultTyping.EVERYTHING, JsonTypeInfo.As.PROPERTY);
RedisTemplate
<
String
,
Object
>
redisTemplate
=
new
RedisTemplate
<>();
RedisTemplate
<
String
,
String
>
redisTemplate
=
new
RedisTemplate
<>();
redisTemplate
.
setConnectionFactory
(
connectionFactory
);
redisTemplate
.
setKeySerializer
(
new
StringRedisSerializer
());
redisTemplate
.
setValueSerializer
(
new
GenericJackson2JsonRedisSerializer
(
objectMapper
));
redisTemplate
.
setValueSerializer
(
new
StringRedisSerializer
(
));
return
redisTemplate
;
}
...
...
project-user/src/main/java/com/dituhui/pea/user/commom/RedisService.java
View file @
2fae346
...
...
@@ -13,13 +13,12 @@ import java.util.concurrent.TimeUnit;
/**
* redis服务
*
* @author dk
*/
@Component
public
class
RedisService
{
@Autowired
private
RedisTemplate
redisTemplate
;
private
RedisTemplate
<
String
,
String
>
redisTemplate
;
/**
* 写入缓存
...
...
@@ -28,10 +27,10 @@ public class RedisService {
* @param value
* @return
*/
public
boolean
set
(
final
String
key
,
Object
value
)
{
public
boolean
set
(
final
String
key
,
String
value
)
{
boolean
result
=
false
;
try
{
ValueOperations
<
S
erializable
,
Object
>
operations
=
redisTemplate
.
opsForValue
();
ValueOperations
<
S
tring
,
String
>
operations
=
redisTemplate
.
opsForValue
();
operations
.
set
(
key
,
value
);
result
=
true
;
}
catch
(
Exception
e
)
{
...
...
@@ -47,10 +46,10 @@ public class RedisService {
* @param value
* @return
*/
public
boolean
set
(
final
String
key
,
Object
value
,
Long
expireTime
)
{
public
boolean
set
(
final
String
key
,
String
value
,
Long
expireTime
)
{
boolean
result
=
false
;
try
{
ValueOperations
<
S
erializable
,
Object
>
operations
=
redisTemplate
.
opsForValue
();
ValueOperations
<
S
tring
,
String
>
operations
=
redisTemplate
.
opsForValue
();
operations
.
set
(
key
,
value
);
redisTemplate
.
expire
(
key
,
expireTime
,
TimeUnit
.
SECONDS
);
result
=
true
;
...
...
@@ -61,166 +60,16 @@ public class RedisService {
}
/**
* 设置过期时间<br>
* 原始key
*
* @param key
* @param expriedDate
*/
public
boolean
setExpriedDate
(
String
key
,
Date
expriedDate
)
{
return
redisTemplate
.
expireAt
(
key
,
expriedDate
);
}
/**
* 批量删除对应的value
*
* @param keys
*/
public
void
remove
(
final
String
...
keys
)
{
for
(
String
key
:
keys
)
{
remove
(
key
);
}
}
/**
* 批量删除key
*
* @param pattern
*/
public
void
removePattern
(
final
String
pattern
)
{
Set
<
Serializable
>
keys
=
redisTemplate
.
keys
(
pattern
);
if
(
keys
.
size
()
>
0
)
{
redisTemplate
.
delete
(
keys
);
}
}
/**
* 删除对应的value
*
* @param key
*/
public
void
remove
(
final
String
key
)
{
if
(
exists
(
key
))
{
redisTemplate
.
delete
(
key
);
}
}
/**
* 判断缓存中是否有对应的value
*
* @param key
* @return
*/
public
boolean
exists
(
final
String
key
)
{
return
redisTemplate
.
hasKey
(
key
);
}
/**
* 读取缓存
*
* @param key
* @return
*/
public
Object
get
(
final
String
key
)
{
Object
result
=
null
;
ValueOperations
<
S
erializable
,
Object
>
operations
=
redisTemplate
.
opsForValue
();
public
String
get
(
final
String
key
)
{
String
result
=
null
;
ValueOperations
<
S
tring
,
String
>
operations
=
redisTemplate
.
opsForValue
();
result
=
operations
.
get
(
key
);
return
result
;
}
/**
* 哈希 添加
*
* @param key
* @param hashKey
* @param value
*/
public
void
hmSet
(
String
key
,
Object
hashKey
,
Object
value
)
{
HashOperations
<
String
,
Object
,
Object
>
hash
=
redisTemplate
.
opsForHash
();
hash
.
put
(
key
,
hashKey
,
value
);
}
/**
* 哈希获取数据
*
* @param key
* @param hashKey
* @return
*/
public
Object
hmGet
(
String
key
,
Object
hashKey
)
{
HashOperations
<
String
,
Object
,
Object
>
hash
=
redisTemplate
.
opsForHash
();
return
hash
.
get
(
key
,
hashKey
);
}
/**
* 列表添加
*
* @param k
* @param v
*/
public
void
lPush
(
String
k
,
Object
v
)
{
ListOperations
<
String
,
Object
>
list
=
redisTemplate
.
opsForList
();
list
.
rightPush
(
k
,
v
);
}
/**
* 列表获取
*
* @param k
* @param l
* @param l1
* @return
*/
public
List
<
Object
>
lRange
(
String
k
,
long
l
,
long
l1
)
{
ListOperations
<
String
,
Object
>
list
=
redisTemplate
.
opsForList
();
return
list
.
range
(
k
,
l
,
l1
);
}
/**
* 集合添加
*
* @param key
* @param value
*/
public
void
add
(
String
key
,
Object
value
)
{
SetOperations
<
String
,
Object
>
set
=
redisTemplate
.
opsForSet
();
set
.
add
(
key
,
value
);
}
/**
* 集合获取
*
* @param key
* @return
*/
public
Set
<
Object
>
setMembers
(
String
key
)
{
SetOperations
<
String
,
Object
>
set
=
redisTemplate
.
opsForSet
();
return
set
.
members
(
key
);
}
/**
* 有序集合添加
*
* @param key
* @param value
* @param scoure
*/
public
void
zAdd
(
String
key
,
Object
value
,
double
scoure
)
{
ZSetOperations
<
String
,
Object
>
zset
=
redisTemplate
.
opsForZSet
();
zset
.
add
(
key
,
value
,
scoure
);
}
/**
* 有序集合获取
*
* @param key
* @param scoure
* @param scoure1
* @return
*/
public
Set
<
Object
>
rangeByScore
(
String
key
,
double
scoure
,
double
scoure1
)
{
ZSetOperations
<
String
,
Object
>
zset
=
redisTemplate
.
opsForZSet
();
return
zset
.
rangeByScore
(
key
,
scoure
,
scoure1
);
}
}
project-user/src/main/java/com/dituhui/pea/user/controller/UserController.java
View file @
2fae346
...
...
@@ -31,9 +31,6 @@ public class UserController implements IUser {
@Autowired
private
UserService
userService
;
@Autowired
private
RedisService
redisService
;
@Override
public
Result
<?>
userLogin
(
UserLoginParam
user
)
{
return
userService
.
userLogin
(
user
.
getAccount
(),
user
.
getPassword
());
...
...
@@ -46,21 +43,7 @@ public class UserController implements IUser {
@Override
public
WebResult
<
UserInfo
>
getCurrentUserInfo
(
String
userToken
,
Boolean
needTeamInfo
)
{
UserAuthInfo
userInfoCache
=
getUserAuthInfoFromToken
(
userToken
);
String
userId
=
userInfoCache
.
getUserId
();
UserInfo
userInfo
=
userService
.
queryUserById
(
userId
);
return
WebResult
.
ok
(
userInfo
);
}
/**
* 获取用户认证信息
*
* @param userToken
* @return
*/
private
UserAuthInfo
getUserAuthInfoFromToken
(
String
userToken
)
{
UserAuthInfo
userAuthInfo
=
(
UserAuthInfo
)
redisService
.
get
(
RedisKeyGroup
.
authToken
.
toString
()
+
":"
+
userToken
);
return
userAuthInfo
;
return
null
;
}
@Override
...
...
project-user/src/main/java/com/dituhui/pea/user/service/UserService.java
View file @
2fae346
...
...
@@ -45,6 +45,7 @@ import com.dituhui.pea.user.factory.ThirdStrategy;
import
com.dituhui.pea.user.factory.ThirdStrategyFactory
;
import
com.dituhui.pea.user.utils.TextHelper
;
import
com.google.common.collect.Lists
;
import
com.google.gson.Gson
;
import
cn.hutool.core.bean.BeanUtil
;
import
cn.hutool.core.collection.CollUtil
;
...
...
@@ -66,6 +67,7 @@ public class UserService {
* 失效时间ms
*/
private
static
final
int
LIVE_TIME_MILLIS
=
7200000
;
private
static
final
Gson
gson
=
new
Gson
();
@Autowired
UserDao
userDao
;
...
...
@@ -87,7 +89,7 @@ public class UserService {
@Autowired
ResourceDao
resourceDao
;
@Autowired
IOrganization
organizationService
;
...
...
@@ -101,13 +103,13 @@ public class UserService {
String
token
=
IdUtil
.
simpleUUID
();
userDTO
.
setToken
(
token
);
long
timestamp
=
System
.
currentTimeMillis
()
+
LIVE_TIME_MILLIS
;
redisService
.
set
(
RedisKeyGroup
.
authToken
+
":"
+
token
,
userDTO
,
timestamp
/
1000
);
redisService
.
set
(
RedisKeyGroup
.
authToken
+
":"
+
token
,
gson
.
toJson
(
userDTO
)
,
timestamp
/
1000
);
log
.
info
(
"test begin"
);
UserLoginDTO
userDTO2
=
(
UserLoginDTO
)
redisService
.
get
(
RedisKeyGroup
.
authToken
+
":"
+
token
);
log
.
info
(
"test {}"
,
userDTO2
);
String
value
=
redisService
.
get
(
RedisKeyGroup
.
authToken
+
":"
+
token
);
UserLoginDTO
userDTO2
=
gson
.
fromJson
(
value
,
UserLoginDTO
.
class
);
log
.
info
(
"test {}"
,
userDTO2
);
return
Result
.
success
(
userDTO
);
}
else
{
return
Result
.
failed
(
"鉴权失败"
);
...
...
@@ -164,7 +166,7 @@ public class UserService {
}
return
orgs
;
}).
flatMap
(
a
->
a
.
stream
()).
collect
(
Collectors
.
toList
());
//userDTO.setAuths(allOrgs);
//
userDTO.setAuths(allOrgs);
}
}
}
...
...
Write
Preview
Markdown
is supported
Attach a file
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 post a comment