JSF2.0、jetty サーバー、および Postgres データベースを使用しています。mp3ファイルをバイト配列形式でデータベースに保存したい。mp3 ファイルのバイト配列をアップロードします。しかし、データベースから同じバイト配列を取得すると、2倍のサイズのバイト配列が取得され、そのためmp3ファイルも機能しません。
public void updateAnnouncementDetail(AnnouncementDetail announcementDetail) {
System.out.println("Upload byte array size:" + announcementDetail.getContent().length);
Session sess=get Session();
sess.beginTransaction();
sess.save(announcementDetail);
sess.getTransaction().commit();
AnnouncementDetail detail;
detail = retrieveAnnouncementDetailById(new AnnouncementDetailPK(announcementDetail.getAnnouncementDetailPK().getAnnouncement(), announcementDetail.getAnnouncementDetailPK().getLanguage()));
System.out.println("Retrived byte array size:" + detail.getContent().length);
}
出力:
アップロードバイト配列サイズ:384440
取得したバイト配列サイズ:768879
なぜそれが起こっているのかわかりません。バイト配列を保存していて、次の行でそれを取得しています。しかし、倍のサイズのバイト配列を取得します。詳細が必要な場合はお知らせください。