当前位置: 首页 > article >正文

MySQL数据类型 与 Java实体类类型 的对应关系

MySQL数据类型 与 Java实体类类型 的对应关系

以下MySQL数据库中常用的数据类型、对应的Java实体类类型以及具体的例子:

MySQL数据类型描述Java实体类类型举例说明
TINYINT迷你整型,通常用于存储非常小的整数byte或Integer例如:存储年龄,值为0-255之间的整数
SMALLINT小整型,用于存储较小的整数Short或Integer例如:存储学生人数,值为-32,768到32,767之间的整数
MEDIUMINT中整型,用于存储中等大小的整数Integer例如:存储中等规模的项目ID,值为-8,388,608到8,388,607之间的整数
INT(INTEGER)标准整型,用于存储常用的整数Integer例如:存储用户ID,值为-2147483648 到 2147483 647之间的整数
BIGINT大整型,用于存储非常大的整数Long例如:存储订单ID,值为-9233372036854775808 到 -9233372036854775807之间的整数
FLOAT单精度浮点类型,用于存储小数Float例如:存储商品价格,值为3.14这样的浮点数
DOUBLE双精度浮点类型,用于存储需要更高精度的小数Double例如:存储科学计算中的结果,值为3.141592653589793这样的高精度浮点数
DECIMAL定点小数类型,用于存储精确的十进制数BigDecimal例如:存储财务数据,值为12345.6789这样的精确小数
YEAR年份类型,用于存储年份Integer或String例如:存储出生年份,值为2000这样的整数,或在字符串格式下为"2000"
TIME时间类型,用于存储一天中的时间LocalTime例如:存储会议开始时间,值为14:30:00这样的时间
DATE日期类型,用于存储日期LocalDate例如:存储生日,值为2023-04-01这样的日期
DATETIME日期和时间类型,用于存储日期和时间LocalDateTime例如:存储事件发生的日期和时间,值为2023-04-01 14:30:00这样的日期和时间
TIMESTAMP时间戳类型,用于存储从1970-01-01 00:00:01 UTC到现在的秒数Timestamp例如:存储记录创建时间,值为2023-04-01 14:30:00这样的时间戳(在Java中通常以Timestamp对象表示)
CHAR固定长度字符串,用于存储固定长度的文本String例如:存储国家代码,值为"CN"这样的固定长度字符串
VARCHAR可变长度字符串,用于存储可变长度的文本String例如:存储用户名,值为"user123"这样的可变长度字符串
TEXT长文本类型,用于存储大段文本String例如:存储文章内容,值为大段的文本数据
ENUM枚举类型,用于存储一组预定义的字符串值之一Enum(自定义)例如:存储性别,值为"MALE"或"FEMALE"这样的枚举值(在Java中需要定义对应的枚举类)
SET集合类型,用于存储一组预定义的字符串值String或自定义类型集合例如:存储用户兴趣爱好,值为"SPORTS,MUSIC"这样的字符串集合(在Java中可以使用String表示,或使用自定义的集合类)
BINARY固定长度二进制数据,用于存储固定长度的二进制数据byte[]例如:存储图片的二进制数据(固定长度)
VARBINARY可变长度二进制数据,用于存储可变长度的二进制数据byte[]例如:存储用户上传的文件(可变长度)
BLOB二进制大对象,用于存储大量二进制数据byte[]或InputStream例如:存储视频文件的二进制数据(大对象)
BIT(1)位字段,通常用于存储布尔值(0表示false,1表示true)Boolean例如:存储用户是否已激活账户,值为 false 或 true(BIT类型 和 布尔类型 存在自动转换关系,具体请往下看
JSONJSON类型数据,用于存储JSON格式的数据String或自定义JSON对象例如:存储用户配置信息,值为{"name": "user123", "age": 30}这样的JSON字符串(在Java中可以使用String表示,或使用自定义的JSON对象类)

BIT类型 和 布尔类型自动转换关系
在MySQL中使用BIT(1)类型存储的数据(0或1)与Java实体类中booleanBoolean类型的数据(falsetrue)之间存在自动的转换关系。

  1. 从数据库到Java实体类的转换
    * 当您从MySQL数据库中检索BIT(1)类型的数据时,如果字段的值为0,那么JDBC驱动程序会自动将其转换为Java中的false
    * 如果字段的值为1,那么JDBC驱动程序会自动将其转换为Java中的true
  2. 从Java实体类到数据库的转换
    * 当您使用Java实体类中的数据更新MySQL数据库中的BIT(1)字段时,如果实体类中对应的booleanBoolean字段的值为false,那么JDBC驱动程序会自动将其转换为0并存储到数据库中。
    * 如果实体类中对应的字段的值为true,那么JDBC驱动程序会自动将其转换为1并存储到数据库中。

http://www.kler.cn/news/360410.html

相关文章:

  • 开始在线课程管理系统的初始化工作,搭建Vue.js和Node.js的开发环境。
  • 实现了一个基于 OpenFOAM 的强化学习环境类OpenFoam,用于模拟流体动力学问题并与智能体进行交互
  • 027_基于Node JS+Vue校园二手物品交易平台设计和实现
  • Elasticsearch文本分析器
  • 【动手学深度学习】8.1. 序列模型(个人向笔记)
  • Java基础15-Java高级(单元测试、反射、注解、动态代理)
  • Substrate 网络层深度解读:libp2p 助力去中心化点对点高效通信
  • 百元以内蓝牙耳机什么牌子好?2024年十大建议买的蓝牙耳机
  • 基于Aspose依赖添加自定义文本水印——Word、Pdf、Cell
  • 字节 HLLM 论文阅读
  • MySQL-17.DQL-案例
  • 【C#】在 WinForms 中使用 MVVM(Model-View-ViewModel) 设计模式
  • 15分钟学Go 第2天:安装Go环境
  • 解构OpenAI swarm:利用Cursor进行框架分析与示例运行
  • Apache Paimon Catalog
  • 拍立淘按图搜索API接口是什么?
  • 【大数据算法】一文掌握大数据算法之:大数据算法设计技术。
  • Android 设置控件为圆形
  • 云原生:一张图了解devops 中CI/CD
  • 私域流量运营的误区