Mysql存储java对象实例详解

 更新时间:2016年11月17日 11:44:34   投稿:lqh  
这篇文章主要介绍了Mysql存储java对象实例详解的相关资料,需要的朋友可以参考下

Mysql存储java对象

MySQL  设置字段为 blob

保存对象,先将对象序列化为byte[]  使用 setObject(byte[] bytes)

ByteArrayOutputStream baos = new ByteArrayOutputStream(); 
    ObjectOutputStream out = null; 
    try { 
      out = new ObjectOutputStream(baos); 
      out.writeObject(java实例对象);    
    } catch (IOException e) { 
      logger.error("msg2Bytes error!", e); 
    }finally{ 
      try { 
        out.close(); 
      } catch (IOException e) { 
        logger.error("msg2Bytes error!", e); 
      } 
    } 
     
    return baos.toByteArray(); 

获取对象 使用getBytes(),将获取的byte[]反序列化为Java 对象

ByteArrayInputStream bais; 
    ObjectInputStream in = null; 
    try{ 
      bais = new ByteArrayInputStream(bytes); 
      in = new ObjectInputStream(bais); 
 
      return (java类)in.readObject(); 
    }finally{ 
      if(in != null){ 
        try { 
          in.close(); 
        } catch (IOException e) { 
          logger.error("bytes2Msg error!", e); 
        } 
      } 
    } 

网上的其他方式会有各类问题,请慎用。

包括:

1.设置url参数 autoDeserialize=true
2.setObject(java实例对象)        查询

ObjectInputStream oips = new ObjectInputStream(rs.getBinaryStream(1)); 
ArrayList<String> obb = (java类)oips.readObject();//从流中读取对象 

感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!

相关文章

  • Java实现文件的分割与合并

    Java实现文件的分割与合并

    这篇文章主要为大家详细介绍了Java实现文件的分割与合并,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2021-08-08
  • Springmvc中的转发重定向和拦截器的示例

    Springmvc中的转发重定向和拦截器的示例

    本篇文章主要介绍了Springmvc中的转发重定向和拦截器的示例,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2018-05-05
  • Intellij IDEA安装lombok插件及使用详解

    Intellij IDEA安装lombok插件及使用详解

    今天小编就为大家分享一篇关于Intellij IDEA安装lombok插件及使用详解,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起跟随小编来看看吧
    2018-12-12
  • plsql实现DES对称加密 Java解密

    plsql实现DES对称加密 Java解密

    这篇文章主要介绍了plsql实现DES对称加密 Java解密的方法,帮助大家更好的理解和学习使用Oracle与Java,感兴趣的朋友可以了解下
    2021-02-02
  • Springboot使用redis实现接口Api限流的示例代码

    Springboot使用redis实现接口Api限流的示例代码

    本文主要介绍了Springboot使用redis实现接口Api限流的示例代码,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2022-07-07
  • 如何使用Spring AOP的通知类型及创建通知

    如何使用Spring AOP的通知类型及创建通知

    这篇文章主要给大家介绍了关于如何使用Spring AOP的通知类型及创建通知的相关资料,文中通过示例代码介绍的非常详细,对大家学习或者使用Spring AOP具有一定的参考学习价值,需要的朋友们下面来一起学习学习吧
    2019-12-12
  • Java虚拟机底层原理详细分析

    Java虚拟机底层原理详细分析

    这篇文章主要介绍了Java虚拟机底层原理详细分析,运行时数据区就是俗称的虚拟机内存,主要包括我们熟悉的堆、栈、本地方法栈、方法区(元空间)、程序计数器,虚拟机调优主要针对的是运行时数据区,也就是虚拟机内存,需要的朋友可以参考下
    2024-01-01
  • SpringBoot项目发送钉钉消息功能实现

    SpringBoot项目发送钉钉消息功能实现

    在工作中的一些告警需要发送钉钉通知,有的是发给个人,有的要发到群里,这时项目就需要接入钉钉,实现发消息的功能,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下吧
    2024-02-02
  • SpringSession 请求与响应重写的实现

    SpringSession 请求与响应重写的实现

    这篇文章主要介绍了SpringSession 请求与响应重写的实现,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2018-11-11
  • 使用Sentinel滑动窗口实现限流和降级

    使用Sentinel滑动窗口实现限流和降级

    Sentinel 是一个开源的高可用性、高扩展性的实时流量控制框架,它可以用于保护服务稳定性,防止系统因为流量过大而崩溃,这篇文章我们所介绍的是滑动窗口,它是 Sentinel 实现限流和降级的重要组件之一,感兴趣的同学跟着小编来看看吧
    2023-09-09

最新评论