tulip notes
首页
  • 学习笔记

    • 《Vue》
  • 踩坑日记

    • JavaScript
  • MQ
  • Nginx
  • IdentityServer
  • Redis
  • Linux
  • Java
  • SpringBoot
  • SpringCloud
  • MySql
  • docker
  • 算法与设计模式
  • 踩坑与提升
  • Git
  • GitHub技巧
  • Mac
  • 网络
  • 项目构建合集
  • 一些技巧
  • 面试
  • 一些杂货
  • 友情链接
  • 项目发布
收藏
  • 分类
  • 标签
  • 归档
GitHub (opens new window)

Star-Lord

希望一天成为大师的学徒
首页
  • 学习笔记

    • 《Vue》
  • 踩坑日记

    • JavaScript
  • MQ
  • Nginx
  • IdentityServer
  • Redis
  • Linux
  • Java
  • SpringBoot
  • SpringCloud
  • MySql
  • docker
  • 算法与设计模式
  • 踩坑与提升
  • Git
  • GitHub技巧
  • Mac
  • 网络
  • 项目构建合集
  • 一些技巧
  • 面试
  • 一些杂货
  • 友情链接
  • 项目发布
收藏
  • 分类
  • 标签
  • 归档
GitHub (opens new window)
  • 一些技巧

  • 面试

    • 面试问题集锦
    • Java热点经典问题集锦_1
    • Java中类跟数据相关问题_1
    • Java集合相关问题
    • Java并发与异常相关问题
    • Java循环条件判断相关
    • Redis面试题
    • 实际场景问题_1
    • 框架类技术问题集锦-1
    • 开发中遇到的问题_1
    • MySql面试相关
    • Java中业务相关问题
      • 数据相关
        • 定义JavaBean的时候为什么不用int而用Integer?
        • VO类、DTO类、Model类分别代表什么意思
    • 软件测试面试问题
    • 软件测试面试answer
    • Java八股文系列
  • 一些杂货

  • 项目发布

  • 友情链接
  • 更多
  • 面试
EffectTang
2024-03-23
目录

Java中业务相关问题

# Java中业务相关问题

# 数据相关

# 定义JavaBean的时候为什么不用int而用Integer?

在使用ORM(mybatis、hibernate...)对象关系映射框架(object relation mapping)的时候,我们都需要定义一个JavaBean来映射数据表。

当定义成int或Integer类型时,对数据的存储并没有什么影响,可是在获取数据的时候会出现如下问题:

数据库中没有数据,可还是查出了数据。并且id为0,其原因是因为int有默认值为0,所以查询的时候,如果数据库没有数据的话就会查出一条id为0的数据,定义成Integer类型就不会出现上面的情况,因为引用数据类型的默认值是null。

另一方面,int是Java的基本数据类型,不允许为空。因此,如果你尝试将null赋值给int类型的变量,将会出现编译错误或者运行时异常。

此外还有,Java本身就是一个面向对象的编程语言,一切操作都是以对象作为基础,如像ArrayList,HashSet,Hashtable,HashMap等集合类中存储的元素,只支持存储Object类型

# VO类、DTO类、Model类分别代表什么意思

  1. entity里的每一个字段,与数据库相对应 ,有些叫做POJO、PO、
  2. dto里的每一个字段,是和你前台页面相对应 (Data Transfer Object)
  3. VO,这是用来转换从entity到dto,或者从dto到entity的中间的东西 (View Object)
上次更新: 2025/04/23, 16:23:16
MySql面试相关
软件测试面试问题

← MySql面试相关 软件测试面试问题→

最近更新
01
面向切面跟自定义注解的结合
05-22
02
时间跟其他数据的序列化
05-19
03
数据加密与安全
05-17
更多文章>
Theme by Vdoing | Copyright © 2023-2025 EffectTang
  • 跟随系统
  • 浅色模式
  • 深色模式
  • 阅读模式