Toggle navigation
Toggle navigation
This project
Loading...
Sign in
yangyoupeng
/
microservice
Go to a project
Toggle navigation
Toggle navigation pinning
Projects
Groups
Snippets
Help
Project
Activity
Repository
Pipelines
Graphs
Issues
0
Merge Requests
0
Wiki
Network
Create a new issue
Builds
Commits
Authored by
yangyoupeng
2016-11-10 14:12:51 +0800
Browse Files
Options
Browse Files
Download
Email Patches
Plain Diff
Commit
716e4bd5c38d9b7458eeb87a0037124b6a706934
716e4bd5
1 parent
6089488e
DataSet添加了pipeline的List的支持
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
37 additions
and
0 deletions
src/microservice-parent/microservice-redis/src/main/java/com/zhaoonline/redis/repository/DataSetRepository.java
src/microservice-parent/microservice-redis/src/test/java/com/zhaoonline/redis/repository/TestDateSetRepository.java
src/microservice-parent/microservice-redis/src/main/java/com/zhaoonline/redis/repository/DataSetRepository.java
View file @
716e4bd
package
com
.
zhaoonline
.
redis
.
repository
;
import
java.util.Arrays
;
import
java.util.Collection
;
import
java.util.List
;
import
java.util.Set
;
...
...
@@ -58,6 +59,20 @@ public class DataSetRepository<V> {
return
setOper
.
add
(
values
);
}
public
void
setWithPipeLine
(
String
key
,
List
<
V
>
values
){
byte
[]
keyBytes
=
redisTemplate
.
getStringSerializer
().
serialize
(
key
);
Object
[]
array
=
new
Object
[
values
.
size
()];
values
.
toArray
(
array
);
byte
[][]
valueBytes
=
deSerializer
.
rawValues
(
array
);
redisTemplate
.
executePipelined
(
new
RedisCallback
<
Long
>()
{
@Override
public
Long
doInRedis
(
RedisConnection
connection
)
throws
DataAccessException
{
return
connection
.
sAdd
(
keyBytes
,
valueBytes
);
}
});
}
public
void
setWithPipeLine
(
String
key
,
V
...
values
){
byte
[]
keyBytes
=
redisTemplate
.
getStringSerializer
().
serialize
(
key
);
...
...
src/microservice-parent/microservice-redis/src/test/java/com/zhaoonline/redis/repository/TestDateSetRepository.java
View file @
716e4bd
...
...
@@ -2,13 +2,16 @@ package com.zhaoonline.redis.repository;
import
static
org
.
hamcrest
.
MatcherAssert
.
assertThat
;
import
java.util.ArrayList
;
import
java.util.List
;
import
java.util.Set
;
import
org.hamcrest.core.Is
;
import
org.hamcrest.core.IsEqual
;
import
org.junit.Assert
;
import
org.junit.Test
;
public
class
TestDateSetRepository
extends
RepositoryCommonBase
{
private
static
final
String
testNameSpace
=
"data:repo:settest1"
;
private
static
final
String
testNameSpace2
=
"data:repo:settest2"
;
...
...
@@ -143,4 +146,23 @@ public class TestDateSetRepository extends RepositoryCommonBase {
// }
@Test
public
void
testsetWithPipeLine
(){
DataSetRepository
<
User
>
userRepositroy
=
new
DataSetRepository
<
User
>(
factory
);
userRepositroy
.
delete
(
"test:set:product"
);
List
<
User
>
users
=
new
ArrayList
<
User
>();
for
(
int
i
=
0
;
i
<
1000
;
i
++){
User
user
=
new
User
();
user
.
setId
(
i
);
user
.
setName
(
"product"
+
i
);
users
.
add
(
user
);
}
userRepositroy
.
setWithPipeLine
(
"test:set:product"
,
users
);
Set
<
User
>
userSet
=
userRepositroy
.
getAll
(
"test:set:product"
);
Assert
.
assertEquals
(
1000
,
userSet
.
size
());
}
}
...
...
Please
register
or
login
to post a comment