blade框架试用
约 373 字大约 1 分钟
2025-04-30
SpringBlade下载&导入工程
环境准备
Nacos
* SpringBlade的注册中心
* 具体文档详见:https://nacos.io/zh-cn/docs/quick-start.html
* docker部署详见:https://github.com/nacos-group/nacos-docker
* SpringBlade配置详见:https://www.kancloud.cn/smallchill/blade/913215
知识点
Nacos地址在哪里配置?
全局搜索8848,可以找到blade-common中存在LauncherConstant.java 中配置了 NACOS_DEV_ADDR = "127.0.0.1:8848";
继续查找调用关系,当前文件中找到 动态获取nacos地址的方法 nacosAddr(String profile) ,
继续查找调用关系,LauncherServiceImpl.java 中找到 launcher方法,
@Override
public void launcher(SpringApplicationBuilder builder, String appName, String profile) {
Properties props = System.getProperties();
PropsUtil.setProperty(props, "spring.cloud.nacos.username", LauncherConstant.NACOS_USERNAME);
PropsUtil.setProperty(props, "spring.cloud.nacos.password", LauncherConstant.NACOS_PASSWORD);
PropsUtil.setProperty(props, "spring.cloud.nacos.discovery.server-addr", LauncherConstant.nacosAddr(profile));
PropsUtil.setProperty(props, "spring.cloud.nacos.config.server-addr", LauncherConstant.nacosAddr(profile));
PropsUtil.setProperty(props, "spring.cloud.sentinel.transport.dashboard", LauncherConstant.sentinelAddr(profile));
PropsUtil.setProperty(props, "spring.zipkin.base-url", LauncherConstant.zipkinAddr(profile));
}
继续向上查找, 依赖包blade-core-launcher.jar 中定义了service LauncherService.java
在这个jar包中,有 BladeApplication.java 其中 调用了 LauncherService.java 的launcher相关方法
综上:因为所有模块都引入了blade-common依赖, 所以 都默认获取了环境对应的nacos 及相关sentinel、zipkin地址
Gateway网关在哪里配置?
参考:https://sns.bladex.cn/q-11456.html
bladex的gateway配置了自动转发,比如你注册到nacos的服务名为:carbon-service-etp,那么就可以直接通过 http://localhost/carbon-service-etp/xxx 来调用。
如果需要额外自定义服务名,可以用如下配置操作:
另外:SpringCloud网关路由支持三种:静态路由、动态路由、自动路由。
https://developer.aliyun.com/article/1245301
自动路由:
spring.cloud.gateway.discovery.locator.enabled=true