import com.fasterxml.jackson.databind.PropertyNamingStrategy.PropertyNamingStrategyBase;
public class MyCamemlToUnderlineCaseStrategy extends PropertyNamingStrategyBase {
private static final long serialVersionUID = 1L;
@Override
public String translate(String input) {
if (input == null)
return input; // garbage in, garbage out
int length = input.length();
StringBuilder result = new StringBuilder(length * 2);
int resultLength = 0;
boolean wasPrevTranslated = false;
for (int i = 0; i < length; i++) {
char c = input.charAt(i);
if (i > 0 || c != '_') // skip first starting underscore
{
if (c == '_') {
if (!wasPrevTranslated && resultLength > 0 && !Character.isUpperCase(result.charAt(resultLength - 1))) {
if (++i < length) {
result.append(Character.toUpperCase(input.charAt(i)));
result
JSON 驼峰转下划线
最新推荐文章于 2024-07-29 13:45:06 发布
本文介绍如何在Java中将JSON对象的驼峰式键转换为下划线分隔的键。讨论了使用Jackson库和手动转换的方法,包括示例代码和应用场景。
摘要由CSDN通过智能技术生成