日前有個job Fail拋送EmptyResultDataAccessException,因為有組套設計故update會有多筆相符狀況,去爬了文找找發現是UPDATE的機制造成的。
解決方式: 使用 setAssertUpdates(boolean); 設定成FALSE後排除,不過使用上還是得依照Table Schema設計,若無多筆會符合情況下還是保留預設會比較安全。
日前有個job Fail拋送EmptyResultDataAccessException,因為有組套設計故update會有多筆相符狀況,去爬了文找找發現是UPDATE的機制造成的。
近期處理個需求需要在產出的PDF上面加上章戳圖,專案使用的是iTextPDF所以爬了些文找到了這方式,很順利的處理需求!! 做個備忘。
近期配合保留原始資料將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);
近日碰到了個需求,要整併外部的JAR到專案中,不過對方的JAR SIZE數十MB而自已所需要的只是裡面其中一個函式,故放入lib呼叫會造成專案封裝後的SIZE大增,不太OK~所以找到了ProcessBuilder這個好用的solution來,底下做個備忘囉!!
完工後的結果如下,效果如預期的方向呈現,OK的!