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

白银市城乡建设局网站庞馨妩深圳做自适应网站公司

白银市城乡建设局网站庞馨妩,深圳做自适应网站公司,广东网站制作平台,广州抖音seo公司介绍 在SpringBoot项目中#xff0c;接口中的日期和时间类型的参数#xff0c;配置格式。 日期格式 接口中常用的日期时间格式有两种#xff1a; 字符串#xff08;比如#xff1a;yyyy-MM-dd HH:mm:ss#xff09;时间戳#xff08;比如#xff1a;1696839876955接口中的日期和时间类型的参数配置格式。 日期格式 接口中常用的日期时间格式有两种 字符串比如yyyy-MM-dd HH:mm:ss时间戳比如1696839876955 这两种方式各有优势。 字符串格式表示时间直观清晰便于识别出时间。但是字符串格式存在时区问题需要在字段中描述出时区SpringMVC的默认时间格式中带有时区或者前后端规定好默认时区比如东八区GMT8。时间戳用数字表示时间准确定位时间不存在时区问题。缺点是不够直观无法直接识别出时间戳对应的具体时间需要转换不便于从接口直接判断时间是否正确测试比较费时费力。 格式配置 日期参数的格式可以配置。分为全局配置和局部配置。 全局配置作用于项目全局的时间参数。局部配置只作用于配置的字段覆盖全局配置其余字段不受影响。 全局配置 Query时间入参使用字符串 配置 spring:mvc:format:# Query参数时间格式转换 java.util.Datedate: yyyy-MM-dd HH:mm:ssQuery参数实体示例 Query参数使用 java.util.Date 类型接收。 package com.example.web.exception.query;import com.example.core.validation.phone.query.PhoneQuery; import io.swagger.v3.oas.annotations.media.Schema; import lombok.Data; import org.springdoc.api.annotations.ParameterObject;import java.util.Date;Data ParameterObject Schema(name 用户Query) public class UserQuery {// 其他字段Schema(description 开始时间, example 2023-01-01 08:30:00)private Date beginTime;Schema(description 结束时间, example 2023-12-31 17:00:00)private Date endTime;} 接口调用成功 日期格式正确接口调用成功。 打印日志 查询用户列表。userQueryUserQuery(namenull, phonenull, beginTimeSun Jan 01 08:30:00 GMT08:00 2023, endTimeSun Dec 31 17:00:00 GMT08:00 2023, beginDatenull, endDatenull)pageQueryPageQuery(pageNumber1, pageSize10) 接口调用失败 接口输入必须符合格式否则会调用失败报出异常。 Body时间入参和响应时间出参 默认响应中的时间参数会转换成字符串默认时间格式举例 2023-10-10T01:31:03.27900:00 配置 目标格式为yyyy-MM-dd HH:mm:ss东八区。 spring:jackson:# Body参数和响应时间格式转换 java.util.Datedate-format: yyyy-MM-dd HH:mm:sstime-zone: GMT8Body时间入参UserEditParam package com.example.web.response.model.param;import com.example.core.validation.phone.strict.Phone; import com.fasterxml.jackson.annotation.JsonFormat; import io.swagger.v3.oas.annotations.media.Schema; import lombok.Data;import javax.validation.constraints.Email; import javax.validation.constraints.NotBlank; import javax.validation.constraints.NotEmpty; import java.util.Date;Data Schema(name 编辑用户Param) public class UserEditParam {// 其他字段JsonFormat(pattern yyyy-MM-dd)Schema(description 开始日期, example 2023-01-01)private Date beginDate;JsonFormat(pattern yyyy-MM-dd)Schema(description 结束日期, example 2023-12-31)private Date endDate;}效果 接口调用 控制台打印参数 新增用户Post请求。paramUserAddParam(name张三, phone18612345678, emailzhangsanexample.com, beginTimeSun Jan 01 08:30:00 CST 2023, endTimeSun Dec 31 17:00:00 CST 2023) 响应时间出参UserVO package com.example.web.model.vo;import io.swagger.v3.oas.annotations.media.Schema; import lombok.Data;import java.util.Date;Data Schema(name 用户VO) public class UserVO {// 其他字段Schema(description 开始时间, example 2023-01-01 01:20:30)private Date beginTime;Schema(description 结束时间, example 2023-01-01 01:20:30)private Date endTime;} 效果 响应时间出参时间戳 配置 spring:jackson:serialization:# 时间字段java.util.Date返回时间戳。注意此配置会覆盖掉 spring.jackson.date-format 。write-dates-as-timestamps: true效果 响应时间出参为时间戳格式。 局部配置 Query时间入参局部格式 Query时间入参如果某个字段需要的时间格式和全局不相同可以配置这个字段的自定义的入参格式。 使用注解DateTimeFormat 配置示例 package com.example.web.exception.query;import com.example.core.validation.phone.query.PhoneQuery; import io.swagger.v3.oas.annotations.media.Schema; import lombok.Data; import org.springdoc.api.annotations.ParameterObject; import org.springframework.format.annotation.DateTimeFormat;import java.util.Date;Data ParameterObject Schema(name 用户Query) public class UserQuery {// 其他字段DateTimeFormat(pattern yyyy-MM-dd)Schema(description 开始日期, example 2023-01-01)private Date beginDate;DateTimeFormat(pattern yyyy-MM-dd)Schema(description 结束日期, example 2023-12-31)private Date endDate;} 效果 Body时间入参局部格式 使用注解JsonFormat 配置示例 package com.example.web.response.model.param;import com.example.core.validation.phone.strict.Phone; import com.fasterxml.jackson.annotation.JsonFormat; import io.swagger.v3.oas.annotations.media.Schema; import lombok.Data;import javax.validation.constraints.Email; import javax.validation.constraints.NotBlank; import javax.validation.constraints.NotEmpty; import java.util.Date;Data Schema(name 编辑用户Param) public class UserEditParam {// 其他字段JsonFormat(pattern yyyy-MM-dd)Schema(description 开始日期, example 2023-01-01)private Date beginDate;JsonFormat(pattern yyyy-MM-dd)Schema(description 结束日期, example 2023-12-31)private Date endDate;} 效果 编辑用户PUT请求。id1234567890123456789paramUserEditParam(name张三, phone18612345678, emailzhangsanexample.com, beginDateSun Jan 01 00:00:00 CST 2023, endDateSun Dec 31 00:00:00 CST 2023) 问题 注意如下图传递参数接口也能调用成功。 接口收到的参数只包含年月日。 编辑用户PUT请求。id1234567890123456789paramUserEditParam(name张三, phone18612345678, emailzhangsanexample.com, beginDateSun Jan 01 00:00:00 CST 2023, endDateSun Dec 31 00:00:00 CST 2023) 响应时间出参局部格式 使用注解JsonFormat 配置示例 package com.example.web.model.vo;import com.fasterxml.jackson.annotation.JsonFormat; import io.swagger.v3.oas.annotations.media.Schema; import lombok.Data;import java.util.Date;Data Schema(name 用户VO) public class UserVO {// 其他字段JsonFormat(pattern yyyy-MM-dd)Schema(description 开始日期, example 2023-01-01)private Date beginDate;JsonFormat(pattern yyyy-MM-dd)Schema(description 结束日期, example 2023-12-31)private Date endDate;} 效果
http://www.w-s-a.com/news/655783/

相关文章:

  • 如何建立网站教程wordpress粘帖图片
  • 广东网站备案要多久网站开发 pdf 文字版
  • 学校网站方案帮别人做钓鱼网站吗
  • 如何加强网站建设和信息宣传wordpress 搜索提示
  • 灰色网站怎么做php yaf 网站开发框架
  • 浙江建设网站首页提供做网站公司有哪些
  • 建公司网站报价公司seo是什么级别
  • 可信赖的武进网站建设中山网站建设方案
  • 网站设计方面有什么公司运动鞋网站建设目的
  • 学校门户网站流程建设方案找人做网站 多少钱
  • 网站域名更换相应内容网站策划 要求
  • 百盛联合建设集团网站开发网站的步骤
  • php做网站评价网络公司经营范围可以加技
  • 网站积分的作用保定专业网站建设
  • 莆田做网站公司电话如何提升网站访问速度
  • 网站开发流程步骤 口袋网页访问wordpress
  • 湘潭做网站的公司自助建站教程
  • 做网站推广和头条推广wordpress 验证密码错误
  • 淘宝联盟网站怎么做深圳市创想三维科技有限公司
  • 校园网站建设招标公告php网站开发什么
  • 06628 网页制作与网站开发陕西省交通建设网站
  • 做wish如何利用数据网站暗红色网站
  • 企业 网站备案 法人长春建站模板搭建
  • 网站做快照网站改版 升级的目的
  • 自己做一个网站要多少钱海外推广什么意思
  • 郑州做网站哪家专业网络基础知识大全
  • 济南制作网站企业php 调试网站
  • 互联网站管理工作细则做网站通栏模糊
  • 徐州手机网站开发公司电话青岛有名的互联网公司
  • 如何在手机做网站wordpress 网站搬迁