zoukankan      html  css  js  c++  java
  • pojo类对应的就是数据库中的表,pojo类属性类型一定要用包装类Integer等

    pojo类对应的就是数据库中的表,pojo类属性类型一定要用包装类Integer等

    pojo类对应的就是数据库中的表,pojo类属性类型一定要用包装类Integer等

    pojo类对应的就是数据库中的表,pojo类属性类型一定要用包装类Integer等

    如果值有可能是空  就必须用包装类

    如果值有可能是空  就必须用包装类

    如果值有可能是空  就必须用包装类

    如果值有可能是空  就必须用包装类

    手册给出的解释如下:

    说明:POJO 类属性没有初值是提醒使用者在需要使用时,必须自己显式地进行赋值,任何NPE 问题,或者入库检查,都由使用者来保证。

    正例:数据库的查询结果可能是 null,因为自动拆箱,用基本数据类型接收有 NPE 风险。

    反例:比如显示成交总额涨跌情况,即正负 x%,x 为基本数据类型,调用的 RPC 服务,调用不成功时,返回的是默认值,页面显示:0%,这是不合理的,应该显示成中划线-。所以包装数据类型的 null 值,能够表示额外的信息,如:远程调用失败,异常退出。

    手册给出的解释如下:

    说明:POJO 类属性没有初值是提醒使用者在需要使用时,必须自己显式地进行赋值,任何NPE 问题,或者入库检查,都由使用者来保证。

    正例:数据库的查询结果可能是 null,因为自动拆箱,用基本数据类型接收有 NPE 风险。

    反例:比如显示成交总额涨跌情况,即正负 x%,x 为基本数据类型,调用的 RPC 服务,调用不成功时,返回的是默认值,页面显示:0%,这是不合理的,应该显示成中划线-。所以包装数据类型的 null 值,能够表示额外的信息,如:远程调用失败,异常退出。

    简单来说就是我们如果自定义了一个Student类,其中有一个属性是成绩score,如果用Integer而不用int定义,一次考试,学生可能没考,值是null,也可能考了,但考了0分,值是0,这两个表达的状态明显不一样

    简单来说就是我们如果自定义了一个Student类,其中有一个属性是成绩score,如果用Integer而不用int定义,一次考试,学生可能没考,值是null,也可能考了,但考了0分,值是0,这两个表达的状态明显不一样

    我也没有仔细推敲过
    但是觉得有以下几个方面:
    1. 如果这个字段可以为空,那么就用封装类型,这样的话可以得到NULL ,而不是 0 或者其他值
    2. 如果使用封装类型的话,在做po的比较的时候 ,特别是该属性的比较的时,一定要用equals或者用他们的 value来比较, 因为是对象
    3. 其实还是根据实际情况来做判断 没有优劣 只有适不适合

    Java的封装类型和原始类型的区别?那种性能好?

    Java的封装类型和原始类型的区别?在JavaWeb程序当中,pojo(javabean)实体类中,是声明为封装类型好还是原始类型好?(比如:int-Integer)  
    例如:  
    复制代码
    public class User{
    private int id;
    private Integer id1;
    }
     
    int 默认初始化为0;Integer初始化为null;  
    如果在web前端通过ajax请求到后台的时候,参数传递为 id=&di1=  
    后台获取参数值时:  
    id=1  
    id1=null  
    然后,保存到数据库时,Integer是不是要拆包为int类型?  
    请问声明为那种类型更好,更适合程序的处理和性能?  
     
    请问各位Java大神分析分析,求指导!

  • 相关阅读:
    打成jar包运行,依然可以找到指定路径的xml
    Springboot整合Ehcache 解决Mybatis二级缓存数据脏读 -详细
    Handler dispatch failed; nested exception is java.lang.NoClassDefFoundError: org/dom4j/io/SAXReader
    Springboot + Mybatis + Ehcache
    Failed to configure a DataSource: 'url' attribute is not specified and no embedded datasource could be configured. Reason: Failed to determine a suitable driver class
    缓存的设计与使用
    一二级缓存
    HttpServletResponse 返回的json数据不是json字符串,而是json对象
    消息中间件选型
    为什么要使用MQ消息中间件?
  • 原文地址:https://www.cnblogs.com/panxuejun/p/7279493.html
Copyright © 2011-2022 走看看