当前位置: 首页 > news >正文

中小型企业网站设计与开发黄页网站营销

中小型企业网站设计与开发,黄页网站营销,ie浏览器打开怎么是2345网址导航,网站上搜索的动图怎么做壁纸背景 Kotlin作为一门JVM脚本语言,收到很多Java开发者的青睐。 项目采用JavaKotlin混合编程。Spring Boot应用开发,不会发生变动的配置放在本地配置文件,可能会变化的配置放在远程Apollo Server。 问题 因为业务需要,需要增加一…

背景

Kotlin作为一门JVM脚本语言,收到很多Java开发者的青睐。

项目采用Java+Kotlin混合编程。Spring Boot应用开发,不会发生变动的配置放在本地配置文件,可能会变化的配置放在远程Apollo Server。

问题

因为业务需要,需要增加一个可能会持续更新的配置,然后通过if else逻辑来加以判断。

apollo配置:
在这里插入图片描述
下面截图里的硬编码是未解决问题的 back-up 方案:
在这里插入图片描述
控制台打印:
在这里插入图片描述
事实上,本地开发时,习惯性先实现业务逻辑,一开始并没有在Apollo新增配置screen.channel,而是采用上面图2里的硬编码方式:

@Value("\${screen.channel: xhwjk_screen}")
var screenChannel: String? = null

这种方式不会去读取本地配置文件,也不会读取Apollo Server的配置,直接设置一个default值,也就是xhwjk_screen,但断点调试时,拿不到数据。

在本地bootstrap.yml文件里新增配置:

screen:channel: xhwjk_screen,pdwjk_screen

另外application.yml里也试过增加相同的配置项。

结论都是:获取不到配置。

对比

相同的配置,放在一个Java Controller里面就没有问题:

@Slf4j
@RestController
@RequestMapping("/dialog")
public class AuthenticationCheckController {@Value("${screen.channel: xhwjk_screen}")private String screenChannel;@GetMapping(value = "/authentication")@ResponseStatus(HttpStatus.NO_CONTENT)public void checkAuthentication() {LOGGER.info("ff:{}", screenChannel);// This resource just returns a 204 No Content in case the request is authenticated.}
}

控制台打印:

AuthenticationCheckController | checkAuthentication | 28 | - ff:xhwjk_screen,pdwjk_screen

注:
JDK版本:OpenJDK-11
Spring Boot版本:2.1.6.RELEASE
Spring Cloud版本:Greenwich.RELEASE
Kotlin版本:1.3.72

排查

尝试1

带着上面描述的问题现象搜索,找到stackoverflow-how-to-get-value-from-application-yml-in-springboot,

Apollo新增一个配置:
在这里插入图片描述
新增一个配置DialogConfig.kt类:

@Component
@ConfigurationProperties("dialog")
class DialogConfig {var screenChannel: String? = null
}

引用此配置:

@Resource
private val dialogConfig: DialogConfig? = null

仍然拿不到配置:
在这里插入图片描述

尝试2

找到另一篇stackoverflow-how-to-get-variable-from-spring-application-yaml-in-kotlin)
还是上面的DialogConfig.kt,引用配置:

@Resource
lateinit var dialogConfig: DialogConfig

直接报错:
kotlin.UninitializedPropertyAccessException: lateinit property dialogConfig has not been initialized
在这里插入图片描述
参考:stackoverflow-uninitializedpropertyaccessexception,使用前判断一下,没有判断的必要,还是拿不到数据。

尝试3

DialogConfig变成Java类:

@Component
@ConfigurationProperties("dialog")
public class DialogConfig {public String screenChannel;
}

引用此配置:

@Resource
var dialogConfig: DialogConfig? = null

还是不行!
在这里插入图片描述

解决

实在没办法,硬编码解决问题,参考截图一。

吐了。。

秃了。

http://www.yayakq.cn/news/289580/

相关文章:

  • sem是什么工作揭阳新站seo方案
  • 网站注册商标做网站产品资料表格
  • 手机怎么建造网站网站关键词优化排名
  • 温州做网站哪家公司最好西宁建站
  • 巴南城乡建设网站东莞寮步镇网站
  • 电脑建网站软件网站自然排名往后掉
  • 公司网站建设请示网页设计的费用
  • 合肥网站设计网站产品开发流程8个步骤的总结
  • 注销网站备案申请表宿迁网站建设公司
  • 绥化网站建设wordpress查询文章分类列表
  • 网站如何添加认证联盟西安网站开发xamokj
  • 床上做受网站个人做电子商务网站备案
  • 软件工程做项目网站网上购物哪个平台质量好又便宜
  • 旅游网站建设代码单页网站系统
  • 网站建设销售话术开场白建一个外贸网站要多少钱
  • 在重庆_那里可以做诚信网站认证华为手机网络营销推广方案
  • 网站正在建设升级福彩网网站建设方案
  • 网站运营 开发非常好的资讯网站设计
  • 山东省住房和建设网站首页合肥网站建设技术外包
  • 深圳网站开发哪家专业免费的设计素材网
  • 网站跳出率多少正常网站开发及app开发都需要多少钱
  • 有没有做兼职的好网站怎样做网站镜像
  • 地方农村电商平台网站设计思路郴州出现一例无症状感染者
  • 直播间网站开发软文广告案例分析
  • 免费免费网站模板下载网站网站建设中 很快回来
  • seo网站优化培训厂家报价想做一个静态网页网站不需要有后台数据库
  • 学校 网站建设 招标孝感建设网站
  • 网站图片360度旋转怎么做的网站备案失败
  • 乐都网站建设怎么做qq刷会员的网站
  • 苏州建设银行网站广州哪里做公司网站号