SpringBoot接收LocalDateTime参数
一、通过@RequestBody接收
方式1:实体类上加上 @JsonFormat,并通过 pattern 属性指定时间格式
public class Time {@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")LocalDateTime localDateTime;@JsonFormat(pattern = "yyyy-MM-dd")LocalDate localDate;@JsonFormat(pattern = "HH:mm:ss")LocalTime localTime;
}
方式二:配置Jackson时间序列化,创建如下配置类即可
import com.fasterxml.jackson.databind.ObjectMapper;
import com.fasterxml.jackson.datatype.jsr310.JavaTimeModule;
import com.fasterxml.jackson.datatype.jsr310.deser.LocalDateDeserializer;
import com.fasterxml.jackson.datatype.jsr310.deser.LocalDateTimeDeserializer;
import com.fasterxml.jackson.datatype.jsr310.deser.LocalTimeDeserializer;
import com.fasterxml.jackson.datatype.jsr310.ser.LocalDateSerializer;
import com.fasterxml.jackson.datatype.jsr310.ser.LocalDateTimeSerializer;
import com.fasterxml.jackson.datatype.jsr310.ser.LocalTimeSerializer;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import java.time.LocalDate;
import java.time.LocalDateTime;
import java.time.LocalTime;
import java.time.format.DateTimeFormatter;@Configuration
public class JacksonConfig {@Beanpublic ObjectMapper objectMapper() {JavaTimeModule javaTimeModule = new JavaTimeModule();// 时间序列化javaTimeModule.addSerializer(LocalDateTime.class,new LocalDateTimeSerializer(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss")));javaTimeModule.addSerializer(LocalDate.class,new LocalDateSerializer(DateTimeFormatter.ofPattern("yyyy-MM-dd")));javaTimeModule.addSerializer(LocalTime.class,new LocalTimeSerializer(DateTimeFormatter.ofPattern("HH:mm:ss")));// 时间反序列化javaTimeModule.addDeserializer(LocalDateTime.class,new LocalDateTimeDeserializer(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss")));javaTimeModule.addDeserializer(LocalDate.class,new LocalDateDeserializer(DateTimeFormatter.ofPattern("yyyy-MM-dd")));javaTimeModule.addDeserializer(LocalTime.class,new LocalTimeDeserializer(DateTimeFormatter.ofPattern("HH:mm:ss")));ObjectMapper objectMapper = new ObjectMapper();objectMapper.registerModule(javaTimeModule);return objectMapper;}
}
二、通过@RequestParam接收
方式1:在参数前面加上 @DateTimeFormat 注解,通过 pattern 属性指定时间格式
@GetMapping("/param/local")public void testLocalDateTime(@RequestParam @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") LocalDateTime localDateTime,@RequestParam @DateTimeFormat(pattern = "yyyy-MM-dd") LocalDate localDate,@RequestParam @DateTimeFormat(pattern = "HH:mm:ss") LocalTime localTime) {}
方式2:配置时间格式转换器,创建如下配置类即可
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.core.convert.converter.Converter;
import java.time.LocalDate;
import java.time.LocalDateTime;
import java.time.LocalTime;
import java.time.format.DateTimeFormatter;/*** 日期格式转换器配置*/
@Configuration
public class DateConverterConfig {/*** LocalDateTime格式转换器*/@Beanpublic Converter<String, LocalDateTime> localDateTimeConverter() {return new Converter<String, LocalDateTime>() {@Overridepublic LocalDateTime convert(String timeStr) {return LocalDateTime.parse(timeStr,DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"));}};}/*** LocalDate格式转换器*/@Beanpublic Converter<String, LocalDate> localDateConverter() {return new Converter<String, LocalDate>() {@Overridepublic LocalDate convert(String timeStr) {return LocalDate.parse(timeStr,DateTimeFormatter.ofPattern("yyyy-MM-dd"));}};}/*** LocalTime格式转换器*/@Beanpublic Converter<String, LocalTime> localTimeConverter() {return new Converter<String, LocalTime>() {@Overridepublic LocalTime convert(String timeStr) {return LocalTime.parse(timeStr,DateTimeFormatter.ofPattern("HH:mm:ss"));}};}
}
相关文章:
SpringBoot接收LocalDateTime参数
一、通过RequestBody接收 方式1:实体类上加上 JsonFormat,并通过 pattern 属性指定时间格式 public class Time {JsonFormat(pattern "yyyy-MM-dd HH:mm:ss")LocalDateTime localDateTime;JsonFormat(pattern "yyyy-MM-dd")Loca…...
Typora配置GitHub图床--结合PicGo
【当前问题】Typora文档分享时 无法看到本地路径图片 【怎么解决】把文档中的图片设置为 公开链接 【准备工具】 Typora 官网https://typoraio.cn/(购买 / 自寻破解法)GitHub账号 https://github.com/PicGo https://github.com/Molunerfinn/PicGo/relea…...
【书生.浦语实战营】——入门岛
【书生.浦语实战营】——入门岛_第一关_Linux基础 任务分布1. 本地vscode远程连接并进行端口映射端口映射What——何为端口映射How——怎么进行端口映射 2. Linux基础命令touch :创建文件mkdir :创建目录cd:进入 退出 目录pwd :确定当前所在目录cat:可以…...
WPF+MVVM案例实战(十四)- 封装一个自定义消息弹窗控件(下)
文章目录 1、案例效果2、弹窗控件使用1.引入用户控件2、按钮命令实现 3、总结4、源代码获取 1、案例效果 2、弹窗控件使用 1.引入用户控件 打开 Wpf_Examples 项目,在引用中添加用户控件库,在 MainWindow.xaml 界面引用控件库,代码如下&…...
嵌入式——STM32外设应用
STM32 微控制器以其高性能、低功耗和丰富的外设资源,在嵌入式系统设计中得到了广泛应用。以下将详细介绍 STM32 的主要外设及其典型应用,帮助开发者更好地理解和应用这些功能。 1. GPIO(通用输入输出端口) 功能:GPIO…...
HCIA(ACL)
第七节 ACL:访问控制列表 访问控制----在路由器的入或者出的接口上,匹配流量,之后产生动作---允许或拒绝 定义感兴趣流量-----帮助其他软件抓流量 匹配规则: 至上而下,逐一匹配,上调匹配按照上条执行…...
react基础之reactHooks
文章目录 React Hooks 使用指南常用 Hooks使用规则 小结 React Hooks 使用指南 React Hooks 是 React 16.8 引入的一种新特性,允许在函数组件中使用状态和其他 React 特性,而无需编写类组件。以下是一些基础的 Hooks 及其使用规则。 常用 Hooks useSta…...
Java基础0-Java概览
Java概览 一、Java的主要特性 Java 语言是简单的: Java 丢弃了 C 中很少使用的、很难理解的、令人迷惑的那些特性,如操作符重载、多继承、自动的强制类型转换。特别地,Java 语言不使用指针,而是引用。并提供了自动分配和回收内存…...
SW绘制曲面
20241031第一次学习 参考教程:SolidWorks视频教程SW实战营绘制一个布满球体的不规则曲面_哔哩哔哩_bilibili 过程概述: STEP 1:创建平面草图并拉伸 STEP 2:从侧面(拉伸出来的面)绘制样条曲线 样条曲线需要画到实例的底面(图中接下来是要向下变形)薄板两侧都要绘制...
css知识点梳理2
1. 选择器拓展 在 CSS 中,可以根据选择器的类型把选择器分为基础选择器和复合选择器,复合选择器是建立在基础选择器之上,对基本选择器进行组合形成的。 复合选择器是由两个或多个基础选择器,通过不同的方式组合而成的…...
攻防世界 MISC miao~详解
下载压缩包,但是尝试解压的时候提示错误,刚开始以为是伪加密之类的,但是尝试了一圈之后,发现并没有问题。后面用bandizip打开,得到了一张图片: 拖到010editor里面查看,没有发现什么 于是用随波逐…...
使用 `tracert [options] <目标地址>` 命令的详细介绍
使用 tracert [options] <目标地址> 命令的详细介绍 什么是 tracert 命令? tracert(Trace Route)是一个用于追踪数据包从一台计算机到达另一台计算机的网络工具。它通过发送特定的数据包,观察这些数据包经过的路由节点&…...
闲一品交易平台:SpringBoot技术的新境界
摘 要 随着科学技术的飞速发展,社会的方方面面、各行各业都在努力与现代的先进技术接轨,通过科技手段来提高自身的优势,闲一品交易平台当然也不能排除在外。闲一品交易平台是以实际运用为开发背景,运用软件工程原理和开发方法&…...
【深入浅出】深入浅出transformer(附面试题)
本文的目的是为了帮助大家面试transformer,会结合我的面试经历以及看法去讲解transformer,并非完整的技术细致讲解,介意请移步。 结构 提到transformer网络模型,大家脑海中是否有这张图呢? 这是网络结构中经典的编解…...
苹果重大更新,macOS与iOS同时推出更新!功能真好用
前言 这几天,苹果更新了macOS和iOS的系统版本!macOS Sequoia 版本号15.1 iOS版本号18.1 小白更新设备系统的时间已经算比较晚的了,但好在更新得很及时!因为这次更新的功能很合小白的胃口啊!咱们先来看看本次更新了什么…...
刘艳兵-DBA016-在您的数据库中,SALES表存在于SH用户中,并且启用了统一审计。作为DBA,您成功执行了以下指令:
在您的数据库中,SALES表存在于SH用户中,并且启用了统一审计。作为DBA,您成功执行了以下指令: SQL> CREATE AUDIT POLICY sales_pol ACTIONS select on sh.sales; SQL> AUDIT POLICY sales_pol; 关于SALES_POL审计策略,哪个陈…...
力扣题目解析--整数反转
题目 给你一个 32 位的有符号整数 x ,返回将 x 中的数字部分反转后的结果。 如果反转后整数超过 32 位的有符号整数的范围 [−231, 231 − 1] ,就返回 0。 假设环境不允许存储 64 位整数(有符号或无符号)。 示例 1:…...
净水前置需要安装吗?
业主问净水前置需不需要安装?是必须安装吗?这个问题其实很难回答,如果说非要安装,有可能客户会感觉我们在这上面要挣钱, 有很多业主没有安装家里用水也没有问题,如果说不需要安装,现在…...
在深度学习研究方向有哪些创新点
以下是深度学习研究方向的一些创新点: 一、模型架构创新 Transformer架构及其扩展 自注意力机制 Transformer架构摒弃了传统的卷积神经网络(CNN)和循环神经网络(RNN)中的卷积和循环结构,引入了自注意力机…...
YOLOv11改进策略【卷积层】| 2024最新轻量级自适应提取模块 LAE 即插即用 保留局部信息和全局信息
一、本文介绍 本文记录的是利用轻量级自适应提取模块(LAE)模块优化YOLOv11的目标检测网络模型。LAE (Lightweight Adaptive Extraction) 在减少参数和计算成本的同时,能够提取更丰富语义信息的特征,克服了传统卷积方法难以捕捉全局信息的问题,并能更好地提取ROI特征。本文将…...
浅谈 React Hooks
React Hooks 是 React 16.8 引入的一组 API,用于在函数组件中使用 state 和其他 React 特性(例如生命周期方法、context 等)。Hooks 通过简洁的函数接口,解决了状态与 UI 的高度解耦,通过函数式编程范式实现更灵活 Rea…...
江苏艾立泰跨国资源接力:废料变黄金的绿色供应链革命
在华东塑料包装行业面临限塑令深度调整的背景下,江苏艾立泰以一场跨国资源接力的创新实践,重新定义了绿色供应链的边界。 跨国回收网络:废料变黄金的全球棋局 艾立泰在欧洲、东南亚建立再生塑料回收点,将海外废弃包装箱通过标准…...
Frozen-Flask :将 Flask 应用“冻结”为静态文件
Frozen-Flask 是一个用于将 Flask 应用“冻结”为静态文件的 Python 扩展。它的核心用途是:将一个 Flask Web 应用生成成纯静态 HTML 文件,从而可以部署到静态网站托管服务上,如 GitHub Pages、Netlify 或任何支持静态文件的网站服务器。 &am…...
SpringBoot+uniapp 的 Champion 俱乐部微信小程序设计与实现,论文初版实现
摘要 本论文旨在设计并实现基于 SpringBoot 和 uniapp 的 Champion 俱乐部微信小程序,以满足俱乐部线上活动推广、会员管理、社交互动等需求。通过 SpringBoot 搭建后端服务,提供稳定高效的数据处理与业务逻辑支持;利用 uniapp 实现跨平台前…...
Rapidio门铃消息FIFO溢出机制
关于RapidIO门铃消息FIFO的溢出机制及其与中断抖动的关系,以下是深入解析: 门铃FIFO溢出的本质 在RapidIO系统中,门铃消息FIFO是硬件控制器内部的缓冲区,用于临时存储接收到的门铃消息(Doorbell Message)。…...
网站指纹识别
网站指纹识别 网站的最基本组成:服务器(操作系统)、中间件(web容器)、脚本语言、数据厍 为什么要了解这些?举个例子:发现了一个文件读取漏洞,我们需要读/etc/passwd,如…...
Go语言多线程问题
打印零与奇偶数(leetcode 1116) 方法1:使用互斥锁和条件变量 package mainimport ("fmt""sync" )type ZeroEvenOdd struct {n intzeroMutex sync.MutexevenMutex sync.MutexoddMutex sync.Mutexcurrent int…...
【PX4飞控】mavros gps相关话题分析,经纬度海拔获取方法,卫星数锁定状态获取方法
使用 ROS1-Noetic 和 mavros v1.20.1, 携带经纬度海拔的话题主要有三个: /mavros/global_position/raw/fix/mavros/gpsstatus/gps1/raw/mavros/global_position/global 查看 mavros 源码,来分析他们的发布过程。发现前两个话题都对应了同一…...
使用 uv 工具快速部署并管理 vLLM 推理环境
uv:现代 Python 项目管理的高效助手 uv:Rust 驱动的 Python 包管理新时代 在部署大语言模型(LLM)推理服务时,vLLM 是一个备受关注的方案,具备高吞吐、低延迟和对 OpenAI API 的良好兼容性。为了提高部署效…...
中国政务数据安全建设细化及市场需求分析
(基于新《政务数据共享条例》及相关法规) 一、引言 近年来,中国政府高度重视数字政府建设和数据要素市场化配置改革。《政务数据共享条例》(以下简称“《共享条例》”)的发布,与《中华人民共和国数据安全法》(以下简称“《数据安全法》”)、《中华人民共和国个人信息…...
