Skip to content

Commit ca6c3dc

Browse files
Create README.md
1 parent 610f9f2 commit ca6c3dc

File tree

1 file changed

+38
-146
lines changed
  • APIJSON-Java-Server/APIJSONDemo-MultiDataSource-Redis

1 file changed

+38
-146
lines changed
+38-146
Original file line numberDiff line numberDiff line change
@@ -1,154 +1,46 @@
11
# APIJSONDemo
22

3-
## 支持多数据源-rediSQL
3+
## 支持多数据源-redis、rediSQL
4+
redis cluster、sentinel、single模式
45

5-
redis table 表名规范: REDIS_TABLE_* <br/>
6-
开发人员可自行控制 <br/>
7-
JedisBuildData <br/>
8-
public static final String REDIS_TABLE_KEY = "REDIS_TABLE_"; // rediSql table prefix <br/>
6+
## 具体使用
7+
抽空补充到 auto apijson, 方便大家在线测试
98

10-
Access、Request配置 访问操作权限 <br/>
9+
## Access表
10+
```sql
11+
INSERT INTO `housekeeping`.`access` (`id`, `debug`, `name`, `alias`, `get`, `head`, `gets`, `heads`, `post`, `put`, `delete`, `date`, `detail`, `appId`, `userId`, `deletedKey`, `deletedValue`) VALUES (70, 0, 'REDIS_STRING', NULL, '[\"LOGIN\",\"OWNER\", \"ADMIN\"]', '[\"LOGIN\",\"OWNER\", \"ADMIN\"]', '[\"LOGIN\",\"OWNER\", \"ADMIN\"]', '[\"LOGIN\",\"OWNER\", \"ADMIN\"]', '[\"OWNER\", \"ADMIN\"]', '[\"OWNER\", \"ADMIN\"]', '[\"OWNER\", \"ADMIN\"]', '2022-12-23 17:41:40', NULL, NULL, NULL, NULL, NULL);
12+
INSERT INTO `housekeeping`.`access` (`id`, `debug`, `name`, `alias`, `get`, `head`, `gets`, `heads`, `post`, `put`, `delete`, `date`, `detail`, `appId`, `userId`, `deletedKey`, `deletedValue`) VALUES (72, 0, 'REDIS_KEYS', NULL, '[\"LOGIN\",\"OWNER\", \"ADMIN\"]', '[\"LOGIN\",\"OWNER\", \"ADMIN\"]', '[\"LOGIN\",\"OWNER\", \"ADMIN\"]', '[\"LOGIN\",\"OWNER\", \"ADMIN\"]', '[\"OWNER\", \"ADMIN\"]', '[\"OWNER\", \"ADMIN\"]', '[\"OWNER\", \"ADMIN\"]', '2022-12-24 10:19:29', 'redis', '123', '4732209c-5785-4827-b532-5092f154fd94', NULL, NULL);
13+
INSERT INTO `housekeeping`.`access` (`id`, `debug`, `name`, `alias`, `get`, `head`, `gets`, `heads`, `post`, `put`, `delete`, `date`, `detail`, `appId`, `userId`, `deletedKey`, `deletedValue`) VALUES (73, 0, 'REDIS_LIST', NULL, '[\"LOGIN\",\"OWNER\", \"ADMIN\"]', '[\"LOGIN\",\"OWNER\", \"ADMIN\"]', '[\"LOGIN\",\"OWNER\", \"ADMIN\"]', '[\"LOGIN\",\"OWNER\", \"ADMIN\"]', '[\"OWNER\", \"ADMIN\"]', '[\"OWNER\", \"ADMIN\"]', '[\"OWNER\", \"ADMIN\"]', '2022-12-25 12:53:01', 'redis', '123', '4732209c-5785-4827-b532-5092f154fd94', NULL, NULL);
14+
INSERT INTO `housekeeping`.`access` (`id`, `debug`, `name`, `alias`, `get`, `head`, `gets`, `heads`, `post`, `put`, `delete`, `date`, `detail`, `appId`, `userId`, `deletedKey`, `deletedValue`) VALUES (74, 0, 'REDIS_HASH', NULL, '[\"LOGIN\",\"OWNER\", \"ADMIN\"]', '[\"LOGIN\",\"OWNER\", \"ADMIN\"]', '[\"LOGIN\",\"OWNER\", \"ADMIN\"]', '[\"LOGIN\",\"OWNER\", \"ADMIN\"]', '[\"OWNER\", \"ADMIN\"]', '[\"OWNER\", \"ADMIN\"]', '[\"OWNER\", \"ADMIN\"]', '2022-12-25 12:53:17', 'redis', '123', '4732209c-5785-4827-b532-5092f154fd94', NULL, NULL);
15+
INSERT INTO `housekeeping`.`access` (`id`, `debug`, `name`, `alias`, `get`, `head`, `gets`, `heads`, `post`, `put`, `delete`, `date`, `detail`, `appId`, `userId`, `deletedKey`, `deletedValue`) VALUES (75, 0, 'REDIS_SET', NULL, '[\"LOGIN\",\"OWNER\", \"ADMIN\"]', '[\"LOGIN\",\"OWNER\", \"ADMIN\"]', '[\"LOGIN\",\"OWNER\", \"ADMIN\"]', '[\"LOGIN\",\"OWNER\", \"ADMIN\"]', '[\"OWNER\", \"ADMIN\"]', '[\"OWNER\", \"ADMIN\"]', '[\"OWNER\", \"ADMIN\"]', '2022-12-25 12:53:24', 'redis', '123', '4732209c-5785-4827-b532-5092f154fd94', NULL, NULL);
16+
INSERT INTO `housekeeping`.`access` (`id`, `debug`, `name`, `alias`, `get`, `head`, `gets`, `heads`, `post`, `put`, `delete`, `date`, `detail`, `appId`, `userId`, `deletedKey`, `deletedValue`) VALUES (76, 0, 'REDIS_ZSET', NULL, '[\"LOGIN\",\"OWNER\", \"ADMIN\"]', '[\"LOGIN\",\"OWNER\", \"ADMIN\"]', '[\"LOGIN\",\"OWNER\", \"ADMIN\"]', '[\"LOGIN\",\"OWNER\", \"ADMIN\"]', '[\"OWNER\", \"ADMIN\"]', '[\"OWNER\", \"ADMIN\"]', '[\"OWNER\", \"ADMIN\"]', '2022-12-25 12:53:31', 'redis', '123', '4732209c-5785-4827-b532-5092f154fd94', NULL, NULL);
1117

12-
rediSQL安装使用 <br/>
13-
https://github.com/RedBeardLab/rediSQL
14-
15-
官方docker安装 <br/>
16-
docker pull dalongrong/redisql
17-
docker run -itd --name redisql -p 6399:6379 dalongrong/redisql
18-
19-
rediSQL注意事项 <br/>
20-
rediSQL免费版有后遥控制,每个小时会发送 redist info 统计信息<br/>
21-
<img width="1000" alt="image" src="https://user-images.githubusercontent.com/12228225/219613765-e8d4d963-035b-4352-9552-1ce3a14093e4.png">
22-
23-
可以配host ,弄一个nginx 本地代理 解决,或者 项目自己重新打包<br/>
24-
25-
rediSQL java:<br/>
26-
https://github.com/RedBeardLab/JRediSQL<br/>
27-
https://www.youtube.com/watch?v=YRusC-AIq_g
28-
29-
本示例 用 redis cluster rediSQL, 具体redis集群模式, 开发人员自行控制<br/>
30-
将 libredis_sql.so 导入redis.config<br/>
31-
--loadmodule /etc/redis/libredis_sql.so<br/>
32-
rediSQL 创建数据库表命令 <br/>
33-
```
34-
REDISQL.EXEC DB "CREATE TABLE REDIS_TABLE_A(id TEXT, A INT, B TEXT, C TEXT, userId TEXT);"
35-
36-
REDISQL.EXEC DB "INSERT INTO REDIS_TABLE_A(id,A,B,C,userId) VALUES('1', 3, '1c', 'bar','1');"
37-
38-
39-
REDISQL.EXEC DB "SELECT * FROM REDIS_TABLE_A;"
40-
41-
REDISQL.EXEC DB "drop table REDIS_TABLE_A;"
4218
```
4319

44-
测试用例<br/>
45-
```
46-
{
47-
"@datasource": "redisCluster",
48-
"REDIS_TABLE_A":{
49-
"A": 1,
50-
"B": "B",
51-
"C": "C"
52-
},
53-
"tag": "REDIS_TABLE_A",
54-
"@explain": true,
55-
"format": true
56-
}
57-
58-
{
59-
"REDIS_TABLE_A[]": [
60-
{
61-
"A": 5,
62-
"B": "5B",
63-
"C": "5C"
64-
},
65-
{
66-
"A": 6,
67-
"B": "6B",
68-
"C": "6C"
69-
},
70-
{
71-
"A": 7,
72-
"B": "7B",
73-
"C": "7C"
74-
}
75-
],
76-
"tag": "REDIS_TABLE_A[]",
77-
"@datasource": "redisCluster",
78-
"@explain": true,
79-
"format": true
80-
}
81-
82-
{
83-
"@datasource": "redisCluster",
84-
"REDIS_TABLE_A": {
85-
"id": "f2621698-99fa-4698-9fb0-8c7b585da403",
86-
"A": 1,
87-
"B": "1B"
88-
},
89-
"tag": "REDIS_TABLE_A",
90-
"@explain": true,
91-
"format": true
92-
}
93-
94-
Request 表配置
95-
{"REDIS_TABLE_A[]": [{"MUST": "A,B", "REFUSE": "id"}], "INSERT": {"@role": "OWNER,ADMIN","@combine": "A | B"}}
96-
97-
{
98-
"@datasource": "redisCluster",
99-
"REDIS_TABLE_A": {
100-
"A": 1,
101-
"B": "1B",
102-
"C": "1-1-1C"
103-
},
104-
"tag": "REDIS_TABLE_A",
105-
"@explain": true,
106-
"format": true
107-
}
108-
109-
{
110-
"@datasource": "redisCluster",
111-
"REDIS_TABLE_A:a": {
112-
"@column":"a,b,c",
113-
"b$": "7B%"
114-
},
115-
"@explain": true,
116-
"format": true
117-
}
118-
119-
{
120-
"@datasource": "redisCluster",
121-
"REDIS_TABLE_A:a[]": {
122-
"REDIS_TABLE_A": {
123-
"@column":"a,b,c"
124-
//"b$": "1%"
125-
},
126-
"page":0,
127-
"count":3,
128-
"query": 2
129-
},
130-
"total@": "/REDIS_TABLE_A:a[]/total",
131-
"@explain": true,
132-
"format": true
133-
}
134-
135-
{
136-
"@datasource": "redisCluster",
137-
"REDIS_TABLE_A": {
138-
"id": "f2621698-99fa-4698-9fb0-8c7b585da403"
139-
},
140-
"tag": "REDIS_TABLE_A",
141-
"@explain": true,
142-
"format": true
143-
}
144-
145-
{
146-
"@datasource": "redisCluster",
147-
"REDIS_TABLE_A:a": {
148-
"id{}": ["1","eb3dd7c9-bab6-410c-b70a-cbbc3bd12896", "c83b3cfa-034e-4a9e-b2cf-83520db1ce05"]
149-
},
150-
"tag": "REDIS_TABLE_A[]",
151-
"@explain": true,
152-
"format": true
153-
}
20+
## Request表
21+
```sql
22+
INSERT INTO `housekeeping`.`request` (`id`, `debug`, `version`, `method`, `tag`, `structure`, `detail`, `date`, `appId`, `userId`) VALUES (188, 0, 1, 'POST', 'REDIS_KEYS', '{\"UPDATE\": {\"@role\": \"OWNER,ADMIN\",\"@combine\": \"key,keys\"}, \"REFUSE\": \"id\"}', '新增', '2022-12-24 10:21:00', '2332', '4732209c-5785-4827-b532-5092f154fd94');
23+
INSERT INTO `housekeeping`.`request` (`id`, `debug`, `version`, `method`, `tag`, `structure`, `detail`, `date`, `appId`, `userId`) VALUES (189, 0, 1, 'POST', 'REDIS_KEYS[]', '{\"REDIS_KEYS[]\": [{\"REFUSE\": \"id\"}], \"UPDATE\": {\"@role\": \"OWNER,ADMIN\",\"@combine\": \"key,keys\"}}', '批量新增', '2022-12-24 10:21:00', '2332', '4732209c-5785-4827-b532-5092f154fd94');
24+
INSERT INTO `housekeeping`.`request` (`id`, `debug`, `version`, `method`, `tag`, `structure`, `detail`, `date`, `appId`, `userId`) VALUES (190, 0, 1, 'PUT', 'REDIS_KEYS', '{\"REDIS_KEYS\":{ \"REFUSE\": \"userId\", \"INSERT\": {\"@role\": \"OWNER,ADMIN\",\"@combine\": \"key,keys\"}} }', '修改', '2022-12-24 10:21:00', '2332', '4732209c-5785-4827-b532-5092f154fd94');
25+
INSERT INTO `housekeeping`.`request` (`id`, `debug`, `version`, `method`, `tag`, `structure`, `detail`, `date`, `appId`, `userId`) VALUES (191, 0, 1, 'DELETE', 'REDIS_KEYS', '{\"REDIS_KEYS\":{\"INSERT\": {\"@role\": \"OWNER,ADMIN\",\"@combine\": \"key,keys\"}} }', '批量删除', '2022-12-24 10:21:00', '2332', '4732209c-5785-4827-b532-5092f154fd94');
26+
INSERT INTO `housekeeping`.`request` (`id`, `debug`, `version`, `method`, `tag`, `structure`, `detail`, `date`, `appId`, `userId`) VALUES (192, 0, 1, 'POST', 'REDIS_HASH', '{\"UPDATE\": {\"@role\": \"OWNER,ADMIN\",\"@combine\": \"key,keys\"}, \"REFUSE\": \"id\"}', '新增', '2022-12-25 12:54:53', '2332', '4732209c-5785-4827-b532-5092f154fd94');
27+
INSERT INTO `housekeeping`.`request` (`id`, `debug`, `version`, `method`, `tag`, `structure`, `detail`, `date`, `appId`, `userId`) VALUES (193, 0, 1, 'POST', 'REDIS_HASH[]', '{\"REDIS_HASH[]\": [{\"REFUSE\": \"id\"}], \"UPDATE\": {\"@role\": \"OWNER,ADMIN\",\"@combine\": \"key,keys\"}}', '批量新增', '2022-12-25 12:54:53', '2332', '4732209c-5785-4827-b532-5092f154fd94');
28+
INSERT INTO `housekeeping`.`request` (`id`, `debug`, `version`, `method`, `tag`, `structure`, `detail`, `date`, `appId`, `userId`) VALUES (194, 0, 1, 'PUT', 'REDIS_HASH', '{\"REDIS_HASH\":{ \"REFUSE\": \"userId\", \"INSERT\": {\"@role\": \"OWNER,ADMIN\",\"@combine\": \"key,keys\"}} }', '修改', '2022-12-25 12:54:53', '2332', '4732209c-5785-4827-b532-5092f154fd94');
29+
INSERT INTO `housekeeping`.`request` (`id`, `debug`, `version`, `method`, `tag`, `structure`, `detail`, `date`, `appId`, `userId`) VALUES (195, 0, 1, 'DELETE', 'REDIS_HASH', '{\"REDIS_HASH\":{\"INSERT\": {\"@role\": \"OWNER,ADMIN\",\"@combine\": \"key,keys\"}} }', '批量删除', '2022-12-25 12:54:53', '2332', '4732209c-5785-4827-b532-5092f154fd94');
30+
INSERT INTO `housekeeping`.`request` (`id`, `debug`, `version`, `method`, `tag`, `structure`, `detail`, `date`, `appId`, `userId`) VALUES (196, 0, 1, 'POST', 'REDIS_LIST', '{\"UPDATE\": {\"@role\": \"OWNER,ADMIN\",\"@combine\": \"key,keys\"}, \"REFUSE\": \"id\"}', '新增', '2022-12-25 12:55:15', '2332', '4732209c-5785-4827-b532-5092f154fd94');
31+
INSERT INTO `housekeeping`.`request` (`id`, `debug`, `version`, `method`, `tag`, `structure`, `detail`, `date`, `appId`, `userId`) VALUES (197, 0, 1, 'POST', 'REDIS_LIST[]', '{\"REDIS_LIST[]\": [{\"REFUSE\": \"id\"}], \"UPDATE\": {\"@role\": \"OWNER,ADMIN\",\"@combine\": \"key,keys\"}}', '批量新增', '2022-12-25 12:55:15', '2332', '4732209c-5785-4827-b532-5092f154fd94');
32+
INSERT INTO `housekeeping`.`request` (`id`, `debug`, `version`, `method`, `tag`, `structure`, `detail`, `date`, `appId`, `userId`) VALUES (198, 0, 1, 'PUT', 'REDIS_LIST', '{\"REDIS_LIST\":{ \"REFUSE\": \"userId\", \"INSERT\": {\"@role\": \"OWNER,ADMIN\",\"@combine\": \"key,keys\"}} }', '修改', '2022-12-25 12:55:15', '2332', '4732209c-5785-4827-b532-5092f154fd94');
33+
INSERT INTO `housekeeping`.`request` (`id`, `debug`, `version`, `method`, `tag`, `structure`, `detail`, `date`, `appId`, `userId`) VALUES (199, 0, 1, 'DELETE', 'REDIS_LIST', '{\"REDIS_LIST\":{\"INSERT\": {\"@role\": \"OWNER,ADMIN\",\"@combine\": \"key,keys\"}} }', '批量删除', '2022-12-25 12:55:15', '2332', '4732209c-5785-4827-b532-5092f154fd94');
34+
INSERT INTO `housekeeping`.`request` (`id`, `debug`, `version`, `method`, `tag`, `structure`, `detail`, `date`, `appId`, `userId`) VALUES (200, 0, 1, 'POST', 'REDIS_SET', '{\"UPDATE\": {\"@role\": \"OWNER,ADMIN\"}, \"REFUSE\": \"id\"}', '新增', '2022-12-25 12:55:34', '2332', '4732209c-5785-4827-b532-5092f154fd94');
35+
INSERT INTO `housekeeping`.`request` (`id`, `debug`, `version`, `method`, `tag`, `structure`, `detail`, `date`, `appId`, `userId`) VALUES (201, 0, 1, 'POST', 'REDIS_SET[]', '{\"REDIS_SET[]\": [{\"REFUSE\": \"id\"}], \"UPDATE\": {\"@role\": \"OWNER,ADMIN\"}}', '批量新增', '2022-12-25 12:55:34', '2332', '4732209c-5785-4827-b532-5092f154fd94');
36+
INSERT INTO `housekeeping`.`request` (`id`, `debug`, `version`, `method`, `tag`, `structure`, `detail`, `date`, `appId`, `userId`) VALUES (202, 0, 1, 'PUT', 'REDIS_SET', '{\"REDIS_SET\":{ \"REFUSE\": \"userId\", \"INSERT\": {\"@role\": \"OWNER,ADMIN\",\"@combine\": \"key,keys\"}} }', '修改', '2022-12-25 12:55:34', '2332', '4732209c-5785-4827-b532-5092f154fd94');
37+
INSERT INTO `housekeeping`.`request` (`id`, `debug`, `version`, `method`, `tag`, `structure`, `detail`, `date`, `appId`, `userId`) VALUES (203, 0, 1, 'DELETE', 'REDIS_SET', '{\"REDIS_SET\":{\"INSERT\": {\"@role\": \"OWNER,ADMIN\"}} }', '批量删除', '2022-12-25 12:55:34', '2332', '4732209c-5785-4827-b532-5092f154fd94');
38+
INSERT INTO `housekeeping`.`request` (`id`, `debug`, `version`, `method`, `tag`, `structure`, `detail`, `date`, `appId`, `userId`) VALUES (204, 0, 1, 'POST', 'REDIS_ZSET', '{\"UPDATE\": {\"@role\": \"OWNER,ADMIN\"}, \"REFUSE\": \"id\"}', '新增', '2022-12-25 12:55:51', '2332', '4732209c-5785-4827-b532-5092f154fd94');
39+
INSERT INTO `housekeeping`.`request` (`id`, `debug`, `version`, `method`, `tag`, `structure`, `detail`, `date`, `appId`, `userId`) VALUES (205, 0, 1, 'POST', 'REDIS_ZSET[]', '{\"REDIS_ZSET[]\": [{\"REFUSE\": \"id\"}], \"UPDATE\": {\"@role\": \"OWNER,ADMIN\"}}', '批量新增', '2022-12-25 12:55:51', '2332', '4732209c-5785-4827-b532-5092f154fd94');
40+
INSERT INTO `housekeeping`.`request` (`id`, `debug`, `version`, `method`, `tag`, `structure`, `detail`, `date`, `appId`, `userId`) VALUES (206, 0, 1, 'PUT', 'REDIS_ZSET', '{\"REDIS_ZSET\":{ \"REFUSE\": \"userId\", \"INSERT\": {\"@role\": \"OWNER,ADMIN\",\"@combine\": \"key,keys\"}} }', '修改', '2022-12-25 12:55:51', '2332', '4732209c-5785-4827-b532-5092f154fd94');
41+
INSERT INTO `housekeeping`.`request` (`id`, `debug`, `version`, `method`, `tag`, `structure`, `detail`, `date`, `appId`, `userId`) VALUES (207, 0, 1, 'DELETE', 'REDIS_ZSET', '{\"REDIS_ZSET\":{\"INSERT\": {\"@role\": \"OWNER,ADMIN\"}} }', '批量删除', '2022-12-25 12:55:51', '2332', '4732209c-5785-4827-b532-5092f154fd94');
42+
INSERT INTO `housekeeping`.`request` (`id`, `debug`, `version`, `method`, `tag`, `structure`, `detail`, `date`, `appId`, `userId`) VALUES (208, 0, 1, 'POST', 'REDIS_STRING', '{\"UPDATE\": {\"@role\": \"OWNER,ADMIN\"}, \"REFUSE\": \"id\"}', '新增', '2022-12-25 13:16:23', '2332', '4732209c-5785-4827-b532-5092f154fd94');
43+
INSERT INTO `housekeeping`.`request` (`id`, `debug`, `version`, `method`, `tag`, `structure`, `detail`, `date`, `appId`, `userId`) VALUES (209, 0, 1, 'POST', 'REDIS_STRING[]', '{\"REDIS_STRING[]\": [{\"REFUSE\": \"id\"}], \"UPDATE\": {\"@role\": \"OWNER,ADMIN\"}}', '批量新增', '2022-12-25 13:16:23', '2332', '4732209c-5785-4827-b532-5092f154fd94');
44+
INSERT INTO `housekeeping`.`request` (`id`, `debug`, `version`, `method`, `tag`, `structure`, `detail`, `date`, `appId`, `userId`) VALUES (210, 0, 1, 'PUT', 'REDIS_STRING', '{\"REDIS_STRING\":{ \"REFUSE\": \"userId\", \"INSERT\": {\"@role\": \"OWNER,ADMIN\",\"@combine\": \"key,keys\"}} }', '修改', '2022-12-25 13:16:23', '2332', '4732209c-5785-4827-b532-5092f154fd94');
45+
INSERT INTO `housekeeping`.`request` (`id`, `debug`, `version`, `method`, `tag`, `structure`, `detail`, `date`, `appId`, `userId`) VALUES (211, 0, 1, 'DELETE', 'REDIS_STRING', '{\"REDIS_STRING\":{\"INSERT\": {\"@role\": \"OWNER,ADMIN\"}} }', '批量删除', '2022-12-25 13:16:23', '2332', '4732209c-5785-4827-b532-5092f154fd94');
15446
```

0 commit comments

Comments
 (0)