关于mybatis返回前端日期格式化问题

简介: 使用mybatis难免会碰到返回时间类的问题。这里简单记录下学习总结。

前言



使用mybatis难免会碰到返回时间类的问题。这里简单记录下学习总结。


现状



如果什么都不做,那么返回的类型


20190426154259480.png


这个样式肯定不算我们想要的结果,但是先细想一下怎么处理,不至于在前端一堆js,后端遍历list去完成吧,肯定有解决的好办法吧。


解决



对于pojo对象


直接在pojo对象中加入过滤即可


 import com.fasterxml.jackson.annotation.JsonFormat;
 ---
 @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
 private Date createtime;


以来jackson包,但现在基本都支持这个包,你也可以使用fastjson来处理。这样返回的数据就能满足要求


20190426160953818.png


对于自定义map


可能有很多场景是通过自定义的map返回,比如一些关联查询,可能没有作多级联合,在sql中使用的简单的关联查询,对于这种情况,返回的类型和pojo类无关,需要我们在sql语句中进行处理。


@Select("select e.name,d.* from(SELECT a.`no`,a.classID,a.studentno,b.ID scoreid,b.score," 
 "DATE_FORMAT(b.time,'%Y-%m-%d %h:%m:%s') as time,b.note " 
 "from studentclass a " 
 "LEFT JOIN score b " 
 "on a.studentno=b.studentno " 
 "and b.jobID=#{jobid} " 
 "where a.classID =(SELECT teachclassid FROM job WHERE ID=#{jobid}) " 
 "ORDER BY a.`no` asc)d,student e " 
 "WHERE d.studentno=e.studentno")
 List getscorebyjobid(int jobid);

20190426161607255.png


就是格式化日期的代码。同理,如果插入的代码string格式不对,你可以使用java的date类simpledateformat转换成date也可以直接根据格式转换,这里就不具体介绍。经过这样的转换,我们就能拿到想要的格式。


20190426162211748.png


这样就能解决大部分的场景需求。如果日后遇到其他处理方式,会进行补充。如有错误,会进行更正!

目录
相关文章
|
Java 数据库连接 mybatis
Mybatis返回update后影响的行数
Mybatis返回update后影响的行数
632 0
|
Java 数据库连接 mybatis
【手撕Mybatis的分页插件】【查询结果集是0,直接返回[]】【提高查询我们的性能】
【手撕Mybatis的分页插件】【查询结果集是0,直接返回[]】【提高查询我们的性能】
【手撕Mybatis的分页插件】【查询结果集是0,直接返回[]】【提高查询我们的性能】
|
JSON Java 数据库连接
Mybatis返回树形结构
Mybatis返回树形结构
349 0
Mybatis返回树形结构
|
前端开发
前端解决后端接口返回数组类型数据为空的报错
前端解决后端接口返回数组类型数据为空的报错
530 0
前端解决后端接口返回数组类型数据为空的报错
|
前端开发
前端项目实战130-返回数据当前的合并值
前端项目实战130-返回数据当前的合并值
81 0
|
XML Java 数据库连接
【MyBatis】学习笔记06:各种查询所返回数据的数据类型
【MyBatis】学习笔记06:各种查询所返回数据的数据类型
276 0
【MyBatis】学习笔记06:各种查询所返回数据的数据类型
|
前端开发
前端工作总结213-注意传参和返回
前端工作总结213-注意传参和返回
94 0
前端工作总结213-注意传参和返回
|
前端开发
前端工作总结144-根据请求返回报错
前端工作总结144-根据请求返回报错
73 0
前端工作总结144-根据请求返回报错
|
前端开发
前端工作总结140-返回时间戳代码
前端工作总结140-返回时间戳代码
98 0
前端工作总结140-返回时间戳代码
|
前端开发
前端工作总结166-地址里面返回参数
前端工作总结166-地址里面返回参数
76 0
前端工作总结166-地址里面返回参数