Program的coding記錄篇 功能完善

2021-09-24 11:46:36 字數 2184 閱讀 6753

先簡單說明一下其中遇到的一些問題,問題主要有跳過登入環節,直接通過位址列訪問頁面;由於主頁使用的是iframe結構拼接起來的,若遇到被清除會話後應清除當前的登入資訊,任何請求均拒絕則返回登入頁面,iframe的攔截會在其他的視窗顯示登入頁;因為有資料庫操作的緣故必不可避免的會遇到資料的傳輸與讀取,倘若遇到編碼格式不一致而出現亂碼問題;資料庫中對於類似性別,使用者角色這類的資料的資料型別為int,而頁面需要展示出來的則是文字的形式等等。。那麼就對具體問題具體列舉了。

訪問攔截過濾器

為了防止沒有登入狀態直接訪問的情況,通過servlet實現filter介面做指定頁面可以訪問,其他頁面無權訪問的攔截處理。

首先對整個進行乙個大的限制(攔截),攔截工程位址下的 "/*" 所有頁面,然後再將能夠開放出來的頁面特定頁面即可達到對直接訪問位址的攔截,以及登入註冊頁面以及一些請求的」放行「。

public void dofilter(servletrequest req, servletresponse rep,

filterchain fc) throws ioexception, servletexception else

}

編碼過濾器

這個其實沒有過多好闡述的,就當做乙個比較多面的處理方法記錄了。

public class encodingfilter implements filter 	}	

@override

public void dofilter(servletrequest req, servletresponse rep,

filterchain fc) throws ioexception, servletexception

@override

public void destroy()

}

iframe框架的頁面非預期顯示

int資料的中文轉譯與自定義下拉框

通過乙個自定義標籤對會遇到的幾種情況做處理,要寫乙個自定義標籤簡單來說首先得繼承bodytagsupport類,接著要重寫兩個方法,有成員變數需要set get方法。對資料的處理(翻譯),這裡先宣告兩個成員,乙個是集合用於儲存頁面的資料,乙個」值「成員,這裡集合存放的都是《數字型別,(翻譯)文字》,value則是動態寫入頁面的值,集合這麼設計主要是因為與頁面傳過來的集合型別一致所考量。

public int doendtag() throws jspexception else			

out.flush();

} catch (ioexception e)

return eval_page;//執行標籤後的內容;

}

自定義下拉框可以設定幾個值,寫入頁面的標籤class、name、id屬性,option的value屬性以及標籤中的內容,頁面的資料是集合,同理這裡也要注意這點,對標籤所設定的條件是否存在,控制上下文的輸出流寫入動態頁面。

public int doendtag() throws jspexception 

if(data!=null && data.size()>0)else

}

}out.write(s.tostring());

//重新整理緩衝區

out.flush();

} catch (exception e)

return eval_page;

}

頁面的集合資料

需要用到集合來做資料做特別處理的只有資料庫中的幾個表,例如字典,存放資料的集合為map>由大的集合包裹乙個小集合,小集合存放的資料為上一則問題所提及的資料型別,頁面通過el獲取上下文中的大集合則可以獲取小集合的資料,做到多個小集合的資料上傳。

public static void refreshdict(servletcontext sc) else 

} //迴圈字典並按字典名稱放到應用上下文

for (string dn : allmap.keyset())

}

------ 至此,基本資料的展示以及更新等操作都有了很大的改善。當然資料的層級,許可權關係都還需要進一步去改良。。。

記coding更新導致的HEXO部署失敗

部署部落格到coding平台託管的時候提示ssh公鑰過期,於是git bash出現如下錯誤。nothing to commit,working tree clean 此公鑰已經超過有效期,要繼續使用請到 更改設定。重新生成公鑰 如下 再到coding裡面更新ssh。ssh keygen t rsa ...

coding邊學邊記之C

1.c 中定義函式要有析構函式 2.c 中自定義標頭檔案需要 ifndef code cpp global h define code cpp global h endif code cpp global h3.c 中的map插入鍵值對時,一定要先檢查鍵是否存在,因為 a.如果插入相同鍵的操作,無論...

大型敏捷框架SAFe的Program層

敏捷開發scrum加上xp已經在小團隊領域是所向無敵,一統江湖。safe是在 大規模的敏捷開發如何進行。scrum of scrum解決了如何讓多個scrum team協調一致,聽指揮的開發。safe是從三個層次上定義了如何開展大規模敏捷開發 program 層 如果portfolio層顯得那麼高大...