你還在因為加班熬夜而禿頭嗎?你還在因為奇葩需求而造輪子嗎?那你找對人了!!本文切身感受程序員之痛苦,背后默默吐血整理了一篇文章,希望對大家有所幫助。沖沖沖!!
寫爬蟲IP被封了怎么解決?立即使用
工欲善其事 必先利其器
身為一個程序員,每天面對的事情就是寫代碼和吹牛逼了。但是總是感覺自己這兩個事情沒有達(dá)到一個平衡點,總感覺每天寫代碼的時間太多了,都沒有多少讓自己吹的時間了。不知道大家有沒有這些問題和疑惑呢?
我們已知程序員是最會偷懶的生物!哎!那么問題來了,那怎么摸魚時間還是這么少呢?難道是我們太菜了嗎?不不不,可不要小瞧自己,那會是啥原因嘞?
答案就是,當(dāng)然是你還沒看這篇文章唄,本文切身感受程序員之痛苦,背后默默吐血整理了一篇文章,現(xiàn)在分享給大家,希望對大家有所幫助。
目錄
-
整體預(yù)覽圖
-
JSON解析工具
-
HTTP網(wǎng)絡(luò)請求工具
-
字符串處理工具
-
集合處理工具
-
文件流處理工具
-
加解密工具
-
JAVA bean 對象轉(zhuǎn)換工具
-
緩存和限流工具
開始上手
整體預(yù)覽圖
本文會從圖中分類觸發(fā),介紹相關(guān)工具包,并簡單介紹使用。因為本文篇幅有限,所以只當(dāng)做是一個引子。具體細(xì)節(jié)還是都得大家在寫代碼的時候慢慢體會。
JSON 解析工具
json 解析工具在開發(fā)中有多常用相信不用我多說了吧,可以說是程序員天天用到的工具,這也是我將它放到第一個來說的原因,下面我們來一起看一下,概括和使用吧,GO! 筆者我用的比較多的是 Fastjson ,它是阿里開源的一款進(jìn)行 JSON 解析的工具,用法也是相當(dāng)簡單。
1、maven 導(dǎo)入 pom 坐標(biāo)
<dependency> <groupId>com.alibaba</groupId> <artifactId>fastjson</artifactId> <version>1.2.83</version> </dependency>
2、下面看怎么使用
- JSON 字符串與實體對象互相轉(zhuǎn)化
// 字符串轉(zhuǎn)對象 Studen student = JSON.parseObject("{"name":"小明","age":18}", Student.class); // 對象轉(zhuǎn)字符串 String str = JSON.toJSONString(student);
- JSON 字符串與 JSONObject 互相轉(zhuǎn)化
JSONObject只是一種數(shù)據(jù)結(jié)構(gòu),可以理解為JSON格式的數(shù)據(jù)結(jié)構(gòu)(key-value 結(jié)構(gòu)),可以使用put方法給json對象添加元素。JSONObject可以很方便的轉(zhuǎn)換成字符串,也可以很方便的把其他對象轉(zhuǎn)換成JSONObject對象
// 字符串轉(zhuǎn)JSONObject對象 JSONObject jsonObject = JSONObject.parseObject("{"name":"小明","age":18}"); // JSONObject對象轉(zhuǎn)字符串 String str = jsonObject.toJSONString();
- JSON 字符串轉(zhuǎn)化為 集合類
// 定義解析字符串 String studentListStr = "[{"name":"小明","age":18},{"name":"小牛","age":24}]"; // 解析為 List<Student> List<Student> studentList = JSON.parseArray(studentListStr, Student.class); // 定義解析字符串 String studentMapStr = "{"name":"小明","age":18}"; // 解析為 Map<String,String> Map<String, String> stringStringMap = JSONObject.parseObject(studentMapStr, new TypeReference<Map<String, String>>(){});
fastjson 就介紹到這里,這里只是介紹了簡單的使用,更加詳細(xì)的用法請參考官方的文檔,里面還有