mabatis-plus拿不到数据库的mysql里的text类型的数据

如题,数据库有几个字段是text类型的,使用mybatis-plus时取出来却是null,百度了一番,终于解决了,在这记录一下

实体类

GranaryInterval实体类中,ZJProfile、BXZJProfile、NBFJProfile、productKeyList几个字段在数据库中都是text类型的,实体类正常写作String类型

package com.entity.dao;

import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.serializer.SerializerFeature;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;

@Data
@TableName("cable_interval")
public class GranaryInterval {

    private static final long serialVersionUID = 53106421233400000L;

    private int id;
    private String username;
    private int proType;
    private int method;
    private int hour;
    private int minute;
    private String ZJProfile;
    private String BXZJProfile;
    private String NBFJProfile;
    private String nicknameOperation;
    private String productKeyList;
    private long startTime;

    @Override
    public String toString() {
        return JSON.toJSONString(this, SerializerFeature.WriteMapNullValue);
    }

}

xml

GranaryMapper文件,定义mapGranaryIntervalMap,将相应text类型的字段配置jdbcTypetypeHandler


DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.mapper.GranaryIntervalMapper">

    <resultMap id="GranaryIntervalMap" type="GranaryInterval">
        <result  property="ZJProfile" column="zj_profile" jdbcType="LONGVARCHAR" typeHandler="org.apache.ibatis.type.ClobTypeHandler" />
        <result  property="BXZJProfile" column="bxzj_profile" jdbcType="LONGVARCHAR" typeHandler="org.apache.ibatis.type.ClobTypeHandler" />
        <result  property="NBFJProfile" column="nb_fj_profile" jdbcType="LONGVARCHAR" typeHandler="org.apache.ibatis.type.ClobTypeHandler" />
        <result  property="productKeyList" column="product_key_list" jdbcType="LONGVARCHAR" typeHandler="org.apache.ibatis.type.ClobTypeHandler" />
    resultMap>

    <select id="selectAllCus" resultMap="GranaryIntervalMap" >
        select * from cable_interval;
    select>
mapper>

mapper

package com.mapper;

import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.entity.dao.GranaryInterval;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Select;

import java.util.List;

@Mapper
public interface GranaryIntervalMapper extends BaseMapper<GranaryInterval> {
    @Select("select * from cable_interval")
    List<GranaryInterval> selectAll();

    List<GranaryInterval> selectAllCus();
}

测试

package com.mapper;

import com.entity.CableInterval;
import com.entity.dao.GranaryInterval;
import org.junit.jupiter.api.Test;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.context.SpringBootTest;
import org.springframework.jdbc.core.JdbcTemplate;

import java.util.List;

@SpringBootTest
class GranaryIntervalMapperTest {

    @Autowired
    GranaryIntervalMapper mapper;

    @Test
    public void test1 () {
        List<GranaryInterval> res = mapper.selectAllCus();
        System.out.println(res);
    }
}

/*
输出
[{"bXZJProfile":"[{'commandType':'0','profile':[{'measure':['temp','temphumi'],'nickname':'c8pcip34s1fbp012ncog','id':'20'}],'moduleName':'ABC21545744'}]","hour":13,"id":191,"method":1,"minute":48,"nBFJProfile":"[{'profile':{'telAppId':'7WKjLJDV9RdZWH_dAAALN4f4IIwa','orderProfile':'0001010115020115030115040115050115060115070115080115','telSecret':'KR5rPYIrB2CffTE0vfgfowdduv4a','telPlatformIp':'develop.api.ct10649.com','telPort':'8743','deviceId':'4855a66a-d00a-4428-ab9f-868882871807'},'type':1},{'profile':{'telAppId':'7WKjLJDV9RdZWH_dAAALN4f4IIwa','orderProfile':'0001010115','telSecret':'KR5rPYIrB2CffTE0vfgfowdduv4a','telPlatformIp':'develop.api.ct10649.com','telPort':'8743','deviceId':'739dc9d2-97fd-4f20-96be-efdc205a4b44'},'type':2}]","nicknameOperation":"c6o4p85n9ie6dn0elesg","proType":0,"productKeyList":"['c6nvuidn9ie6dn0eldp0','c6nvuktn9ie6dn0eldpg','c8kqecr4s1f5dk1dbgu0','c8p9p01d0avplvase5vg','c8pcii9d0avh1rgl0n2g','ca3kq11d0avs5oj2ql6g','cbakssb4s1f2hfhjcat0','cbfklrr4s1f1bbrmrmb0']","startTime":1661838294,"username":"粮情综合测试","zJProfile":"[{'commandType':'02','granaryList':[{'granaryName':'测试','profile':'007F010110_007F020116_007F020110_017F01_027F01','nickname':'cbakshpd0avsn2ah5o7g'},{'granaryName':'1仓_主机','profile':'007F010110_007F020116_007F020110_017F01_027F01','nickname':'c6nvvtln9ie6dn0eldsg'},{'granaryName':'2仓_主机','profile':'007F010105_007F010112_017F01_027F01','nickname':'c6o004tn9ie6dn0eldt0'},{'granaryName':'0726模块测试','profile':'007F010132_017F01_027F02','nickname':'cbfkls34s1f1bbrmrmbg'}],'moduleName':'ABC0052','username':'粮情综合测试'}]"}, {"bXZJProfile":null,"hour":1,"id":192,"method":1,"minute":10,"nBFJProfile":null,"nicknameOperation":"aaa","proType":0,"productKeyList":"['p1', 'p2']","startTime":1661838100,"username":"user","zJProfile":null}]
*/

你可能感兴趣的:(mysql,mybatis)