1. 程式人生 > >寫給自己的平時寫程式碼要注意的地方

寫給自己的平時寫程式碼要注意的地方

這些程式碼都是自己平時寫程式碼的時候犯過錯誤的:

// User u = new User(); 在這寫就錯了
while (rs.next()) {
User u = new User(); // 在這寫就對了
	u.setId(rs.getInt("id"));
	u.setUsername(rs.getString("username"));
	u.setPassword(rs.getString("password"));
	u.setPhone(rs.getString("phone"));
	u.setAddr(rs.getString("addr"));
	u.setRdate(rs.getTimestamp("rdate"));
	userList.add(u);
}
寫錯誤的那種方式,List中操作的User物件是同一個,所以存入List中的都會是同一個物件,都是資料庫中的最後一個User物件

寫對的那種方式(在迴圈裡面new User())每次存入List中的都是從資料庫中這次取出的List物件,每次都會重新建立一個物件存入List中

犯了一個路徑錯誤!找了半天!

在jsp頁面中用<a>標籤連結servlet時,如果在web.xml中servlet是根目錄下,那麼如果jsp不在專案根路徑,href請根據jsp所在的資料夾寫相應的../servlet在web.xml中的URL,如果servlet和jsp是在一個目錄,href可以直接寫相對路徑servlet在web.xml中的URL中和jsp所在同一目錄的後面部分,不用加/,或者同上方法寫../servlet在web.xml中的URL通過具體的路徑問題詳見以後的關於路徑問題的部落格

System.out.println(1==new Integer(1));	// true 1自動裝箱

IO基本操作
1.找出你要做IO的源 目標 源和目標
2.區分傳輸資料的類別,位元組流還是字元流   位元組流最快
3.確認源和目標(記憶體 讀取資料的是記憶體,寫輸入的也是記憶體)
4.是否為其追加基本操作之外的功能(高階流)
5.讀寫的時候安全性問題  len讀取內容已經完畢,讀取到了-1 read(buf,0,len)  write(buf,0,len)
6.關閉流
Integer a = 127;
Integer b = 127;
System.out.println(a==b);	// true
a = 128;
b = 128;
System.out.println(a==b);	//false  -128 - 127 是去常量池取

Eclipse中快速抽取程式碼封裝成函式,是把要抽的程式碼選上,右鍵Refactor--〉Extract Method

在web頁面中引入js和css等檔案時,js和css要在webroot目錄下,即使程式在WEB-INF目錄下,js和css也不能在WEB-INF下,要在webroot下