gpt4 book ai didi

java - 我应该为固定宽度数字使用什么字段类型?

转载 作者:行者123 更新时间:2023-11-29 00:56:52 25 4
gpt4 key购买 nike

我的对象中有一个字段需要固定宽度并且只能是数字。它将保存诸如 0002、0103 或 1212 之类的值。目前,我的 Java 对象将此字段定义为字符串,数据库 (MySQL) 是一个整数,填充为 4 个字符:laborCode int(4) zerofill 。我还有几个具有相同模式的其他表,一些有两个字符,一些有四个。这些表是通过自动编号主键链接到其他表的查找表。

在前端,当用户向表中添加数据时,我有一些预先存在的验证来确保用户输入一个数字,所以他们只需输入 2、103 或 1212。​​当数据是插入后,我不需要任何代码来填充数据,选择语句返回填充后的值。

创建表后,我开始考虑也许我应该将字段定义为字符:laborCode char(4)。如果我这样定义它,我需要正确地格式化数据,使用对象的 setter 方法应该很容易。这种方式对我来说似乎更正确一些,我的 java 对象中的字符串值映射到数据库中的字符串值。

与另一种数据类型相比,使用一种数据类型定义字段有什么优势/劣势吗?

最佳答案

就个人而言,我喜欢将数字保留为数据库中的数字。您可以轻松地对它们进行排序/执行其他数字操作。此外,绝不会意外插入字母表。

您始终可以在域对象 setter 中使用 NumberFormat 以确保数字的格式正确,以便对象受益。

关于java - 我应该为固定宽度数字使用什么字段类型?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5711174/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com