mp查询出来时间自动去掉秒

简介: mp查询出来时间自动去掉秒

陷入经济困境的人,是最容易被利用的——加藤谛三

由于需求变动,原先存入为LocalDateTime的,现在需要精确到分,但保留数据库原有的数据

所以查询时,只精确到分,将秒去掉

我们使用typeHandler,将秒设置为00

首先添加@TableName(autoResultMap = true)然后添加@TableField(typeHandler = DeSecondHandler.class)

package com.ruben.simplestreamquery.pojo.po;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import com.ruben.simplestreamquery.handler.DeSecondsHandler;
import lombok.Data;
import java.time.LocalDateTime;
/**
 * RoleInfo
 *
 * @author VampireAchao
 * @since 2022/5/23
 */
@Data
@TableName(autoResultMap = true)
public class RoleInfo {
    private String id;
    private String roleName;
    @TableField(typeHandler = DeSecondsHandler.class)
    private LocalDateTime time;
}

DeSecondsHandler代码如下:

package com.ruben.simplestreamquery.handler;
import org.apache.ibatis.type.LocalDateTimeTypeHandler;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.time.LocalDateTime;
import java.time.format.DateTimeFormatter;
import java.util.Objects;
/**
 * DeSecondsHandler
 *
 * @author VampireAchao
 * @since 2023/2/7
 */
public class DeSecondsHandler extends LocalDateTimeTypeHandler {
    private static final DateTimeFormatter DE_SECONDS_PATTERN = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm");
    @Override
    public LocalDateTime getNullableResult(ResultSet rs, String columnName) throws SQLException {
        LocalDateTime dateTime = super.getNullableResult(rs, columnName);
        if (Objects.isNull(dateTime)) {
            return null;
        }
        return LocalDateTime.parse(dateTime.format(DE_SECONDS_PATTERN), DE_SECONDS_PATTERN);
    }
}

执行效果:

相关文章
|
4月前
|
SQL 关系型数据库 MySQL
sqlite3自动插入创建时间和更新时间
在本文中,作者分享了如何使用sqlite3数据库来记录结构化日志,并实现主键ID自增、插入数据时自动填充创建时间(created_at)以及更新数据时更新时间(updated_at)的功能。首先,创建数据库和表`position_info`,然后通过修改表结构使ID字段为自动递增。接着,设置`created_at`和`updated_at`字段默认值为当前时间。最后,创建一个触发器在数据更新时自动更新`updated_at`。完整SQL代码包括表创建和触发器定义。
154 0
|
5月前
|
NoSQL MongoDB 数据库
通过优化索引以消除 MongoDB 中的 "查询目标已超过1000个扫描对象/返回的文档数" 警告
MongoDB NoSQL数据库在处理复杂查询时可能出现“查询目标已超过1000个扫描对象/返回的文档数”警告。文章分析了该问题,展示了一个示例集合和相关索引,并提供了查询示例。通过`explain`命令发现查询未有效利用索引。解决方案是遵循ESR规则,创建新索引从而优化查询并消除警告。
137 1
|
4月前
去除程序名称 去除程序属性详细信息中的程序名称 创建时间等信息
去除程序名称 去除程序属性详细信息中的程序名称 创建时间等信息
27 0
|
5月前
解决设置了标签的最大行数,更新标签的内容为富文本内容,导致超过最大行数不显示...问题
解决设置了标签的最大行数,更新标签的内容为富文本内容,导致超过最大行数不显示...问题
27 0
user_artist__data数据记录用户播放某首歌曲的次数,数据包含3个字段,分别为useid(用户ID)、artistid(艺术家ID)、playcount(播放次数)更新一下子
user_artist__data数据记录用户播放某首歌曲的次数,数据包含3个字段,分别为useid(用户ID)、artistid(艺术家ID)、playcount(播放次数)更新一下子
132 0
user_artist__data数据记录用户播放某首歌曲的次数,数据包含3个字段,分别为useid(用户ID)、artistid(艺术家ID)、playcount(播放次数)更新一下子
|
存储 数据库
laravel-admin 查询过滤时间戳(数据库使用int类型)不起作用案例复现及解决办法
laravel-admin 查询过滤时间戳(数据库使用int类型)不起作用案例复现及解决办法
261 0
laravel-admin 查询过滤时间戳(数据库使用int类型)不起作用案例复现及解决办法
|
数据采集 大数据 数据库
爬虫识别-小于自设值的次数-代码实现读取默认时间|学习笔记
快速学习爬虫识别-小于自设值的次数-代码实现读取默认时间。
111 0
爬虫识别-小于自设值的次数-代码实现读取默认时间|学习笔记
|
SQL 关系型数据库 MySQL
十一、操作delete或者update语句,加个limit或者循环分批次删除
十一、操作delete或者update语句,加个limit或者循环分批次删除
286 0
根据用户输入的参数自动读取对应时间内的wrf模式输出数据
根据用户输入的参数自动读取对应时间内的wrf模式输出数据
|
搜索推荐 SEO
网站内容更新频率如何控制?网站内容更新注意事项
网站更新是每个站长必做的功课,当一个网站创建完成后,开始更新网站内容。 更新内容并不是说一个月时间内,把挖掘出来的内容、关键词全部一次性用上,这样的做法是错误的,搜索引擎是非常反感的。正确的做法是循序渐进的更新网站,不是像一台机器在采集,举个例子:个人博客今天发送3篇文稿,明天也3篇,后天还是一样3篇,天天坚持持续一段时间,是被搜索引擎认可的。
228 0