项目中碰到个问题,有点不知道怎么做。是这样,项目中大量用到接口,现在的要求是,在接口发送数据后,将发送的数据以及发送状态存入数据库,架构师给的要求是将JAVA对象序列化后,以二进制的方式存入数据库,以前没有碰到过直接存二进制的东西。也就是说,数据库中可能存在这样几个字段,1、接口编号(以区分是什么接口),2、发送内容(即发送的对象),3、成功标志。现在就是不知道程序怎么写,数据库字段怎么设置。发送内容无法区分对象类型,只能直接存Java对象(序列化后的2进制)。还请大侠们给帮忙。

解决方案 »

  1.   

    接受数据到没什么 最多用个IO流就可以。转化成对象也没什么  set/get也行  
    存储二进制  还真没遇见过!
    接口编号 发送内容 成功标志 应该都是业务逻辑上的东西 ,这个得自己去实现了!
      

  2.   


    数据发送后,调用一个自己写的方法保存一下就行了啊。
    1、JAVA对象序列化用着确实很方便,可以将对象以二进制流的形式保存在数据库中,类型可以是Blob的,也可以是Byte[]。具体看你用什么数据库了。我之前做个这个,但是不是保存在数据库中的,因为数据对象的大小不容易控制,太小了不够用,太大了浪费。所以我把对象保存成一个临时文件,存在本地。用的时候再根据接口类型反解析出来即可。
    2、接口编号最好做一个枚举对象,比较容易控制。
    3、成功标志就很容易控制了吧,boolear就OK了。