為任務生成 id
一個下載任務怎么來確定其唯一性?
- 類似數(shù)據(jù)庫的主鍵自增長?
- uuid的唯一性?
唯一確實可以保證,但是我不知道這個唯一,
因為我手里只有這兩個信息:
- 下載的url
- 下載到本地的路徑
ok,這樣來確定主鍵吧:下載的url+下載到本地的路徑,
有了這個信息,我可以獲取到當前的任務,想怎么管理這個任務就怎么管理~
但是這些信息太長,并且其中的字符可能包括了一些非法字符。
那我們轉換一下思路:
可以把信息下載的url+下載到本地的路徑用md5來生成一個唯一性信息
FileDownloadUtils.md5(formatString("%sp%s@dir", url, path)).hashCode();