直接看代码,实现传输的东西到数据库并且读出来.

注意:这里的Object到数据库其实会生成json,数据库字段是json,一定记得,然后用的是mysql的数据库

import com.baomidou.mybatisplus.annotation.TableName;
import com.hz.hzweb.bean.base.DataEntity;
import lombok.Data;import java.io.Serializable;
import java.util.Date;@Data
@TableName("bc_house")
public class HouseEntity extends DataEntity<HouseEntity> implements Serializable {/*** id*/private Long houseid;private String verify;private String housename;private Object housebasis;private Object housecarodds;private Object housecarlimit;private Object housecqsscodds;private Object housecqssclimit;private Object housepcodds;private Object housepclimit;private Object housecanadaodds;private Object housecanadalimit;private Object houseflyodds;private Object houseflylimit;private Object housesendmsg;private String kfqq = "123456";private String kfwechat = "123456";private Integer cancel = 0;private Integer billsmallshow = 5;private Integer billshow = 0;private String houseproxyaccount = "123456";private String houseproxypassword = "123456";private String wechatpayid = "123456";private String alipayid = "123456";private String qrwechatpay = "http://www.baidu.com";private String qralipay = "http://www.baidu.com";/*** 房间状态*/private Integer isstutas = 0;/*** 房间到期时间*/private Date expiretime;}

mapper文件的配置,这里的

typeHandler="com.hz.hzweb.config.handler.MapStringTypeHandler"配置文件其实就是解析出来,但是存入的时候就需要转成json的字符串
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.hz.hzweb.bean.auth.mapper.HouseMapper"><resultMap id="HouseMap" type="com.hz.hzweb.bean.auth.entity.housebean.HouseEntity"><result property="houseid" column="houseid"/><result property="verify" column="verify"/><result property="housename" column="housename"/><result property="housebasis" column="housebasis"typeHandler="com.hz.hzweb.config.handler.MapStringTypeHandler"/><result property="housecarodds" column="housecarodds"typeHandler="com.hz.hzweb.config.handler.MapStringTypeHandler"/><result property="housecarlimit" column="housecarlimit"typeHandler="com.hz.hzweb.config.handler.MapStringTypeHandler"/><result property="housecqsscodds" column="housecqsscodds"typeHandler="com.hz.hzweb.config.handler.MapStringTypeHandler"/><result property="housecqssclimit" column="housecqssclimit"typeHandler="com.hz.hzweb.config.handler.MapStringTypeHandler"/><result property="housepcodds" column="housepcodds"typeHandler="com.hz.hzweb.config.handler.MapStringTypeHandler"/><result property="housepclimit" column="housepclimit"typeHandler="com.hz.hzweb.config.handler.MapStringTypeHandler"/><result property="housecanadaodds" column="housecanadaodds"typeHandler="com.hz.hzweb.config.handler.MapStringTypeHandler"/><result property="housecanadalimit" column="housecanadalimit"typeHandler="com.hz.hzweb.config.handler.MapStringTypeHandler"/><result property="houseflyodds" column="houseflyodds"typeHandler="com.hz.hzweb.config.handler.MapStringTypeHandler"/><result property="houseflylimit" column="houseflylimit"typeHandler="com.hz.hzweb.config.handler.MapStringTypeHandler"/><result property="housesendmsg" column="housesendmsg"typeHandler="com.hz.hzweb.config.handler.MapStringTypeHandler"/><result property="kfqq" column="kfqq"/><result property="kfwechat" column="kfwechat"/><result property="cancel" column="cancel"/><result property="billsmallshow" column="billsmallshow"/><result property="billshow" column="billshow"/><result property="houseproxyaccount" column="houseproxyaccount"/><result property="houseproxypassword" column="houseproxypassword"/><result property="wechatpayid" column="wechatpayid"/><result property="alipayid" column="alipayid"/><result property="qrwechatpay" column="qrwechatpay"/><result property="qralipay" column="qralipay"/><result property="isstutas" column="isstutas"/><result property="expiretime" column="expiretime"/></resultMap>
</mapper>

MapStringTypeHandler是解析文件生成对象

import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.TypeReference;
import org.apache.ibatis.type.BaseTypeHandler;
import org.apache.ibatis.type.JdbcType;import java.sql.CallableStatement;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.HashMap;
import java.util.Map;public class MapStringTypeHandler<T> extends BaseTypeHandler<Map<String, T>> {private Class<T> clazz;//private static final TypeReference<HashMap<String, String>> mapStrStrTypeRef = new TypeReference<HashMap<String, String>>(){};private final TypeReference<HashMap<String, T>> typeRef = new TypeReference<HashMap<String, T>>() {};public MapStringTypeHandler(Class<T> clazz) {this.clazz = clazz;}@Overridepublic void setNonNullParameter(PreparedStatement ps, int i, Map<String, T> parameter, JdbcType jdbcType) throws SQLException {String json = JSON.toJSONString(parameter);ps.setString(i, json);}@Overridepublic Map<String, T> getNullableResult(ResultSet rs, String columnName) throws SQLException {return parseJson(rs.getString(columnName));}@Overridepublic Map<String, T> getNullableResult(ResultSet rs, int columnIndex) throws SQLException {return parseJson(rs.getString(columnIndex));}@Overridepublic Map<String, T> getNullableResult(CallableStatement cs, int columnIndex) throws SQLException {return parseJson(cs.getString(columnIndex));}private Map<String, T> parseJson(String json) {if (String.class == clazz || Integer.class == clazz || Boolean.class == clazz) {return JSON.parseObject(json, typeRef);}Map<String, T> result = new HashMap<>();JSON.parseObject(json).forEach((k, v) -> result.put(k, JSON.parseObject(JSON.toJSONString(v), clazz)));return result;}
}

这个是serviceImpl,这里面设置的文件转成json,同学可以自己试试生成你想要的object,转成json后到数据库不会报错,在这里踩坑解决了一天,希望大家跳过这个坑

import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.hz.hzweb.bean.auth.entity.housebean.*;
import com.hz.hzweb.bean.auth.mapper.HouseMapper;
import com.hz.hzweb.bean.auth.service.HouseService;
import com.hz.hzweb.tools.net.RestResponse;
import org.springframework.stereotype.Service;
import org.springframework.util.StringUtils;import java.util.Random;
import java.util.UUID;@Service
public class HouseServiceImpl extends ServiceImpl<HouseMapper, HouseEntity> implements HouseService {@Overridepublic RestResponse openhouse(String housename) {Random random = new Random();String result = "";for (int i = 0; i < 6; i++) {result += random.nextInt(10);}Long aLong = Long.valueOf(result);HouseEntity houseEntity1 = baseMapper.selectOne(new QueryWrapper<HouseEntity>().eq("houseid", aLong));if (!StringUtils.isEmpty(houseEntity1)) return RestResponse.failure("房间已经存在!").setCode(500);HouseEntity houseEntity = new HouseEntity();houseEntity.setHousecanadalimit(JSONObject.toJSONString(new HouseCanadaLimit()));houseEntity.setHousebasis(JSONObject.toJSONString(new HouseBasis()));houseEntity.setHousename(housename);houseEntity.setVerify(UUID.randomUUID().toString().replaceAll("-", ""));houseEntity.setHouseid(aLong);houseEntity.setHousecanadaodds(JSONObject.toJSONString(new HouseCanadaOdds()));houseEntity.setHousecarlimit(JSONObject.toJSONString(new HouseCarLimit()));houseEntity.setHousecarodds(JSONObject.toJSONString(new HouseCarOdds()));houseEntity.setHousecqssclimit(JSONObject.toJSONString(new HouseCqsscLimit()));houseEntity.setHousecqsscodds(JSONObject.toJSONString(new HouseCqsscOdds()));houseEntity.setHouseflylimit(JSONObject.toJSONString(new HouseFlyLimit()));houseEntity.setHouseflyodds(JSONObject.toJSONString(new HouseFlyOdds()));houseEntity.setHousepclimit(JSONObject.toJSONString(new HousePcLimit()));houseEntity.setHousepcodds(JSONObject.toJSONString(new HousePcOdds()));houseEntity.setHousesendmsg(JSONObject.toJSONString(new HouseSendMsg()));baseMapper.insert(houseEntity);return RestResponse.success().setData(houseEntity);}@Overridepublic RestResponse queryhouse(Long houseid) {HouseEntity houseEntity = baseMapper.selectOne(new QueryWrapper<HouseEntity>().eq("houseid", houseid));if (StringUtils.isEmpty(houseEntity)) return RestResponse.failure("房间不存在").setCode(500);return RestResponse.success().setAny("obj", houseEntity).setCode(0);}@Overridepublic RestResponse gameopenclose(Long houseid, int type) {if (type == 0) {HouseEntity houseEntity = baseMapper.selectOne(new QueryWrapper<HouseEntity>().eq("houseid", houseid));HouseBasis houseBasis = (HouseBasis) houseEntity.getHousebasis();houseBasis.setFlystutas(0);houseBasis.setPcstutas(0);houseBasis.setCqsscstutas(0);houseBasis.setCarstutas(0);houseBasis.setCanadastutas(0);houseEntity.setHousebasis(houseBasis);baseMapper.updateById(houseEntity);return RestResponse.success("关闭成功").setCode(0);} else {HouseEntity houseEntity = baseMapper.selectOne(new QueryWrapper<HouseEntity>().eq("houseid", houseid));HouseBasis houseBasis = (HouseBasis) houseEntity.getHousebasis();houseBasis.setFlystutas(1);houseBasis.setPcstutas(1);houseBasis.setCqsscstutas(1);houseBasis.setCarstutas(1);houseBasis.setCanadastutas(1);houseEntity.setHousebasis(houseBasis);baseMapper.updateById(houseEntity);return RestResponse.success("开启成功").setCode(0);}}
}

然后直接insert的时候,

注意:这里必须要转json才能成功到数据库,也就是你需要存储的对象到数据库

除了添加需要把你想存储的对象变成json,其他不变!前端读出来也是对象哦,传对象直接能更改属性

同学如有任何疑问可以联系博主:755964539@qq.com

转载请标明出处哦!

mybatis plus(包米豆)json存储Mysql数据库相关推荐

  1. mysql 导入json_JsonToMysql(json导入mysql数据库工具)

    JsonToMysql是款功能强大的json导入mysql数据库工具:用户在进行开发数据库.或者完成对相关的数据库维护的时候,经常需要将JSON的数据导入到数据库里面,如果没有专业的工具,就会对您的时 ...

  2. 系列 | 高性能存储-MySQL数据库之存储过程揭秘

    墨墨导读:本文介绍什么是存储过程?为什么要使用存储过程?如何使用存储过程?如何去使用存储过程以及怎么执行存储过程. DBASK小程序已经开设"MySQL 数据库专栏",欢迎大家关注 ...

  3. python 爬虫源码 selenium并存储数据库_使用pythonSelenium爬取内容并存储MySQL数据库的实例图解...

    这篇文章主要介绍了python Selenium爬取内容并存储至MySQL数据库的实现代码,需要的朋友可以参考下 前面我通过一篇文章讲述了如何爬取CSDN的博客摘要等信息.通常,在使用Selenium ...

  4. python框架之Scrapy自动存储mysql数据库

    一.Scrapy框架介绍 '''Scrapy是适用于Python的一个快速.高层次的屏幕抓取和web抓取框架,用于抓取web站点并从页面中提取结构化的数据.Scrapy用途广泛,可以用于数据挖掘.监测 ...

  5. MyBatis中insert将数据插入mysql数据库,显示成功但是数据库不显示数据

    问题:mybatis中使用insert向数据库中插入数据,操作成功但是数据库中没有数据. 原因:mybatis除select外,其他操作(insert,update-)默认不自动提交 解决方法:通过日 ...

  6. 微信头像存储mysql数据库

    mysql 字符集改成 utf8mb4 储存的时候可以base64_encode

  7. MyBatis动态批量插入、更新Mysql数据库的通用实现方案

    参考资料及博客: https://www.cnblogs.com/LiQ0116/p/7389049.html

  8. java sql变更存储,MySQL更改数据库数据存储目录,mysql数据存储

    MySQL更改数据库数据存储目录,mysql数据存储 MySQL数据库默认的数据库文件位于 /var/lib/mysql 下,有时候由于存储规划等原因,需要更改 MySQL 数据库的数据存储目录.下文 ...

  9. 猫眼电影MySQL数据库怎么写_猫眼电影和电影天堂数据csv和mysql存储

    字符串常用方法 #去掉左右空格 'hello world'.strip() #'hello world'#按指定字符切割 'hello world'.split(' ') #['hello','wor ...

  10. python爬取电影网站存储于数据库_python爬虫 猫眼电影和电影天堂数据csv和mysql存储过程解析...

    字符串常用方法 # 去掉左右空格 'hello world'.strip() # 'hello world' # 按指定字符切割 'hello world'.split(' ') # ['hello' ...

最新文章

  1. 微服务、分布式、云架构构建电子商务平台
  2. 初学python之路-day10
  3. 轻松理解之SpringBoot实现原理
  4. oracle undoautotune,温故知新 - UNDO,UNDO_RETENTION 及 _undo_autotune
  5. 【转】如何更改VS2010的[默认开发语言]默认环境设置 .
  6. 王道考研 计算机网络1 计算机网络概念,组成,功能和分类
  7. 关于编译FFMPEG的初级教程
  8. Scala:提取器(Extractor)
  9. 使用R包qpdf用一行代码将多个pdf合并为一个pdf
  10. Java课程设计——学生成绩管理系统
  11. 机械设计基础类毕业论文文献都有哪些?
  12. Thinkpad SL400开启蓝牙
  13. Linux磁盘16进制编辑,Tweak
  14. linux病毒扫描工具,linux病毒扫描工具ClamAV使用
  15. 在腾讯云搭建代理服务器的全部过程
  16. Fedformer中的小波变换(FEB-w模块)
  17. 从顺丰到菜鸟,洋女婿“爆改”俄罗斯邮政
  18. iphone怎么打c语言的分号,iPhone特殊符号怎么打 输入特殊符号技巧
  19. 如何myabtis使用注解对数据库进行操作呢?
  20. dw01均衡电路_一种基于dw01的电池保护电路调试测试方法

热门文章

  1. AIS船舶自动识别系统原理
  2. 人大、北外、北航三校开启在职硕士(学位)商业数据分析方向 | 报名
  3. 揭晓网站建设对于企业发展的重要作用
  4. 两台电脑如何共享文件
  5. mplayer用法大全
  6. 【Pyecharts | Scatter】气泡图实现 / 1990 与 2015 年各国家人均寿命与GDP
  7. UE4相机贴图,屏幕标注
  8. 用C语言编程输出菱形图案
  9. C#中常用对话框类详解
  10. 心理学的应用领域有哪些?