千家信息网

Mybatis-Plus怎么读写Mysql的Json字段

发表于:2025-11-14 作者:千家信息网编辑
千家信息网最后更新 2025年11月14日,本篇内容主要讲解"Mybatis-Plus怎么读写Mysql的Json字段",感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习"Mybatis-Plus怎么读写M
千家信息网最后更新 2025年11月14日Mybatis-Plus怎么读写Mysql的Json字段

本篇内容主要讲解"Mybatis-Plus怎么读写Mysql的Json字段",感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习"Mybatis-Plus怎么读写Mysql的Json字段"吧!

前置条件

确保mysql的版本是5.7+

一、新建mysql表增加json字段

二、pojo类

package com.cxstar.domain;import com.alibaba.fastjson.JSONObject;import com.baomidou.mybatisplus.annotation.IdType;import com.baomidou.mybatisplus.annotation.TableField;import com.baomidou.mybatisplus.annotation.TableId;import com.baomidou.mybatisplus.annotation.TableName;import com.baomidou.mybatisplus.extension.handlers.FastjsonTypeHandler;import java.io.Serializable;import java.util.Date;@lombok.Data@TableName(autoResultMap = true)public class Data implements Serializable {    @TableId(value = "id",type = IdType.AUTO)    private Integer id;                       // 部分字段省略-------------    private String title;           private String author;             private String publisher;     // -----------------------       @TableField(typeHandler = FastjsonTypeHandler.class)    private JSONObject aggJson;}

三、测试类

package com.cxstar;import com.alibaba.fastjson.JSONArray;import com.alibaba.fastjson.JSONObject;import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;import com.cxstar.domain.Data;import com.cxstar.domain.SearchMsg;import com.cxstar.mapper.DataMapper;import com.cxstar.service.OrderService;import com.cxstar.service.spider.impl.*;import com.cxstar.service.utils.ExecutorThread;import com.cxstar.service.utils.SpiderThread;import com.cxstar.service.utils.SynContainer;import org.junit.jupiter.api.Test;import org.springframework.beans.factory.annotation.Autowired;import org.springframework.boot.test.context.SpringBootTest;import java.util.ArrayList;import java.util.Date;import java.util.UUID;@SpringBootTestclass OrderApplicationTests {    @Autowired    DataMapper dataMapper;    @Test    void testJson() {                // insert -----------------------------------        Data data = new Data();        data.setTitle("计算机安全技术与方法");        data.setPublisher("<<计算机技术>>编辑部出版");        JSONObject jb = new JSONObject();        jb.put("searchKey", "英格");        jb.put("curPage", "1");        JSONArray js = new JSONArray();        js.add("西北政法大学");        js.add("西安理工大学");        jb.put("source", js);        data.setAggJson(jb);        dataMapper.insert(data);        // ------------------------------------------        // select --------------------------------------        Data data1 = dataMapper.selectById(5837);        JSONObject jb2 = data1.getAggJson();        System.out.println(jb2.getJSONArray("source"));        // ---------------------------------------------                                // group by -----------------------------------------------                LambdaQueryWrapper lqw = new LambdaQueryWrapper<>();        lqw.select(Data::getAggJson);        lqw.groupBy(Data::getAggJson);        List dataList = dataMapper.selectList(lqw);        System.out.println(dataList);        // --------------------------------------------------------    }}

到此,相信大家对"Mybatis-Plus怎么读写Mysql的Json字段"有了更深的了解,不妨来实际操作一番吧!这里是网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!

0