文档章节

mybatis 使用 hashmap 时处理空值

java9
 java9
发布于 2015/04/24 11:41
字数 217
阅读 21
收藏 0
点赞 0
评论 0

mybatis 查询时,如果返回类型是map ,默认会过滤掉值为空的字段,但是有时候又需要这个字段


  1. 在查询的时候判断是不是为空,为空的话就进行转换。
    select IFNULL(name,'');这样在返回的时候就可以保留这个值
  2. 在mybatis 中进行设置
  • 修改Mybatis config配置

    创建configuration.xml

    <?xmlversion="1.0"encoding="UTF-8"?>
    <!DOCTYPEconfiguration PUBLIC "-//mybatis.org//DTD SQL MAP Config 3.1//EN"
    "http://mybatis.org/dtd/mybatis-3-config.dtd">
    <configuration>
      <settings>
          <settingname="callSettersOnNulls"value="true"/>
      </settings>
    </configuration>

    注: 需要mybatis3.2以上版本。
  • 实现Mybatis的TypeHandler接口,在result 中应用这个转换器。

    <result property="age" column="age" typeHandler="com.demo.EmptyStringIfNull"


    后记:相比较而言,在数据库处理更方便,修改mybatis 的配置,可能会影响到其他地方。实现接口的话得定义一个返回类型。


© 著作权归作者所有

共有 人打赏支持
java9
粉丝 12
博文 65
码字总数 25460
作品 0
武汉
后端工程师
Mybatis动态构建Sql(无实体类)

先简单说下Mybatis的动态sql,这不是今天的重点。 MyBatis的动态SQL是基于OGNL表达式的,它可以帮助我们方便的在SQL语句中实现某些逻辑。 例如,sql语句where条件中,需要一些安全判断,例如...

perfectspr ⋅ 2014/11/05 ⋅ 2

《深入理解mybatis原理》 MyBatis的一级缓存实现详解 及使用注意事项

MyBatis是一个简单,小巧但功能非常强大的ORM开源框架,它的功能强大也体现在它的缓存机制上。MyBatis提供了一级缓存、二级缓存 这两个缓存机制,能够很好地处理和维护缓存,以提高系统的性能...

java梦想家01 ⋅ 2016/01/11 ⋅ 1

MyBatis构建sql

MyBatis构建sql时动态传入表名以及字段名 用了mybatis很长一段时间了,但是感觉用的都是比较基本的功能,很多mybatis相对ibatis的新功能都没怎么用过。比如其内置的注解功能之类的。这次遇到...

Java编程思想 ⋅ 2013/09/02 ⋅ 0

手把手带你源码分析 HashMap 1.7

前言 HashMap 在 Java 和 Android 开发中非常常见 今天,我将带来 HashMap 的全部源码分析,希望你们会喜欢。 目录 1. 简介 类定义 3. 具体使用 3.1 主要使用API(方法、函数) 3.2 使用流程...

烂猪皮 ⋅ 04/21 ⋅ 0

Mybatis多字段模糊查询

刚刚学习Mybatis,认识到增删改查这些操作都只能传入一个参数,传出一个参数。如果需要传入或传出好几个参数,则有两种方法: 方法1::这就需要定义PO(Persistent Object)类。我理解的PO类...

Henrykin ⋅ 2016/10/26 ⋅ 0

java程序员常问的问题

1.springMVC对事务的管理方式有哪些 2. 生成数据库ID的几种方式 3.heibirnate 与jpa,mybatis, ibatis的关系 4.hibernate缓存机制是什么样的 5.redius, memercacha实现缓存的几种常用对象 6....

HTCKF ⋅ 2015/05/13 ⋅ 0

springMVC 接收数组参数,mybatis 接收数组参数,mybatis批量插入/批量删除案例

案例是给一个用户赋予多个权限,多个权限用其对应的主键 id 为参数,组成了 一个id数组,传给springMVC,然后springMVC传给mybatis,然后mybatis批量插入。其实类似的场景还有批量删除多个,...

清城北苑 ⋅ 2016/07/20 ⋅ 0

MyBatis 之 mapper.xml(一)

mapper.xml 映射文件是 MyBatis 的核心,定义了操作数据库的 sql,每个sql 是一个statement。 parameterType(输入类型),输入类型包括:基本类型、pojo对象类型、hashmap、 a. #{} 与 ${} ...

pradosoul ⋅ 2015/09/14 ⋅ 0

mybatis中resultMap的理解

resultMap 元素是 MyBatis 中最重要最强大的元素。它可以让你从 90% 的 JDBC ResultSets 数据提取代码中解放出来, 并在一些情形下允许你做一些 JDBC 不支持的事情。 实际上,在对复杂语句进行...

u012843873 ⋅ 05/04 ⋅ 0

Mybatis中几个重要类

本文基于Mybatis3.2.0版本的代码。 1.org.apache.ibatis.mapping.MappedStatement MappedStatement类在Mybatis框架中用于表示XML文件中一个sql语句节点,即一个<select />、<update />或者<......

相见欢 ⋅ 2013/03/17 ⋅ 4

没有更多内容

加载失败,请刷新页面

加载更多

下一页

IDEA创建SpringMVC+Mybatis+Maven项目

视频如下(加载有点慢请见谅,服务器不太好): 视频

影狼 ⋅ 3分钟前 ⋅ 0

前阿里P8架构师:精准定制Java架构师学习计划!

可以说,Java是现阶段中国互联网公司中,覆盖度最广的研发语言,掌握了Java技术体系,不管在成熟的大公司,快速发展的公司,还是创业阶段的公司,都能有立足之地。 有不少朋友问,除了掌握J...

java高级架构牛人 ⋅ 6分钟前 ⋅ 0

zookeper学习

https://blog.csdn.net/u012152619/article/category/6470028

~少司命~ ⋅ 8分钟前 ⋅ 0

Spring MVC ,JSON,JQuery,不懂JQuery,跳过了

/spring-mvc-study/src/main/webapp/course_json.jsp <%@ page language="java" contentType="text/html; charset=UTF-8"pageEncoding="UTF-8"%><!DOCTYPE html PUBLIC "-//W3C//DTD ......

颖伙虫 ⋅ 8分钟前 ⋅ 0

2018上海云栖大会workshop-日志数据采集与分析对接

摘要: 日志数据采集与分析对接 课程描述 通过日志服务采集用户、数据库、业务等访问数据。演示对于业务日志分析与处理,程序日志查询与监控,打通日志与数据仓库对接案例。 日志种类 网站访...

阿里云云栖社区 ⋅ 9分钟前 ⋅ 0

mahout demo

package com.datamine.CollaborativeFiltering.mysql; import org.apache.mahout.cf.taste.impl.neighborhood.NearestNUserNeighborhood; import org.apache.mahout.cf.taste.impl.recommend......

xiaomin0322 ⋅ 10分钟前 ⋅ 0

red hat openstack 12配置要求

安装 openstack 之前,一般要规划整个系统中,到底要多少台机器来参与openstack, 根据rhosp12的官方文档: 最低要求是3台物理机,1台作为director,一台作为 controller ,一台作为computer....

tututu_jiang ⋅ 11分钟前 ⋅ 0

Rocket-Chip在GitHub上的各个源码

在github上通过搜索Rocket-chip可以得到36个结果:其中 https://github.com/freechipsproject/rocket-chip https://github.com/ucb-bar/riscv-boom https://github.com/ucb-bar/fpga-zynq (......

whoisliang ⋅ 17分钟前 ⋅ 0

【HAVENT原创】CentOS 6.5 下 Nginx 的安装与配置

nginx是轻量级的Web服务器、反向代理服务器及邮件服务器,具有占用内存少,并发能力强的优点,已被广泛应用。本文介绍目前最新版本 1.12.2 的安装。 各版本nginx下载地址:http://nginx.org/...

HAVENT ⋅ 23分钟前 ⋅ 0

查看linux系统重启之前的log -- last_kmsg

当 Linux Kernel 出现 BUG 的时候,后走入 panic flow,这个时候由于 Kernel 出现了严重的问题,adbd 也无法响应 adb 连接请求,这个时候想透过读取 Kernel Log Buffer 来看 Kernel Log 是不...

zyzzu ⋅ 24分钟前 ⋅ 0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部