本文目錄一覽:
在jsp中連接數據庫出錯
ClassNotFoundException: com.microsoft.sqlserver.jdbc.SQLServerDriver
你的sql驅動包沒有在發佈的時候引入
JSP頁面上連接數據庫結果出錯
報錯是
到主機
的
tcp/ip
連接失敗。你下面的鏈接串我不確定有沒有寫錯。你用的是sql2005嗎?你在你本地數據庫用sa用戶登陸。之後應該有個什麼管理的。然後你去把tcp/ip給啟動。我記得我以前用的時候這個tcp/ip默認貌似是沒有啟用的
jsp連接數據庫時出現了問題。
哈哈,別聽前面的,如果是前面說的:
“對數據庫操作是用PreparedStatement接口,不是用Connection “
如果這樣,根本不可能有異常出現,只是報告錯誤而已.因為異常是運行的時候出現的,而錯誤是編譯器編譯的時候告訴你的.
很明顯:java.lang.NullPointerException 是異常.而不是錯誤!
你的sql有問題:
你的sql:
ResultSet rs=Condb.executeQuery(“select *from admin where name=”+admin_name+”and password=”+password+””);
假設: admin_name=”123″, password=”123″
那麼你的sql 將是:
select *from admin where name=123and password=123
問一下你,這樣的sql能運行嗎?
所以在14行rs仍然指向為空,能沒有java.lang.NullPointerException 異常嗎?
嚴格的來說,我們一般將if語句的條件寫為:
if(rs!=nullrs.next())
看到了嗎?如果rs為空,後面的next方法不會被執行,就不會有java.lang.NullPointerException 異常發生了,你要知道你的sql可能在數據庫內找不到信息!在找不到信息的時候不這樣寫一樣會有java.lang.NullPointerException 異常出現!
你的sql錯誤在這裡:
1.如果數據庫裏面的name列和password列不是數值型的話就一定出錯,因為少了”將他們括起來.
2. ‘*’ 號沒有和from 分開,and前面要有一個空格,剛開始寫肯定是很多錯誤的了,我也是一樣的.
所以應該改為:
ResultSet rs=Condb.executeQuery(“select * from admin where name='”+admin_name+”‘ and password='”+password+”‘”);
如果你覺得這樣很麻煩的話,可以考慮用java.sql.PreparedStatement接口.
例如:
try
{
PreparedStatement ps=cn.prepareStatement”select * from admin where name=? and password=?”);//假設cn為你的Connection對象
/*如果你使用的是int型的數據,請這麼寫:
ps.setInt(1,2);//設置第一個?號為一個整數2
*/
ps.setString(1,admin_name);//設置第一個?為字符串變量admin_name的值
ps.setString(2,password);//設置第二個?為字符串變量password的值
rs=ps.executeQuery();//假設rs為ResultSet對象
…….
}catch(SQLException ex)
{
ex.printStackTrace(); //強烈建議你寫這個,因為他能打印異常的具體信息,提供給你調試用!
}
關於JSP連接數據庫的問題
你的驅動類型不對吧,重新下載一個ms sqlServer的連接驅動,我想問題就會解決的。
jsp連接sql數據庫出現問題!
地球人都知道是空指針異常啦,可能的原因是用來返回連接數據庫得到的結果集為null(可能是SQL語句編寫錯誤)當然不一定是數據庫連接相關對象為空。老兄,你仔細看一下代碼,出現空指針異常一般是一個值為null的對象被操作,舉個簡單的例子如:String
str
=
null;
boolean
equ
=
str.equals(“str”);就會出現空指針異常
你可以通過手動修改代碼來調試,(接上面的例子)如:
String
str
=
null;
boolean
equ;
if(str
==
null){
System.out.println(“對象str為空”);
return;
}else{
equ
=
str.equals(“str”);
}
這裡System.out.println(“對象str為空”);語句可以理解為日誌信息,告訴你是哪個對象為null;
這樣你就可以解決問題了
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-hk/n/289411.html