首页 > 解决方案 > 如何在Java中从头到尾清理空格?

问题描述

我正在使用 REST 学习 Java 8,并且从我的微服务中调用 REST 服务并收到一个 JSON 对象。之后,我需要从头到尾删除空间,然后将其发送到前端。

例如我有这个模型对象:

public class User {
    @JsonProperty("name")
    private String name = null;
    @JsonProperty("education")
    private String education = null;
    @JsonProperty("phone")
    private String phone = null;
    @JsonProperty("age")
    private String age = null;

    public User() {
    }

    ........
}

所以我调用了这个外部服务,我收到了这样的响应:

{
    "name": "  John Book",
    "education": "   Faculty of Computers            ",
    "phone": "00448576948375           ",
    "age": "   20 "
}

现在我需要清理每个字段的开头和结尾的所有空间,并将其转换为:

{
    "name": "John Book",
    "education": "Faculty of Computers",
    "phone": "00448576948375",
    "age": "20"
}

我该如何进行这种实施?谢谢!

标签: javajsonstringjava-8jackson

解决方案


简单地String#trim()在每个字段上使用可能在这里工作。但我建议在您第一次从前端收到 JSON 时,在您坚持后端之前删除空格。将传入的 JSON 编组到 Java POJO 时插入以下行:

User user = ... // marshall from JSON
user.setName(user.getName().trim());
user.setEducation(user.getEducation().trim());
user.setPhone(user.getPhone().trim());
user.setAge(user.getAge().trim());

UI 不想看到这个空白意味着首先将它存储在后端可能没有意义。


推荐阅读