Java Work

判空

  • 對於list和map使用CollectionUtils.isEmpty()判空(null和size=0)
  • 對於對象或數組使用ObjectUtils.isEmpty()判定,可以嘗試使用Optional.ofNullable()
  • 對於數組使用ArrayUtils.isEmpty()判空(null和length=0)
  • 對於字符串使用 StringUtils.isBlank()判空(null和空字符串)

工具類

  • 使用hutool可以方便的進行文件類型的判斷唯一id(uuid,Snowflake)的生成二維碼生成圖片加水印BASE64編碼解碼圖片驗證碼等操作

集合

  • 使用Arrays.asList()返回的list爲數組的內部list,只允許遍歷不允許增刪,可以使用Stream流轉換爲list
  • Collection和map對於僅遍歷可以使用增強for循環和,但如果有刪除爲避免錯誤必須使用迭代器
  • foreach遍歷不允許改變變量的地址,java的參數是值傳遞,修改了形參的地址並不影響原來的參數,故即使你修改了值也不會同步到原變量中,故操作的變量都顯示或者隱私的定義爲final

JSON

fastjson

  • parseArray(String text, Class<T> clazz) 解析List
  • parseObject(String text, Class<T> clazz) 解析Object
## JSON對於null、空白字符串、“null”會返回null
if (text == null) {
   
   
    return null;
} else {
   
   
    DefaultJSONParser parser = new DefaultJSONParser(text, ParserConfig.getGlobalInstance());
    JSONLexer lexer = parser.lexer;
    int token = lexer.token();
    ArrayList list;
    if (token == 8) {
   
   
        lexer.nextToken(); // nextToken() => ...if ("null".equalsIgnoreCase(ident))   this.token = 8;
        list = null;
    } 
}
  • String toJSONString(Object object) 將對象轉爲String
  • toJSONBytes(Object object, SerializerFeature... features) 將對象轉爲byte[]
  • @JSONField(serialize = false) 轉String忽略

jackson

  • @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") 設置Date到前臺的格式
  • @JsonIgnore SpringMVC不會向前臺傳遞該字段

IDEA

插件

  1. Lombok : 快速生成getter、setter等
  2. Alibaba Java Coding Guidelines :阿里規約掃描
  3. Rainbow Brackets :彩色括號
  4. HighlightBracketPair :高亮提示(未使用)
  5. MyBatisX :mabatisPlus提供的xml和mapper轉換的插件,小鳥圖標
  6. CamelCase :大小寫、駝峯、下劃線、中劃線轉換插件
    • 使用shift+Alt+u進行轉換,
    • 可以在Editor中設置CamelCase的轉換,一般只保留下劃線駝峯兩種
  7. String Manipulation :字符串工具(未使用)
  8. RestfulToolkit http :Restful請求工具
    • 打開idea,在右側邊欄會有一個標籤(RestServices),打開可以看到裏面是url路徑
    • ctrl+\或者ctrl+alt+n會檢索路徑
    • Ctrl + Enter格式化json
    • 沒有記憶功能,也不能加token,只是查找請求路徑使用
  9. easycode :代碼生成工具(個人覺得很好用,常用於生成實體類)
    • 支持自定義模板
    • 支持添加自定義列,不影響數據庫
    • 支持多表同時生成
    • 支持自定義類型映射
    • 支持配置導入導出
    • 支持動態調試
    • 支持自定義屬性
  10. Power Mode 11 :打字特效(純屬裝逼)
  11. Nyan Progress Bar :漂亮的進度條(純屬裝逼)
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章