【问题标题】:Spring StringTrimmerEditor not trimming the whitespacesSpring StringTrimmerEditor 不修剪空格
【发布时间】:2019-07-21 14:48:47
【问题描述】:

我正在为我的 rest-api 创建一个注册端点。为此,我需要使用 StringTrimmerEditor。我的 initBinder 方法每次都会被调用。但是空格还是超过了端点。

我有其他项目的相同代码,它在那里完美运行,但这次不行!

RestController-

    @InitBinder
    public void initBinder(WebDataBinder dataBinder){
        dataBinder.registerCustomEditor(String.class, new StringTrimmerEditor(true));
    }

如果用于注册,我将 json 传递为: { “用户名”:“嘿”, “密码”: ” ” } 有空格

它使用相同数量的空格注册相同的字符串

【问题讨论】:

    标签: spring-boot spring-security bean-validation spring-rest spring-validator


    【解决方案1】:

    好吧,刚刚知道@InitBinder 不能与@RequesBody 一起使用,它可以与@Model Annotation 一起使用。但是,如果您愿意,您可以像完成here 一样自定义配置。

    【讨论】:

      【解决方案2】:

      据我所知,StringTrimEditor 不会自动删除空格,您必须指定要删除的字符。

      StringTrimmerEditor(String charsToDelete, boolean emptyAsNull)
      Create a new StringTrimmerEditor like this.
      

      按照下面的方式进行更改就可以了

      @InitBinder
          public void initBinder(WebDataBinder dataBinder){
              dataBinder.registerCustomEditor(String.class, new StringTrimmerEditor(" ", true));
          }
      

      【讨论】:

        猜你喜欢
        • 2012-01-28
        • 2017-10-23
        • 1970-01-01
        • 2011-03-23
        • 2014-12-25
        • 1970-01-01
        • 1970-01-01
        • 2016-05-08
        • 1970-01-01
        相关资源
        最近更新 更多