【Java】编码中使用String.format()前缀自动自动填充,理清思路,少掉坑。
最近碰见了一个需求,我觉得在这里有必要和大家们分享一下:
需要一个13位编码,初始为0000000000001,增加需求+1为0000000000002。
在这里自己就陷入自己的牛角尖中,总是想着数据库如何存储这样的编码呢。
首先,13位要用bigint数据,不够前缀要填充零,在数据中设置当然可以实现,可是使用mybatis时,实体类设置成Long还是String呢?
如果Long那么前缀的零会自动消失,想要的功能不能实现。
如果是String类型不能数据绑定,这是会想用 标签进行数据映射处理,可是使用mybatis-plus呢,写个增删改查就要写一个映射会不会太麻烦了,写的多了自己就麻木了。
最终,跳出自己的牛角尖,为什么要在数据库中增加一个额外的字段呢,为什么不能用id字段来进行代替呢,只需要让id设置为自动递增,以及bigint类型即可,而我们进行数据处理时,在查出的数据上,进行一个封装,让其转化成13位的字符串即可。
代码:
String result = String.format("%013d",Long.valueOf("123456789")+1);
【Java】编码中使用String.format()前缀自动自动填充,理清思路,少掉坑。相关推荐
- Java 7中对String.substring的更改
众所周知,在您生成相同源字符串的许多子字符串的情况下,Java会优化子字符串操作. 它通过使用(value, offset, count)存储信息的方式来做到这一点. 请参阅以下示例: 在上图中,您会 ...
- 【转】Java魔法堂:String.format详解
Java魔法堂:String.format详解 目录 一.前言 二.重载方法 三.占位符 四.对字符.字符串进行格式化 五.对整数进行格式化 六.对 ...
- java字符串格式化:String.format()方法的使用
String类的format()方法用于创建格式化的字符串以及连接多个字符串对象.熟悉C语言的读者应该记得C语言的sprintf()方法,两者有类似之处.format()方法有两种重载形式. l ...
- 我的Android进阶之旅------Java字符串格式化方法String.format()格式化float型时小数点变成逗号问题...
今天接到一个波兰的客户说有个APP在英文状态下一切运行正常,但是当系统语言切换到波兰语言的时候,程序奔溃了.好吧,又是我来维护. 好吧,先把系统语言切换到波兰语,切换到波兰语的方法查看文章 我的And ...
- java leftpad_Java中实现String.padLeft和String.padRight的示例
因为习惯了C#中的padLeft和padRight,接触Java后突然失去这两个功能,觉得别扭,就试着实现了这两个方法. Java中String.format()中带有字符串对齐功能如下: Syste ...
- java里format报错,我的Android进阶之旅------Java字符串格式化方法String.format()格式化float型时小数点变成逗号问题...
今天接到一个波兰的客户说有个APP在英文状态下一切运行正常,但是当系统语言切换到波兰语言的时候,程序奔溃了.好吧,又是我来维护. 好吧,先把系统语言切换到波兰语,切换到波兰语的方法查看文章 地址:ht ...
- 在Java编码中,如何减少bug数量
众所周知,Java编程语言在IT行业是企业中不可缺少的.不管,从Web应用到Android应用,这款语言已经被广泛用于开发各类应用及代码中的复杂功能.但在编写代码时,bug永远是困扰每一位从业者的头号 ...
- Java中利用MessageFormat对象实现类似C# string.Format方法格式化
我们在写C#代码的时候常常会使用到string.Format("待格式化字符串{0},{1},....",参数1,参数2,...),来格式化字符串,特别是拼接字符的时候,这种方式使 ...
- Java 8中的StringJoiner与String.join的示例
将多个String文字或对象合并为一个是常见的编程要求,并且经常会发现需要为应用程序将String列表或String集合转换为CSV String的情况. 长期以来,JDK API无法将多个Strin ...
最新文章
- POJ 1860	Currency Exchange
- mybatis学习7 实战项目
- 深度 | 人工智能的游戏征途:超级玛丽简直小菜一碟,星际争霸、LOL才是大boss...
- excel函数SUMPRODUCT
- SparkSQL愿景
- C语言高级编程:二级指针的赋值
- linux shell之awk
- python2.7如何安装库_python 2.7 安装目录python如何连接数据库
- win10系统更新在哪_五步教你win10永久关闭系统自动更新
- JVM GC(垃圾回收机制)
- HDU 1210 Eddy's 洗牌问题(foj1062) || FOJ1050 Number lengths水
- 正点原子STM32F429阿波罗板,固件库工程搭建
- python淘宝cookies抢购_Python爬虫利用cookie抓取淘宝商品比价
- Praat脚本-011 | 绘制元音分布图
- R语言中的Factor到底是什么?
- 神经网络有趣案例_特斯拉高管揭秘自动驾驶技术:48种神经网络上阵,最多可检测1000种物体...
- 双鱼座三:舞者与梦想家的一周
- 长为一名JAVA架构师2017-10-16 2
- 大疆无人机,赛尔倾斜相机,合作打造高效行业应用解决方案
- eclipse不能运行java程序吗_eclipse打开不能运行Java程序怎么回事啊?