本文目錄一覽:
在jsp編程中如何連接數據庫?
用JDBC技術
創建數據庫連接,分為以下幾步:
1.裝載並註冊數據庫的JDBC驅動程序
2.取得數據庫連接
3.建立Statement 對象
4.準備並執行調用SQL語句
5.處理ResultSet中的記錄集
6.釋放資源
第一步
加載驅動程序
try{ //裝載MySQL數據庫驅動
Class.forName(“com.mysql.jdbc.Driver”);
}
catch(ClassNotFoundException e)
{
e.printStackTrace();
}
注意:在使用JDBC之前,要在文件前導入有關SQL的類即
import java.sql.*
第二步
取得數據庫連接
try{
String url=”jdbc:mysql://localhost:3306/student;
String user=”root”;
String password=”1234″;
con=DriverManager.getConnection(url,user,password);
}
catch(SQLException e)
{
e.printStackTrace();
}
第三步
建立Statement 對象
try{
Statement sql=con.createStatement();
}
catch(SQLException e)
{
e.printStackTrace();
}
第四步
執行各種SQL語句
try{
ResultSet rs=sql.executeQuery(
“select * from student”);
}
catch(SQLException e)
{
e.printStackTrace();
}
第五步
獲取查詢結果
ResultSet rs=sql.executeQuery(
“select * from student”);
while(rs.next())
{
rs.getString(2)或者是rs.getString(“name”);
rs.getInt(3)或者是rs.getInt(“age”);
}
注意
只有select語句才會有結果集返回;
ResultSet對象一次只能看到一個數據行
使用next()方法走到下一數據行
獲得一行數據後,ResultSet對象可以使用getXxx()方法獲得字段值,將位置索引或字段名傳遞給get第六步
關閉創建的各個對象(後打開的先關)
rs.close();
sql.close();
con.close();Xxx方法()即可。
關於JSP連接數據庫的問題
你的驅動類型不對吧,重新下載一個ms sqlServer的連接驅動,我想問題就會解決的。
jsp 連接數據庫問題
那你要吧ConnDBjava:45行的代碼拿出來給我們看看啊,要不怎麼知道是什麼啊?
據我個人分析
1,首先你要搞明白你用什麼數據庫
2.什麼數據庫就對應不同的數據庫驅動,你必須導入這個驅動,把驅動包放在tomcat服務器的common文件下的lib文件夾裡面
3.對飲不同的數據庫,你的com.microsoft.jdbc.sqlserver.SQLServerDriver”也會不一樣,
看的出來你是用微軟公司的sqlserver。
在用到sqlserver的時候,要求你的sqlserver的補丁必須要更新,這個更新的程序我現在也沒了,不過你可以上網下載,搜索的關鍵字“sqlserver的驅動補丁”。這個補丁要安裝的。
這樣貼出來就清晰多了嗎,很明顯是你的ConnDB.executeQuery這個ConnDB對象調用了那個executeQuery方法,不成功,因為你的ConnDB對象是空對象。
在獲得它的時候,出現問題,也就是獲得不到ConnDB。為什麼獲得不到呢?
這個就和驅動,和你的url,和你的補丁有沒有打好有關係了。
建議樓主用system.out.println(“*************”);去探測,在獲取連接對象的時候什麼地方出錯了。
或者將代碼一部分一部分的測試。都可以。
說到這裡,最後說幾句,現在人要是用java的話,後台數據庫都不會用sqlserver的,他們是兩個不同的公司。他們本身在底層都有些不太兼容。或者就是相互抵觸。所以,建議樓主用別的數據庫。
這個問題最關鍵就是你的sqlserver的p4補丁打了沒有。就是這樣,好了解決了。樓主,多多學習吧。
呵呵。
JSP 連接數據庫的問題
對,沒有倒包進來。
如果你是用eclipse開發的話,比如ResultSet不能識別
你就在ResultSet這裡按下ART+/這個組合鍵,後面會有提示,選擇SQL的包就行了
jsp連接數據庫問題
頁面編碼問題。
你可以在請求到數據之後進行編碼轉換,
再修改或入庫操作。
request.setCharacterEncoding(“GBK”);
或
String str=request.getParameter(“ss”);
str=new String(str.getBytes(“iso-8859-1″),”gb2312”);
已經很久沒寫java了,應該是這樣子的,如果有問題,你可以再聯繫我!
原創文章,作者:EWUF7,如若轉載,請註明出處:https://www.506064.com/zh-hant/n/128908.html