`

企业级API网关

 
阅读更多

API网关就是用来代替控制器层 Controller,使用API网关直接调用Service层

在Service层加 @APIMapping

http://localhost:8080/api?method=XX&param=XX

 

API store :  存储所有带有APIMapping 的类

存储的对像为 APIRunnable,

apiName, targetMethod, target,  放到一个Map里

 

Controller

1. 接收HTTP参数

2. 把HTTP参数字符串封装成java 对象

3. 调用服务方法

4, 将返回结果进行Json序列化封装

 

API网关要做的事情:

1. 验证系统参数合法性

例如: apiName 或者 method 为空,则抛一个异常

2. 验证业务参数合法性

3. 业务参数转换成java 对象

4. 调用相对应的Service类的方法

5. 拿到返回结果,封装成json

6. 异常统一处理,封装异常,返回

 

 

执行顺序:  PIGatewayServlet===>API handle ===> store

 

String name=applicationConext.getBeanDefinitionNames

Class<?> type= applicationContext.getType(name)

 

 

 

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics