map mybatis 的字段返回0_mybatis返回map类型数据空值字段不显示(三种解决方法)
mybatis的配置 mybatis-config.xml
2,springBoot配置 application.properties 添加
#mybatis resultType equal map void null value
mybatis.configuration.call-setters-on-nulls=true
3,转换成JSON时
//导包
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.serializer.SerializerFeature;
//代码
JSON.toJSONString(new HashMap<>(),SerializerFeature.WriteMapNullValue);
一、查询sql添加每个字段的判断空
IFNULL(rate,'') as rate二、ResultType利用实体返回,不用map
三、springMVC+mybatis查询数据,返回resultType=”map”时,如果数据为空的字段,则该字段省略不显示,可以通过添加配置文件,规定查询数据为空是则返回null。<?xml version="1.0" encoding="UTF-8"?>
/p>
"http://mybatis.org/dtd/mybatis-3-config.dtd">
spring-mybatis.xml
如果想要配置rate的默认值,例如“”字符串,则可以建立一个类,实现Mybatis的TypeHandler接口public class EmptyStringIfNull implements TypeHandler{
@Overridepublic String getResult(ResultSet rs, String columnName) throwsSQLException {return (rs.getString(columnName) == null) ? "": rs.getString(columnName);
}
@Overridepublic String getResult(ResultSet rs, int columnIndex) throwsSQLException {return (rs.getString(columnIndex) == null) ? "": rs.getString(columnIndex);
}
@Overridepublic String getResult(CallableStatement cs, int columnIndex) throwsSQLException {return (cs.getString(columnIndex) == null) ? "": cs.getString(columnIndex);
}
@Overridepublic void setParameter(PreparedStatement ps, int arg1, String str, JdbcType jdbcType) throwsSQLException { }}在sql.xml文件定义与使用如下如下
map mybatis 的字段返回0_mybatis返回map类型数据空值字段不显示(三种解决方法)相关推荐
- jsonpath:从庞大的接口返回结果(返回结果为字典类型)中取字段值
从庞大的接口返回结果(返回结果为字典类型)中取字段值,返回结果是list s = {"ec": 0, "errcode": 0, "em": ...
- Json返回时间中出现乱码问题的两种解决方法
Json返回时间中出现乱码问题的两种解决方法 参考文章: (1)Json返回时间中出现乱码问题的两种解决方法 (2)https://www.cnblogs.com/hanyinglong/archiv ...
- java map集合遍历方法,Java的Map集合的三种遍历方法
集合的一个很重要的操作---遍历,学习了三种遍历方法,三种方法各有优缺点~~ 1. package com.myTest.MapText; import java.util.Collection; i ...
- WORD Application.Documents.Open函数返回null的一种解决方法
WORD Application.Documents.Open函数返回null的一种解决方法 参考文章: (1)WORD Application.Documents.Open函数返回null的一种解决 ...
- JavaScript监听手机物理返回键的两种解决方法
JavaScript监听手机物理返回键的两种解决方法 参考文章: (1)JavaScript监听手机物理返回键的两种解决方法 (2)https://www.cnblogs.com/xzzzys/p/8 ...
- VLOOKUP函数返回错误值#N/A的两种解决方法
VLOOKUP函数返回错误值#N/A的两种解决方法 参考文章: (1)VLOOKUP函数返回错误值#N/A的两种解决方法 (2)https://www.cnblogs.com/gonghongwei/ ...
- mybatis向mysql数据库插入数据时,中文乱码显示为?解决方法
mybatis向mysql数据库插入数据时,中文乱码显示为?解决方法 1.先查看库.表.表字符字段的编码格式.MySQL默认的库和表的字符编码都是latin1,而我们一般需要使用 utf8 //先查看 ...
- 【方向盘】MyBatis封装结果集时,Integer类型的id字段被赋值成了Long类型---读源码找原因
在穷的时候饿的时候,千万对一个人说物质不重要.基础不牢,地动山摇 本文已被https://yourbatman.cn收录:女娲Knife-Initializr工程可公开访问啦:程序员专用网盘https ...
- mac vs 返回上一步_mac电脑打不开应用程序的解决方法
mac电脑跟windows电脑一样,经常会出现打不开应用程序的情况,并且提示"因为它来自身份不明的开发者",也不知道哪里出现问题?由于MAC系统与windows界面不一样,很多小编 ...
最新文章
- 一种 Web 应用程序级别的 Cluster 实现技术
- l开头的英文车标是什么车_L开头的英文车标叫什么车
- 专家票选! 2020 年度 10 篇人工智能经典论文(1-5)
- mysql innodb log_教你如何理解mysql中的innoDB log
- 安卓手机刷软路由_华为路由AX3 Pro上手测评:用过最方便的路由器,没有之一...
- SQLServer 系统数据库
- android应用程序的生命周期,Android应用程序的生命周期.doc
- Java多线程学习三十一:ThreadLocal 是用来解决共享资源的多线程访问的问题吗?
- PATH变量,cp,mv,cat,more,less,head,tail命令举例
- highCharts图表入门简介
- Codeforces Round #121 (Div. 1) A. Dynasty Puzzles DP
- DDraw笔记-创建表面
- A[1080]Graduate Admission 两个cmp比较函数两个struct结构体
- 通过Wireshark获取宽带账号密码
- 《《《翻译》》》avod 三维生成与目标检测
- Mock数据模板规范详解
- Tilera多线程网络编程总结
- 爬取北邮人论坛美食帖子
- HBM (High Bandwidth Memory)
- 做一个很出色的程序员
热门文章
- Bailian4034 选择客栈【序列处理】
- HDU5695 Gym Class【拓扑排序】
- Bailian2693 最远距离【序列处理】
- Bailian2714 求平均年龄(POJ NOI0105-01)【入门】
- .condarc(conda 配置文件)、换国内源
- 地震与地球的内部构成
- for 循环 and while 循环(三)
- [面试] 算法(七)—— 逆序输出链表
- 三个瓶盖能换一瓶水,问100个人需要喝水,最少需要买多少瓶水即可解决100人的喝水问题
- python3.7安装步骤-Python 3.7.0安装教程(附安装包) | 我爱分享网