admin294
小白是我吖
采纳率76.9%
2019-09-25 16:06 阅读 615
已采纳

Java将Blob类型数据存入数据库

javax.sql.rowset.serial.SerialBlob@82b802e存入的为这个而不是Blob数据,请问该怎么办

public int update(int Id,byte[] original_text) {
        String strSql = "update pro_trans_tesk_t set result_text=? where id=?";

        List<Object> arrArgs = new ArrayList<Object>();
        arrArgs.add(String.valueOf(original_text));
        arrArgs.add(String.valueOf(Id));

        MySqlBaseBean mDBBean = new MySqlBaseBean();
        return mDBBean.update(strSql, arrArgs);
    }

入库代码

  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 复制链接分享

3条回答 默认 最新

  • 已采纳
    caozhy 从今以后生命中的每一秒都属于我爱的人 2019-09-25 16:11

    你看下数据库存入没有,这个是正常的,当你试图print或者toString一个SerialBlob变量的时候,显示的不是文件的内容,而是这么一个字符串。这是正常现象。

    点赞 1 评论 复制链接分享
  • wojiushiwo945you 毕小宝 2019-09-25 17:57

    需要看看你的入库代码的逻辑,Blob 类型,Java 实体中应该定义为 byte[] 类型的。

    点赞 2 评论 复制链接分享
  • xionglangs 编程爱好者熊浪 2019-09-25 20:41

    String.valueOf(byte[]),返回的就是一个地址,调用的是Object的toString方法,把String.valueOf(original_text)改成new String(original_text)。

    点赞 1 评论 复制链接分享

相关推荐