• Spring表单参数绑定中对“is”开头的boolean类型字段的的处理


    之前在新浪微博上面发了一个微薄:

      弱弱的发现在定义boolean类型的时候最好不要使用“is”开头,可以避免一些问题哦

    然后有一些朋友朋友问我为什么,当时比较忙,现在写篇文章举一个例子,回复一下这个问题。

    最近在使用Spring MVC的时候vo定义了一个字段,一开始字段名字为:isAddCertificateInfo, 相应的get和set方法如下:

       public boolean isAddCertificateInfo() {
            return isAddCertificateInfo;
        }
    
        public void setAddCertificateInfo(boolean isAddCertificateInfo) {
            this.isAddCertificateInfo = isAddCertificateInfo;
        }

    而前端form表单中定义的为: 

    <input type="hidden" name="isAddCertificateInfo" id="isAddCertificateInfo" value="true"/>

      

    但是测试发现后端一直拿不到值。然后我就想起了以前在使用某个框架提供的BeanUtil进行属性复制时候遇到的问题,当时就是因为boolean类型字段以is开头。

    后来我尝试性的将这个字段名字改为了:addCertificateInfo,然后增加get和set方法:

      public boolean isAddCertificateInfo() {
            return addCertificateInfo;
        }
    
        public void setAddCertificateInfo(boolean addCertificateInfo) {
            this.addCertificateInfo = addCertificateInfo;
        }

      

    这样修改了之后,就可以在后端接收到值了。

  • 相关阅读:
    未能正确加载“Microsoft.VisualStudio.Editor.Implementation.EditorPackage”包
    Only one instance of a ScriptManager can be added to the page.
    springboot SSM
    spring mvc 请求转发和重定向
    Spring Boot 配置 Swagger2 接口文档引擎
    solr
    jQuery
    反向代理负载均衡-Nginx
    mybatis二级缓存
    Vue的路由
  • 原文地址:https://www.cnblogs.com/rollenholt/p/3863617.html
Copyright © 2020-2023  润新知