public static PropertyNamingStrategy of(String strategy) {
        if (strategy == null || strategy.isEmpty()) {
            return null;
        }

        switch (strategy) {
            case "Upper":
            case "upper":
                return UpperCase;
            case "Lower":
            case "lower":
                return LowerCase;
            case "Camel":
            case "camel":
                return CamelCase;
            default:
                break;
        }

        for (PropertyNamingStrategy value : values()) {
            if (value.name().equals(strategy)) {
                return value;
            }
        }

        return null;
    }
Using this naming policy with FASTJSON will modify the Java Field name from its camel cased form to a lower case field name where each word is separated by a dot (.).
Here are a few examples of the form "Java Field Name" ---&gt; "JSON Field Name":
someFieldName ---&gt; some.field.name
_someFieldName ---&gt; _some.field.name
aStringField ---&gt; a.string.field
aURL ---&gt; a.u.r.l
Using dots in JavaScript is not recommended since dot is also used for a member sign in expressions. This requires that a field named with dots is always accessed as a quoted property like myobject['my.field']. Accessing it as an object field myobject.my.field will result in an unintended javascript expression.
@since 2.0.7
core/src/main/java/com/alibaba/fastjson2/PropertyNamingStrategy.java