将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>
相关推荐
良逍Ai出海6 分钟前
OpenClaw 新手最该先搞懂的 2 套命令
android·java·数据库
Keanu-15 分钟前
Redis 主从复制及哨兵模式配置
服务器·数据库·redis
blues925729 分钟前
【JOIN】关键字在MySql中的详细使用
数据库·mysql
x-cmd42 分钟前
[260307] x-cmd v0.8.6:新增 gpt-5.4 模型支持,sudo/os/hostname/cpu 等模块文档更新
java·数据库·gpt·sudo·x-cmd·googel
JuneXcy1 小时前
第10章 数据库的安全与保护
数据库·mysql
吃不饱的得可可1 小时前
【三方库】jsoncpp
c++·json
guodashen0071 小时前
在安卓端启动一个服务器接口,用于接收post请求的json数据
android·服务器·json
liqianpin11 小时前
完美解决phpstudy安装后mysql无法启动
数据库·mysql
小Tomkk1 小时前
化繁为简:Access 与 SQL 创新指南(第四篇)
数据库·sql
cyber_两只龙宝2 小时前
【MySQL】MySQL主从复制架构
linux·运维·数据库·mysql·云原生·架构