1.CGI:進程,servlet:線程
2.HttpServletResponse下的方法就沒有get開頭的,(PrintWriter)getWriter在ServletResponse下。
3.str==null||str.length()=0(注意順序),這樣判斷更健壯,可能初始化爲空串。
4.<label> 標籤爲 input 元素定義標註(標記),label 元素不會向用戶呈現任何特殊效果。不過,它爲鼠標用戶改進了可用性。若是您在 label 元素內點擊文本,就會觸發此控件。就是說,當用戶選擇該標籤時,瀏覽器就會自動將焦點轉到和標籤相關的表單控件上。<label> 標籤的 for 屬性應當與相關元素的 id 屬性相同。註釋:"for" 屬性可把 label 綁定到另一個元素。請把 "for" 屬性的值設置爲相關元素的 id 屬性的值。html
<html><body><p>請點擊文本標記之一,就能夠觸發相關控件:</p><form><label for="male">Male</label><input type="radio" name="sex" id="male" /><br /><label for="female">Female</label><input type="radio" name="sex" id="female" /></form></body></html>
5.作留言板時須要把裏面的特殊字符替換掉,用String的replaceAll,處理<>' &,最後替換換行符"\n",換成<br>,這個必定要放在大於小於號後面。
java
public static String filterHtml(String input) {if (input == null) {return null;}if (input.length() == 0) {
return input;
}input = input.replaceAll("&", "&");input = input.replaceAll("<", "<");input = input.replaceAll(">", ">");input = input.replaceAll(" ", " ");input = input.replaceAll("'", "'");input = input.replaceAll("\"", """);return input.replaceAll("\n", "<br>");}
6.cookie:餅乾,曲奇;http是無狀態協議、斷開式連接,因此殘生了cookie,是文本文件,採用key-value存儲。只能是英文或者數字。實現記住我功能,定製個性化頁面。win7在C盤User目錄下,使用setMaxAge設置有效期(秒),大小和數量有限制。由於cookie是銘文的,因此可能會泄露信息。注意cookies更改事後還須要再加載到服務器,由於
修改只是在本地硬盤。沒有刪除cookie的方法,設置有效期是0就好了。
7.最後訪問時間瀏覽器
//在java.text,java.util已通過時
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");Cookie cookie2 = new Cookie("lastTime", sdf.format(new Date()));//cookie一個月,不必再判斷一個月 多少天
cookie2.setMaxAge(24 * 60 * 60 * 30);//須要放回服務器
response.addCookie(cookie2);Cookie[] cookies = request.getCookies();Cookie cookie = null;
for (int i = 0; i < cookies.length; i++) {cookie = cookies[i];if (cookie.getName().equals("username")) {out.println("用戶名:" + cookie.getValue());
out.println("<br>");
}if (cookie.getName().equals("lastTime")) {out.println("最後訪問時間:" + cookie.getValue());
out.println("<br>");
}}