Software entities (class, modules, functions, etc.) should be open for extension, but closed for modification. Junior programmers create simple solutions to simple problems. Senior programmers create complex solutions to complex problems. Great programmers find simple solutions to complex problems. 註1:本部落格的範例程式碼在 2015 年以前的文章中,大多是以全型空白做縮排。如需服用,請自行用文字編輯器的取代功能把全型空白取代成半型空白。
- Bertrand Meyer
- Charles Connell
註2:本部落格的內容授權請參閱部落格底部的授權宣告。
2016年7月26日 星期二
2016年7月25日 星期一
Amazon Beanstalk 的應用程式位置
隨筆紀錄,如果把 Java 程式部署到 Beanstalk 上
預設在 Beanstalk 的路徑會是 /var/app/current/application.jar。
2016年7月4日 星期一
透過 Gson 輸出 pretty print 的 JSON
當使用 Gson 來解析 JSON 格式時,如果需要讓輸出的 JSON 以 pretty print 格式輸出
可以利用簡單的小工具達成這個目的。
Gson gsonBuilder = new GsonBuilder().setPrettyPrinting().create(); gsonBuilder.toJson(....);
不過 Gson 的這個工具,預設會自動做 HTML 跳脫,因此特殊符號都會自動被置換成 Unicode 表示形式
如果想要關掉 HTML 跳脫,可以使用 .disableHtmlEscaping() 方法。
Gson gsonBuilder = new GsonBuilder().setPrettyPrinting().disableHtmlEscaping().create(); gsonBuilder.toJson(....);
2016年7月2日 星期六
對 Jersey 製作的 RESTful API 做單元測試(二):啟用 Servlet
Jersey 中使用 Jersey Test Framework 做測試時
如果遇到需要使用 Servlet 的狀況,例如使用了 @Context HttpServletRequest request
可能就會注意到,HttpServletRequest 這類應該要自動被注入的東西,在測試時都沒有被注入
因此會發生像是 NullPointerException 等等的錯誤。