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

上海机电设备公司网站建设互联网平台排名

上海机电设备公司网站建设,互联网平台排名,阳城做网站,建立网站买空间哪家好日期和时间是每个系统#xff0c;每个数据库设计必不可少的部分。也是容易被大家忽视的部分。很多开发者可能根本不了解以不同类型存储日期和时间意味着什么。有朋友可能会说#xff0c;数据库定义一个datetime或timestamp类型的字段#xff0c;然后在Java代码中获取当前时间… 日期和时间是每个系统每个数据库设计必不可少的部分。也是容易被大家忽视的部分。很多开发者可能根本不了解以不同类型存储日期和时间意味着什么。有朋友可能会说数据库定义一个datetime或timestamp类型的字段然后在Java代码中获取当前时间并存入数据库不就可以了吗Date now 最近设计新系统的数据库涉及到跨时区的问题于是专门调研了不同日期时间类型的利弊也咨询了不少同行使用的情况。这里分享给大家。常见的日期时间使用情况有如下几种字符串、Datetime、Timestamp、Unix timestamp。如果将日期和时间具体拆分细化又可包含DATE、TIME、YEAR这部分我们这里暂且不过多讨论。字符串存储日期把日期和时间当做一个字符串进行存储进而将日期和时间拆分成两个字段一个字段记录日期(如yyyy-MM-dd),另外一个字段存储时间(如HH:mm:ss)的形式。此种方式就不多说除非极个别的场景不建议使用。当使用此种方式进行处理日期不仅性能有问题比较、处理、取范围等都是麻烦事。之所以提出这种方式也是提醒大家如果你的数据库日期字段还在用字符串存储需要慎重考虑一下了。DateTime类型DateTime类型存储的值既有日期又有时间。我们直观看到的格式为yyyy-MM-dd HH:mm:ss。它支持的时间范围是“1000-00-00 00:00:00”到“9999-12-31 23:59:59”。但DateTime中并未存储时区信息只存储了本地时间。也就是说如果你将服务器的时区进行修改数据库中记录的日期和时间并不会对应的变化。那么读出的数据与新存储的数据便是不一致的也可以说是错误的。通常针对此种情况如果涉及到跨时区问题可考虑单独用一个字段来存储时区。Timestamp类型Timestamp类型也是既有日期又有时间的数据。存储和显示的格式跟Datetime一样。支持的时间范围是“1970-01-01 00:00:01”到“2038-01-19 03:14:07”。Timestamp类型不仅存储了日期和时间还存储了时区信息。如果以Timestamp类型存储各数据库的实现会有所不相同有的进行了内部时区自动转换。如果应用服务器的时区和数据库服务器的时区不一致你无法确定数据库驱动程序会不会自动帮你转换。同时时间范围是Timestamp硬伤。Unix timestamp由于时区问题地球上不同地方的人看到太阳升起的时间是不一样的。比如欧洲和北京时差有6-7个小时当早上8点在北京看到太阳时欧洲还处于凌晨1-2点。除了上面所说的通过Timestamp类型存储包含时区的日期和时间外还可以通过“绝对时间”来进行计算单位为秒。在计算机中当前时间是指从一个基准时间(1970-1-1 00:00:00 0:00)到现在的秒数用一个整数表示。在Java编程语言中我们可以通过如下两种方式(这里单位为毫秒)获取System.current那么我们只需要将表示绝对时间的时间戳通过Long类型或float类型保存到数据库中当不同时区使用时直接格式化成对应的字符串就可以了。对应数据库类型为Bigint或float。关于使用绝对时间戳的好处有以下几项1、数据存储的时区问题不存在了只是一个绝对的数值。2、比较时也很简单只用比较两个数值的大小或范围即可范围可采用between(?, ?)形式的SQL。3、显示问题也很容易处理各个展示端只需要根据所在时区对数值进行转换即可即便是JavaScript也能正常处理。有朋友可能会说数据库的可读性太差。在调研时我也遇到类似的疑问后来咨询了架构师的朋友他说mysql提供了丰富的函数可以进行转换。上图中数据库存储的是毫秒数通过FROM_UNIXTIME函数在查询时将其转换成指定格式即可。如果你的数据库存储的单位为秒则在SQL中无需除以1000。关于日期时间的其他事项为了调研数据库日期和时间的设置也参考了阿里的开发手册令人疑惑的是阿里使用的竟然是datetime类型。后来跟PayPal的朋友沟通之后便豁然开朗了。他说阿里的开发手册在我们公司只做参考。的确如此毕竟每个公司的业务范围不同使用场景也不同。优秀的理念可以参考但不能照搬。就好比本篇文章介绍了不同类型的日期和时间存储而根据你的业务场景选择最适合的那便是最好的。我这里最终决定用绝对时间戳来进行处理。推荐阅读为什么新出的《阿里Java开发手册》都要读一读Idea自动生成代码神器EasyCode让你如虎添翼偷看了隔壁老王的文章发现String拼接另有天地聊聊工作程序新视界一个“软实力”“硬技术”同步成长的公众号长按识别二维码关注公众号
http://www.yutouwan.com/news/35992/

相关文章:

  • 新站seo优化快速上排名深圳网站建设top028
  • 哪的网页设计培训好在线看seo网站
  • 网站建设方案书ppt东莞 营销网站建设
  • 网站开发流程百度文库discuz网站模板
  • 盱眙住房和城乡建设局网站公司建站比较好的
  • 可拖拽建设网站没有了吗兰州的互联网公司有哪些
  • win7做网站服务器顺德 网站开发 招聘
  • 免费企业黄页网站网址wordpress分类文章排序
  • 建设能源官方网站品牌建设的步骤
  • 举报网站建设情况总结如何做营销
  • 物业服务网站建设建站官网
  • 郑州企业网站快速优化多少钱建个商城网站多少钱
  • 微信小程序制作宣传页东莞seo关键字优化
  • 营销推广的渠道关键词搜索引擎优化推广
  • 兼职做任务的网站电子信息工程专业招聘信息网
  • 网站电脑培训班附近有吗网站出现转站怎么办
  • 网站建设 工业 青岛企业年报网上申报入口免费官方
  • 唐山市住房和城乡建设局网站网站无域名注册人id
  • php网站建设原码物流网站设计论文
  • 已有网站做google推广企业信用不良记录查询
  • 广州网站建设说说外链的建设wordpress官方论坛
  • 做淘宝客网站的流程知乎 上海做网站的公司
  • 常见网站页面布局类型机械网站建设哪家好
  • 长春专业网站建设公司排名北京网站建设知名公司
  • 清远seo站内优化网站乱码解决办法
  • 旅游网站案例分析简单网页设计模板html
  • 网站优化含义青岛高新区建设局网站
  • 做论坛网站 备案吗wordpress小说网自动采集
  • 山东网站seo开发上海 房地产网站建设
  • 云南网站建设模块怎么运营一个淘宝店铺