码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • sharding分片键 groovy公式带有非数字字符启动失败


    1、报错:No such property: other for class: Script2

    nested exception is groovy.lang.MissingPropertyException: No such property: other for class: Script2

    2、猜测:groovy公式解析失败

    解析groovy公式$->{[apple, banana]}失败

    3、实施猜测:

    3.1、调试:groovy公式解析过程。

    结果:groovy不可以解析 ${[apple, banana]},可以正常解析带有引号的 非数字  ${['apple', 'banana']}(程序中会删除->再groovy解析),说明不是groovy解析的主要问题,是传输给groovy的公式没有带引号

    3.2、调试:给配置文件的groovy公式带引号

    $->{['apple', 'banana']}

    结果:groovy解析之前,单引号又不见了。

    3.3、调试:groovy解析之前的步骤

    结果:代码读取配置文件到内存后,单引号就不见了。配置文件也不是系统原始的properties文件,而是已经变型了的 yaml文件(名称是rule)存储在电脑的sharding运行目录中

    3.4、调试:properties变型到yaml的过程

    删除之前生成的rule文件,重新生成

    ShardingTableRuleConfigurationYamlSwapper.swapToYamlConfiguration() 
    //到这里  参数中tables还是 $->{['apple', 'banana']}
    

    结果:生成的rule文件中,是$->{['apple', 'banana']}

    应用可以正常启动

    3.4、推测:

    $->{[apple, banana]} 确实会解析失败,

    $->{['apple', 'banana']}可以解析成功。

    应用生成了rule文件, 没有及时更新

    4、总结:

    分片键  groovy公式格式, 

    1)值是数字,可以直接写入 $->{[2022, 2023]}

    2)值是非数字,加单引号,

    =》nacos中写配置:$->{['apple', 'banana']},

    =》项目中写配置加\ ($->{[\'apple\', \'banana\']})

  • 相关阅读:
    PLC梯形图(置位与复位)的使用方法
    SpringGateway 网关
    [C语言经典100例题-67】(指针解决)输入数组,最大的与第一个元素交换,最小的与最后一个元素交换,输出数组
    设置django orm 模型中的字段限制数值的大小
    图解LeetCode——792. 匹配子序列的单词数(难度:中等)
    Session会话追踪的实现机制
    JavaScript中的基础知识挑战
    Flink——监控
    List中的迭代器实现【C++】
    【计算机网络】湖科大学习笔记---计算机网络体系结构
  • 原文地址:https://blog.csdn.net/u010286334/article/details/134027376
  • 最新文章
  • 攻防演习之三天拿下官网站群
    数据安全治理学习——前期安全规划和安全管理体系建设
    企业安全 | 企业内一次钓鱼演练准备过程
    内网渗透测试 | Kerberos协议及其部分攻击手法
    0day的产生 | 不懂代码的"代码审计"
    安装scrcpy-client模块av模块异常,环境问题解决方案
    leetcode hot100【LeetCode 279. 完全平方数】java实现
    OpenWrt下安装Mosquitto
    AnatoMask论文汇总
    【AI日记】24.11.01 LangChain、openai api和github copilot
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1
正则表达式工具 cron表达式工具 密码生成工具

京公网安备 11010502049817号