Gateway网关高级配置
最后更新于:2022-04-02 07:10:11
## 四、Gateway路由网关配置
jeecg 路由加载支持三种模式:`yml本地配置` 、 `nacos配置` 、 `database数据库`,其中nacos和数据库方式支持动态刷新路由!默认用的是`database数据库`模式。
### 路由加载模式说明
| 配置模式 | 配置加载方式 |
| --- | --- |
| yml | 本地配置文件 application.yml |
| nacos | 走nacos的 jeecg-gateway-router.json |
| database | 走系统的路由管理DB |
### 以下介绍三种模式的配置方式
切换路由需修改nacos中的 jeecg-dev.yml中路由配置如下图

#### 模式一:本地yml配置方式
首先修改nacos中的 jeecg-dev.yml 的参数 jeecg.route.config.data-type=yml
再修改jeecg-cloud-gateway模块中application-dev.yml文件,添加如下路由配置信息

~~~
#如果启用nacos或者数据库配置请删除一下配置
routes:
- id: jeecg-demo
uri: lb://jeecg-demo
predicates:
- Path=/mock/**,/test/**,/bigscreen/template1/**,/bigscreen/template2/**
- id: jeecg-system
uri: lb://jeecg-system
predicates:
- Path=/sys/**,/eoa/plan/**,/email/**,/oa/im/**,/metting/**,/filemanage/**,/officialdoc/**,/sign/**,/oa/im/**,/cms/**,/chat/eoaCmsMenu/**,/filedisk/**,/im/**,/joa/**,/online/**,/bigscreen/**,/jmreport/**,/design/report/**,/desform/**,/process/**,/act/**,/plug-in/**
- id: jeecg-system-websocket
uri: lb:ws://jeecg-system
predicates:
- Path=/websocket/**,/eoaSocket/**
- id: jeecg-demo-websocket
uri: lb:ws://jeecg-demo
predicates:
- Path=/vxeSocket/**
~~~
#### 模式二: nacos配置方式
首先修改nacos中的 jeecg-dev.yml 的参数 jeecg.route.config.data-type=nacos
再在nacos中新建路由配置文件jeecg-gateway-router.json
(文件存放路径:jeecg-boot-starter/jeecg-boot-starter-cloud/nacos/jeecg-gateway-router.json)

#### 模式三: 数据库配置方式
首先修改nacos中的 jeecg-dev.yml 的参数 jeecg.route.config.data-type=database
再通过系统管理下的路由配置菜单进行路由维护,路由配置表为sys_gateway_route
这样gateway 路由加载就从数据库中读取。

';