有關HttpClient模擬用戶登錄問題,網上資料介紹很多,在我要登錄的站點是用Acegi控制權限的,測試多次都不成功,不知道什么原因。
Souce Code:
HttpClient client = new HttpClient();
client.getParams().setCookiePolicy(CookiePolicy.BROWSER_COMPATIBILITY);
try {
PostMethod post = new PostMethod("http://localhost:8080/test/");
NameValuePair name = new NameValuePair("j_username", "aaa");
NameValuePair pass = new NameValuePair("j_password", "111");
post.setRequestBody(new NameValuePair[]{name,pass});
int status = client.executeMethod(post);
System.out.println(status);
System.out.println(post.getResponseBodyAsString()); // 得到的還是登錄頁面的內容
post.releaseConnection();
} catch (HttpException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
在使用Struts2開發Web應用時,如果使用Date類型數據時,Struts2會調用Date轉換器來處理頁面的Date字符串到Date類型的轉換,在閱讀了Struts2的Code后,發現Date轉換器使用的日期格式都不是中文日期格式,而我們的日期字符串格式為2008-05-26 12:00,當找不到對應的日期格式時,Struts2會用短日期格式來處理(yy-MM-dd),這時如果我們需要長日期格式的數據,在日期轉換后是拿不到準確數據的,不知道有沒有同仁處理過類似的問題,歡迎大家給個合適的解決方案。
在使用Dos命令時,我們必須通過命令cmd/command來打開dos窗口,再切換到運行目錄,頻繁的切換使人非常的厭煩,我們可以通過修改注冊表來快速的切換到運行目錄。
在“開始”-“運行”中輸入“regedit”,打開注冊表。找到\HKEY_CLASSES_ROOT\Folder\shell,如果沒有shell,可以在Folder下新建一個名為shell的鍵,在shell下新建一個名為“命令行(Command Windows)”的鍵,在這個鍵之下再建一個新的名為“Command”的鍵,設置默認值為“cmd /K cd /d %L”。
完成后的效果如下:

這樣當我們選中一個目錄,在右鍵上下文菜單里面就多了一個“命令行(Command Windows)”的選項,單擊這個選項就可以打開一個命令行窗口并且快速切換到當前選中的目錄。