專案 妍妍的相簿4 擴充套件

2021-10-03 11:47:21 字數 1261 閱讀 8961

實現:

1、可以判定當前請求的referer欄位(http請求協議中的header 的部分),是不是在**指定的白名單中,如果是,才允許訪問

2、可在**中用乙個hashset存一下允許的referer就可以了,展示的時候判斷一下是否存在hashset中即可

//防盜煉機制:白名單

}

我發現同一張存在硬碟中還是會存兩份,所以為了優化磁碟的儲存空間,就決定將兩份完全一樣的在磁碟只存乙份。

那怎麼判斷兩個內容是否一樣呢?這就要用到md5了!

檔案雖然是二進位制資料,但本質上也是字串,針對內容計算md5。如果兩個內容相同,得到的md5一定相同,反之大致也可以。

md5的特點:

1、不管原串多長,得到的md5值是固定的長度

2、原串哪怕變動一點,md5值變動很大

3、計算md5值的過程很簡單,但是通過md5值無法推測出原字串的(應用在密碼學)

// md5 計算

image.se***5(digestutils.md5hex(fileitem.get()));

image.setpath("./image/" + image.ge***5());

// 存到資料庫中

imagedao imagedao = new imagedao();

// 看看資料庫中是否存在相同的 md5 值的, 不存在, 返回 null

image existimage = imagedao.selectbymd5(image.ge***5());

imagedao.insert(image);

// 2. 獲取的內容資訊, 並且寫入磁碟檔案

if (existimage == null) catch (exception e) ");

return;

}}

但後續發現,如果有多張對應同乙個磁碟檔案,刪除任何乙個,磁碟檔案都被刪除了,剩餘無法正常顯示

專案4擴充套件2 從檔案中讀入資料

檔名稱 完成日期 2014年3月20日 版本號 v0.1 對任務及求解方法的描述部分 輸入描述 無 問題描述 程式輸入 程式輸出 問題分析 演算法設計 我的程式 include include include include using namespace std class salary void...

WDM中的結構 4 裝置擴充套件

wdm中的結構 裝置擴充套件 裝置擴充套件 device extension 是與裝置物件相關的另一種重要的資料結構。可以用它來儲存與特定裝置關聯的資訊。裝置擴充套件其實只是乙個未分頁的池,由驅動開發者來定義它的大小和內容。並由i o管理器自動把它分配給裝置物件,即裝置物件的pvoid device...

web設計 4 可擴充套件的行

不要指定橫向頁面元件的高度,要讓它們能夠在縱向自由擴充套件。常見的包含文章正文或大段文字的區域,應該適應任何篇幅和大小的文字。但是例如文章標題 登陸資訊欄等也要考慮文字內容數量及高度的變化。例如 下圖中標題文字數量過多時固定高度就會破壞樣式 如何修改 1.html結構為 利用h5的header標籤 ...