### 版本情况

JDK版本：oracle jdk1.8.0_301
hutool版本：5.8.12（请确保最新尝试是否还有问题）
                     新版依然存在，只不过因为 ”issue#3286, 增加安全检查，最多增加10倍“，无法传入太大的数字字符串

### 问题描述（包括截图）
这个问题是因为 cn.hutool.json.JSONObject#putByPath 方法调用 BeanPath 类解析 Bean 路径表达式，而有的业务需求把json key 作为数字字符串传入，导致解析时把其作为集合对应的index值，从而出现集合中 add 了很多 null 值。BeanPath 类本质处理逻辑没有问题，因为 Bean 字段名不可能是纯数字，但 json 中可能出现纯数字的字符串作为 key。
详细情况，如下图：
<img width="877" alt="1714308312307" src="https://github.com/dromara/hutool/assets/60088111/a982d72f-98e1-458e-8965-8cb3156b5bb7">

1. 复现代码

```java
        JSONObject result = JSONUtil.createObj(JSONConfig.create().setIgnoreNullValue(false));

        List<BigDecimal> values = ListUtil.of(BigDecimal.ONE, BigDecimal.ZERO, BigDecimal.TEN, BigDecimal.ZERO);
        for (int i = 0; i < values.size(); i++) {
            BigDecimal decimal = values.get(i);
            result.putByPath(String.format("%s.%s[%d].name", "aa", "123", i), DateUtil.format(new Date(), DatePattern.NORM_DATE_PATTERN));
            result.putByPath(String.format("%s.%s[%d].value", "aa", "123", i), decimal);
        }

        System.out.println(result);
```

2. 堆栈信息
<img width="602" alt="1714308206449" src="https://github.com/dromara/hutool/assets/60088111/b8b08f5b-917a-4e2e-86af-8dfd33e8442d">

3. 测试涉及到的文件（注意脱密）
（无）
.JSONObject#putByPath 方法传入的路径表达式中存在纯数字字符串生成的 json 对象有问题
This is a GitHub Issue
repo:hutool
owner:dromara
Title : .JSONObject#putByPath 方法传入的路径表达式中存在纯数字字符串生成的 json 对象有问题
Issue date:

--- start body ---
### 版本情况

JDK版本：oracle jdk1.8.0_301
hutool版本：5.8.12（请确保最新尝试是否还有问题）
                     新版依然存在，只不过因为 ”issue#3286, 增加安全检查，最多增加10倍“，无法传入太大的数字字符串

### 问题描述（包括截图）
这个问题是因为 cn.hutool.json.JSONObject#putByPath 方法调用 BeanPath 类解析 Bean 路径表达式，而有的业务需求把json key 作为数字字符串传入，导致解析时把其作为集合对应的index值，从而出现集合中 add 了很多 null 值。BeanPath 类本质处理逻辑没有问题，因为 Bean 字段名不可能是纯数字，但 json 中可能出现纯数字的字符串作为 key。
详细情况，如下图：
<img width="877" alt="1714308312307" src="https://github.com/dromara/hutool/assets/60088111/a982d72f-98e1-458e-8965-8cb3156b5bb7">

1. 复现代码

```java
        JSONObject result = JSONUtil.createObj(JSONConfig.create().setIgnoreNullValue(false));

        List<BigDecimal> values = ListUtil.of(BigDecimal.ONE, BigDecimal.ZERO, BigDecimal.TEN, BigDecimal.ZERO);
        for (int i = 0; i < values.size(); i++) {
            BigDecimal decimal = values.get(i);
            result.putByPath(String.format("%s.%s[%d].name", "aa", "123", i), DateUtil.format(new Date(), DatePattern.NORM_DATE_PATTERN));
            result.putByPath(String.format("%s.%s[%d].value", "aa", "123", i), decimal);
        }

        System.out.println(result);
```

2. 堆栈信息
<img width="602" alt="1714308206449" src="https://github.com/dromara/hutool/assets/60088111/b8b08f5b-917a-4e2e-86af-8dfd33e8442d">

3. 测试涉及到的文件（注意脱密）
（无）
--- end body ---
