fix: 命名策略不剥除前导下划线(_name 原样输出 _name)
- applyNamingPolicy 不再去掉字段名前导 _,策略只影响字母大小写 - @JsonPropertyName 仍可覆盖(_alias → user_alias) - 测试改为 _ 前缀字段并验证原样输出
This commit is contained in:
@@ -78,16 +78,14 @@ public class ReflectionCache {
|
|||||||
|
|
||||||
/**
|
/**
|
||||||
* 应用属性命名策略。
|
* 应用属性命名策略。
|
||||||
|
* 说明:不剥除字段名前导下划线——`_name` 原样输出 `_name`;
|
||||||
|
* 策略只影响字母大小写(CamelCase 首字母小写、SnakeCase 大写转下划线)。
|
||||||
*/
|
*/
|
||||||
public static func applyNamingPolicy(fieldName: String, policy: PropertyNamingPolicy): String {
|
public static func applyNamingPolicy(fieldName: String, policy: PropertyNamingPolicy): String {
|
||||||
var name = fieldName
|
|
||||||
while (name.startsWith("_")) {
|
|
||||||
name = name[1..]
|
|
||||||
}
|
|
||||||
match (policy) {
|
match (policy) {
|
||||||
case PropertyNamingPolicy.None => name
|
case PropertyNamingPolicy.None => fieldName
|
||||||
case PropertyNamingPolicy.CamelCase => toCamelCase(name)
|
case PropertyNamingPolicy.CamelCase => toCamelCase(fieldName)
|
||||||
case PropertyNamingPolicy.SnakeCase => toSnakeCase(name)
|
case PropertyNamingPolicy.SnakeCase => toSnakeCase(fieldName)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user