Skip to content

Commit 1d23757

Browse files
committed
Java:APIJSONBoot-MultiDataSource 提供类 RESTful API 接口
1 parent 4a1fde8 commit 1d23757

14 files changed

+22
-12
lines changed
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.

APIJSON-Java-Server/APIJSONBoot-MultiDataSource/pom.xml

+8-8
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55

66
<groupId>apijson.boot</groupId>
77
<artifactId>apijson-boot</artifactId>
8-
<version>5.0.0</version>
8+
<version>5.0.5</version>
99
<!-- <packaging>jar</packaging> -->
1010

1111
<name>APIJSONBoot-MultiDataSource</name>
@@ -37,12 +37,12 @@
3737
<dependency>
3838
<groupId>com.github.TommyLemon</groupId>
3939
<artifactId>unitauto-java</artifactId>
40-
<version>2.6.4</version>
40+
<version>2.7.2</version>
4141
</dependency>
4242
<dependency>
4343
<groupId>com.github.TommyLemon</groupId>
4444
<artifactId>unitauto-jar</artifactId>
45-
<version>2.6.4</version>
45+
<version>2.7.2</version>
4646
</dependency>
4747
<dependency>
4848
<groupId>io.github.classgraph</groupId>
@@ -53,21 +53,21 @@
5353

5454

5555
<!-- 可使用 libs 目录的 apijson-orm.jar, apijson-framework.jar, apijson-column.jar 来替代,两种方式二选一 <<<<<<<<<< -->
56-
<dependency>
56+
<!-- <dependency>
5757
<groupId>com.github.Tencent</groupId>
5858
<artifactId>APIJSON</artifactId>
59-
<version>5.0.0</version>
59+
<version>5.0.5</version>
6060
</dependency>
6161
<dependency>
6262
<groupId>com.github.APIJSON</groupId>
6363
<artifactId>apijson-framework</artifactId>
64-
<version>5.0.0</version>
64+
<version>5.0.5</version>
6565
</dependency>
6666
<dependency>
6767
<groupId>com.github.APIJSON</groupId>
6868
<artifactId>apijson-column</artifactId>
69-
<version>1.2.0</version>
70-
</dependency>
69+
<version>1.2.2</version>
70+
</dependency> -->
7171
<!-- 可使用 libs 目录的 apijson-orm.jar, apijson-framework.jar, apijson-column.jar 来替代,两种方式二选一 >>>>>>>>>> -->
7272

7373
<!-- 需要用的数据库 JDBC 驱动 -->

APIJSON-Java-Server/APIJSONBoot-MultiDataSource/src/main/java/apijson/boot/DemoApplication.java

+2
Original file line numberDiff line numberDiff line change
@@ -54,6 +54,7 @@
5454
import apijson.orm.SQLConfig;
5555
import apijson.orm.SQLExecutor;
5656
import apijson.orm.Verifier;
57+
import apijson.router.APIJSONRouterApplication;
5758
import unitauto.MethodUtil;
5859
import unitauto.MethodUtil.Argument;
5960
import unitauto.MethodUtil.InstanceGetter;
@@ -80,6 +81,7 @@ public static void main(String[] args) throws Exception {
8081
unitauto.Log.DEBUG = Log.DEBUG = true;
8182
APIJSONParser.IS_PRINT_BIG_LOG = true;
8283
APIJSONApplication.init();
84+
APIJSONRouterApplication.init();
8385
System.out.println("\n\n<<<<<<<<< 本 Demo 在 resources/static 内置了 APIAuto,Chrome/Firefox 打开 http://localhost:8080 即可调试(端口号根据项目配置而定) ^_^ >>>>>>>>>\n");
8486
}
8587

APIJSON-Java-Server/APIJSONBoot-MultiDataSource/src/main/java/apijson/boot/DemoController.java

+10-2
Original file line numberDiff line numberDiff line change
@@ -78,13 +78,13 @@
7878
import apijson.demo.model.Privacy;
7979
import apijson.demo.model.User;
8080
import apijson.demo.model.Verify;
81-
import apijson.framework.APIJSONController;
8281
import apijson.framework.BaseModel;
8382
import apijson.orm.JSONRequest;
8483
import apijson.orm.exception.ConditionErrorException;
8584
import apijson.orm.exception.ConflictException;
8685
import apijson.orm.exception.NotExistException;
8786
import apijson.orm.exception.OutOfRangeException;
87+
import apijson.router.APIJSONRouterController;
8888

8989

9090
/**请求路由入口控制器,包括通用增删改查接口等,转交给 APIJSON 的 Parser 来处理
@@ -101,7 +101,7 @@
101101
@Service
102102
@RestController
103103
@RequestMapping("")
104-
public class DemoController extends APIJSONController {
104+
public class DemoController extends APIJSONRouterController { // APIJSONController { //
105105
private static final String TAG = "DemoController";
106106

107107
// 可以更方便地通过日志排查错误
@@ -127,6 +127,13 @@ public String getRequestURL() {
127127
// return super.crud(method, request, session);
128128
// }
129129

130+
// 增删改查统一的类 RESTful API 入口,牺牲一些路由解析性能来提升一点开发效率
131+
@PostMapping("router/{method}/{tag}")
132+
@Override
133+
public String router(@PathVariable String method, @PathVariable String tag, @RequestParam Map<String, String> params, @RequestBody String request, HttpSession session) {
134+
return super.router(method, tag, params, request, session);
135+
}
136+
130137
/**获取
131138
* @param request 只用String,避免encode后未decode
132139
* @param session
@@ -1259,6 +1266,7 @@ else if (APIJSON_DELEGATE_ID.toLowerCase().equals(name.toLowerCase())) {
12591266
map.remove("$_type");
12601267
map.remove("$_except_headers");
12611268
map.remove("$_delegate_url");
1269+
map.remove("$_delegate_id");
12621270

12631271
Set<Entry<String, String[]>> set = map == null ? null : map.entrySet();
12641272

APIJSON-Java-Server/APIJSONBoot-MultiDataSource/src/main/java/apijson/demo/DemoVerifier.java

+2-2
Original file line numberDiff line numberDiff line change
@@ -14,14 +14,14 @@
1414

1515
package apijson.demo;
1616

17-
import apijson.framework.APIJSONVerifier;
17+
import apijson.router.APIJSONRouterVerifier;
1818

1919

2020
/**安全校验器,校验请求参数、角色与权限等
2121
* 具体见 https://github.com/Tencent/APIJSON/issues/12
2222
* @author Lemon
2323
*/
24-
public class DemoVerifier extends APIJSONVerifier {
24+
public class DemoVerifier extends APIJSONRouterVerifier { // APIJSONVerifier {
2525
public static final String TAG = "DemoVerifier";
2626

2727
// 重写方法来自定义字段名等

0 commit comments

Comments
 (0)