明輝手游網(wǎng)中心:是一個(gè)免費(fèi)提供流行視頻軟件教程、在線學(xué)習(xí)分享的學(xué)習(xí)平臺(tái)!

JSP連接各類數(shù)據(jù)庫(kù)大全(上)

[摘要]現(xiàn)在有好多初學(xué)jsp的網(wǎng)友經(jīng)常會(huì)問數(shù)據(jù)庫(kù)怎么連接啊,怎么老出錯(cuò)?所以我集中的在這寫篇文章供大家參考,其實(shí)這種把數(shù)據(jù)庫(kù)邏輯全部放在jsp里未必是好的做法,但是有利于初學(xué)者學(xué)習(xí),所以我就這樣做了,當(dāng)大家學(xué)到一定程度的時(shí)候,可以考慮用MVC的模式開發(fā)。在練習(xí)這些代碼的時(shí)候,你一定將jdbc的驅(qū)動(dòng)程序放...
現(xiàn)在有好多初學(xué)jsp的網(wǎng)友經(jīng)常會(huì)問數(shù)據(jù)庫(kù)怎么連接啊,怎么老出錯(cuò)?所以我集中的在這寫篇文章供大家參考,其實(shí)這種把數(shù)據(jù)庫(kù)邏輯全部放在jsp里未必是好的做法,但是有利于初學(xué)者學(xué)習(xí),所以我就這樣做了,當(dāng)大家學(xué)到一定程度的時(shí)候,可以考慮用MVC的模式開發(fā)。在練習(xí)這些代碼的時(shí)候,你一定將jdbc的驅(qū)動(dòng)程序放到服務(wù)器的類路徑里,然后要在數(shù)據(jù)庫(kù)里建一個(gè)表test,有兩個(gè)字段比如為test1,test2,可以用下面SQL建 
  create table test(test1 varchar(20),test2 varchar(20) 
然后向這個(gè)表寫入一條測(cè)試紀(jì)錄,那么現(xiàn)在開始我們的jsp和數(shù)據(jù)庫(kù)之旅吧。

  一、jsp連接Oracle8/8i/9i數(shù)據(jù)庫(kù)(用thin模式) 
  testoracle.jsp如下: 
  <%@ page contentType="text/html;charset=gb2312"%> 
  <%@ page import="java.sql.*"%> 
  <html> 
  <body> 
  <%Class.forName("oracle.jdbc.driver.OracleDriver").newInstance(); 
  String url="jdbc:oracle:thin:@localhost:1521:orcl"; 
  //orcl為你的數(shù)據(jù)庫(kù)的SID 
  String user="scott"; 
  String password="tiger"; 
  Connection conn= DriverManager.getConnection(url,user,password); 
  Statement stmt=conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE); 
  String sql="select * from test"; 
  ResultSet rs=stmt.executeQuery(sql); 
  while(rs.next()) {%> 
  您的第一個(gè)字段內(nèi)容為:<%=rs.getString(1)%> 
  您的第二個(gè)字段內(nèi)容為:<%=rs.getString(2)%> 
  <%}%> 
  <%out.print("數(shù)據(jù)庫(kù)操作成功,恭喜你");%> 
  <%rs.close(); 
  stmt.close(); 
  conn.close(); 
  %> 
  </body> 
  </html> 
二、jsp連接Sql Server7.0/2000數(shù)據(jù)庫(kù) 
  testsqlserver.jsp如下: 
  <%@ page contentType="text/html;charset=gb2312"%> 
  <%@ page import="java.sql.*"%> 
  <html> 
  <body> 
  <%Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver").newInstance(); 
  String url="jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=pubs"; 
  //pubs為你的數(shù)據(jù)庫(kù)的 
  String user="sa"; 
  String password=""; 
  
  Connection conn= DriverManager.getConnection(url,user,password); 
  Statement stmt=conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE); 
  String sql="select * from test"; 
  ResultSet rs=stmt.executeQuery(sql); 
  while(rs.next()) {%> 
  您的第一個(gè)字段內(nèi)容為:<%=rs.getString(1)%> 
  您的第二個(gè)字段內(nèi)容為:<%=rs.getString(2)%> 
  <%}%> 
  <%out.print("數(shù)據(jù)庫(kù)操作成功,恭喜你");%> 
  <%rs.close(); 
  stmt.close(); 
  conn.close(); 
  
  %> 
  </body> 
  </html> 

三、jsp連接DB2數(shù)據(jù)庫(kù) 
  testdb2.jsp如下: 
  <%@ page contentType="text/html;charset=gb2312"%> 
  <%@ page import="java.sql.*"%> 
  <html> 
  <body> 
  <%Class.forName("com.ibm.db2.jdbc.app.DB2Driver ").newInstance(); 
  String url="jdbc:db2://localhost:5000/sample"; 
  //sample為你的數(shù)據(jù)庫(kù)名 
  String user="admin"; 
  String password=""; 
  Connection conn= DriverManager.getConnection(url,user,password); 
  Statement stmt=conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE); 
  String sql="select * from test"; 
  ResultSet rs=stmt.executeQuery(sql); 
  while(rs.next()) {%> 
  您的第一個(gè)字段內(nèi)容為:<%=rs.getString(1)%> 
  您的第二個(gè)字段內(nèi)容為:<%=rs.getString(2)%> 
  <%}%> 
  <%out.print("數(shù)據(jù)庫(kù)操作成功,恭喜你");%> 
  <%rs.close(); 
  stmt.close(); 
  conn.close(); 
  %> 
  </body> 
  </html> (代碼實(shí)驗(yàn)室)