将JSON的格式数据存储到数据库中

将JSON的格式数据存储到数据库中,在一些业务中需要存储一个设备的一些属性。比如 这样以键值对出现的形式,存储在数据库中。我们可以以JSON的格式存储。

数据库字段设计的时候选择JSON类型的。

对于需要存储的内容用Map集合进行存储

java 复制代码
Map<String, Object> jsonData = new HashMap<>();
for (int i = 0; i < attributes.size(); i++) {
    Attribute att = attributes.get(i);
    jsonData.put(att.getAttrKey(),att.getAttrValue());
}

使用FastJson将map转为JSON的字符串。然后插入到数据库中就可以了。

java 复制代码
String  json = (String) JSONObject.toJSONString(jsonData);

mapper.xml中的语句

java 复制代码
  <insert id="insertBatchRows" parameterType="java.util.List" useGeneratedKeys="true" keyProperty="id">
        insert into tb_voice_raw (device_id, device_type, raw_data_path, status, created_at, voice_name, source,parameters)
        values
        <foreach item="item" index="index" collection="list" separator=",">
            (#{item.deviceId}, #{item.deviceType}, #{item.rawDataPath}, #{item.status}, #{item.createdAt}, #{item.voiceName}, #{item.source},#{item.paramsAsJson})
        </foreach>
    </insert>
相关推荐
小小程序员.¥20 小时前
Oracle--查询语句
数据库·oracle
小猿姐1 天前
# KubeBlocks for MSSQL 高可用实现
数据库·架构·sql server
码农阿豪1 天前
行标识符的抉择:深入理解数据库领域的OID与ROWID机制
数据库·oracle
不剪发的Tony老师1 天前
MyCLI:一个增强型MySQL命令行客户端
数据库·mysql
SHANGHAILINGEN1 天前
2400 万个未培养病毒重新定义病毒多样性
数据库·测序·组学
刘晨鑫11 天前
PostgreSQL日常维护
数据库·postgresql
xiaokangzhe1 天前
PG数据库日常应用
数据库·oracle
XDHCOM1 天前
MySQL ER_DD_VERSION_INSTALLED报错解析,数据字典版本问题,故障修复与远程处理指南
数据库·mysql
ID_180079054731 天前
除了 Python,还有哪些语言可以解析 JSON 数据?
开发语言·python·json
yaoyouzhong1 天前
MySQL 批量插入详解:快速提升大数据导入效率的实战方法
大数据·数据库·mysql