想必我们在处理数据时常常会遇见需要的数据类型与数据库里的数据类型对应不上的情况,本文会举几个典型的例子来记录如何处理这种情况!
XML层处理
数据库数据类型为date
我们需要得到这二个时间的差值,显然date类型时是没办法做加减的
通过把date类型先转换为string类型,再将string类型转换为integer做加减计算
以上运用了to_char强制转换以及cast as强制转换
更多关于to_char的用法详情:https://blog.csdn.net/master_yao/article/details/51201507
更多关于cast as的用法详情:https://blog.csdn.net/qidasheng2012/article/details/84862266
还有一种把date自动转换为string进行拼接的方法
用法详情:https://www.jianshu.com/p/de4fbaf10278
service层处理
数据库类型为int
我们从数据库通过id拿到它的对应数据存在一个列表里
前端反馈给我们一个全是id值的string字符串
此处其实应该反馈给我们一个全是id值的list列表,但是考虑到本身我们id从数据库携带的信息就是一个list,会导致我们必须在service层用map来处理这二个列表会比较麻烦。所以这里取巧将list强转为string类型
下图我们使用split方法将得到的string类型列表用,号隔开,在进行循环这样我们就得到了关于id值的string字符串
再使用Integer.parseInt(landIdNos[i])将每次的string:id转换为int:id