91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

mybatis-plus實現讀取JSON類型的方法

發布時間:2020-10-30 16:01:16 來源:億速云 閱讀:1323 作者:Leah 欄目:開發技術

今天就跟大家聊聊有關mybatis-plus實現讀取JSON類型的方法,可能很多人都不太了解,為了讓大家更加了解,小編給大家總結了以下內容,希望大家根據這篇文章可以有所收獲。

1、在數據庫表定義JSON字段;

2、在實體類加上@TableName(autoResultMap = true)、在JSON字段映射的屬性加上@TableField(typeHandler = FastjsonTypeHandler.class);
3、建一些業務代碼進行測試;

在數據庫表定義JSON字段

CREATE TABLE `extra_info` (
 `id` int(10) NOT NULL AUTO_INCREMENT PRIMARY KEY,
 `extra_object` json NULL,
 `extra_list` json NULL,
 `extra_array` json NULL
);

INSERT INTO `extra_info` VALUES (1, '{\"id\": 1, \"name\": \"2\"}', '[{\"id\": 1, \"name\": \"2\"}]', '[{\"id\": 1, \"name\": \"2\"}]');

在實體類加上@TableName(autoResultMap = true)、在JSON字段映射的屬性加上@TableField(typeHandler = FastjsonTypeHandler.class)

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.List;

@TableName(autoResultMap = true)
public class ExtraInfo implements Serializable {

  @TableId(type = IdType.AUTO)
  private Integer id;

  @TableField(typeHandler = FastjsonTypeHandler.class)
  private ExtraNode extraObject;

  @TableField(typeHandler = FastjsonTypeHandler.class)
  private List<ExtraNode> extraList;

  @TableField(typeHandler = FastjsonTypeHandler.class)
  private ExtraNode[] extraArray;

  public Integer getId() {
    return id;
  }

  public void setId(Integer id) {
    this.id = id;
  }

  public ExtraNode getExtraObject() {
    return extraObject;
  }

  public void setExtraObject(ExtraNode extraObject) {
    this.extraObject = extraObject;
  }

  public List<ExtraNode> getExtraList() {
    return extraList;
  }

  public void setExtraList(List<ExtraNode> extraList) {
    this.extraList = extraList;
  }

  public ExtraNode[] getExtraArray() {
    return extraArray;
  }

  public void setExtraArray(ExtraNode[] extraArray) {
    this.extraArray = extraArray;
  }
}

建一些業務代碼進行測試

import java.io.Serializable;

public class ExtraNode implements Serializable {

  private Integer id;
  private String name;

  public Integer getId() {
    return id;
  }

  public void setId(Integer id) {
    this.id = id;
  }

  public String getName() {
    return name;
  }

  public void setName(String name) {
    this.name = name;
  }
}
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.springframework.stereotype.Repository;

@Repository
public interface ExtraInfoMapper extends BaseMapper<ExtraInfo> {
}
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;

import java.util.List;

@RestController
@RequestMapping("/test")
public class TestController {

  @Autowired
  private ExtraInfoMapper extraInfoMapper;

  @GetMapping
  public List<ExtraInfo> listAll() {
    return this.extraInfoMapper.selectList(new LambdaQueryWrapper<>());
  }
}

運行結果:

[
  {
    "id": 1,
    "extraObject": { "id": 1, "name": "2" },
    "extraList": [
      { "name": "2", "id": 1 }
    ],
    "extraArray": [
      { "id": 1, "name": "2" }
    ]
  }
]

看完上述內容,你們對mybatis-plus實現讀取JSON類型的方法有進一步的了解嗎?如果還想了解更多知識或者相關內容,請關注億速云行業資訊頻道,感謝大家的支持。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

张北县| 潜山县| 招远市| 荥经县| 苗栗市| 安西县| 谷城县| 克什克腾旗| 鄂托克旗| 繁峙县| 澄迈县| 攀枝花市| 靖安县| 葵青区| 东乌珠穆沁旗| 和平区| 疏勒县| 阿拉善右旗| 泸定县| 绥芬河市| 潼南县| 教育| 宁国市| 开原市| 鞍山市| 体育| 铜梁县| 长岛县| 准格尔旗| 彩票| 阳江市| 桃源县| 馆陶县| 新化县| 深州市| 蕉岭县| 抚顺县| 修武县| 亚东县| 哈尔滨市| 临武县|