近期配合保留原始資料將class資料轉json sting 存到DB的blob欄位內,底下是JAVA取值用的邏輯備忘下,試了許多方式就這樣最精簡也符合需要。
至於為什麼選擇blob而不用clob這個主要是考量若干資安掃描會去檢查cloumn data是否有踩紅線,改bytes array可以省去不必要的困擾,不然blob通常拿來存圖或是編譯後的檔案(PDF),這類json string存clob在DB tools上會較方便識別,就看各自的需要囉!!
source json data:
bldata value is new Gson().toJson(Variable.class).getBytes("utf-8")
Read
select bldata from table where length(bldata) > 4 with ur;
Blob blob = resultSet.getBlob("bldata");
byte[] bdata= blob.getBytes(1, (int) blob.length());
Variable.class Variables jsonStr = new Gson().fromJson(new String(bdata), Variable.class);
沒有留言:
張貼留言