Posted on 2006-05-29 12:46
花 閱讀(179)
評論(0) 編輯 收藏 所屬分類:
DateBase Design
現在有好多初學jsp的網友經常會問數據庫怎么連接啊,怎么老出錯啊?所以我集中的在這寫篇文章供大家參考,其實這種把數據庫邏輯全部放在jsp里未必是好的做法,但是有利于初學者學習,所以我就這樣做了,當大家學到一定程度的時候,可以考慮用MVC的模式開發。在練習這些代碼的時候,你一定將jdbc的驅動程序放到服務器的類路徑里,然后要在數據庫里建一個表test,有兩個字段比如為test1,test2,可以用下面SQL建
create?table?test(test1?varchar(20),test2?varchar(20)
然后向這個表寫入一條測試紀錄,那么現在開始我們的jsp和數據庫之旅吧。
一、jsp連接Oracle8/8i/9i數據庫(用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為你的數據庫的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())?{%>?
您的第一個字段內容為:<%=rs.getString(1)%>?
您的第二個字段內容為:<%=rs.getString(2)%>?
<%}%>?
<%out.print("數據庫操作成功,恭喜你");%>?
<%rs.close();?
stmt.close();?
conn.close();?
%>?
</body>?
</html>?
二、jsp連接Sql?Server7.0/2000數據庫?
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為你的數據庫的?
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())?{%>?
您的第一個字段內容為:<%=rs.getString(1)%>?
您的第二個字段內容為:<%=rs.getString(2)%>?
<%}%>?
<%out.print("數據庫操作成功,恭喜你");%>?
<%rs.close();?
stmt.close();?
conn.close();?
%>?
</body>?
</html>?
三、jsp連接DB2數據庫?
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為你的數據庫名?
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())?{%>?
您的第一個字段內容為:<%=rs.getString(1)%>?
您的第二個字段內容為:<%=rs.getString(2)%>?
<%}%>?
<%out.print("數據庫操作成功,恭喜你");%>?
<%rs.close();?
stmt.close();?
conn.close();?
%>?
</body>?
</html>
四、jsp連接Informix數據庫?
testinformix.jsp如下:?
<%@?page?contentType="text/html;charset=gb2312"%>?
<%@?page?import="java.sql.*"%>?
<html>?
<body>?
<%Class.forName("com.informix.jdbc.IfxDriver").newInstance();?
String?url?=?
"jdbc:informix-sqli://123.45.67.89:1533/testDB:INFORMIXSERVER=myserver;?
user=testuser;password=testpassword";?
//testDB為你的數據庫名?
Connection?conn=?DriverManager.getConnection(url);?
Statement?stmt=conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE);?
String?sql="select?*?from?test";?
ResultSet?rs=stmt.executeQuery(sql);?
while(rs.next())?{%>?
您的第一個字段內容為:<%=rs.getString(1)%>?
您的第二個字段內容為:<%=rs.getString(2)%>?
<%}%>?
<%out.print("數據庫操作成功,恭喜你");%>?
<%rs.close();?
stmt.close();?
conn.close();?
%>?
</body>?
</html>?
五、jsp連接Sybase數據庫?
testmysql.jsp如下:?
<%@?page?contentType="text/html;charset=gb2312"%>?
<%@?page?import="java.sql.*"%>?
<html>?
<body>?
<%Class.forName("com.sybase.jdbc.SybDriver").newInstance();?
String?url?="?jdbc:sybase:Tds:localhost:5007/tsdata";?
//tsdata為你的數據庫名?
Properties?sysProps?=?System.getProperties();?
SysProps.put("user","userid");?
SysProps.put("password","user_password");?
Connection?conn=?DriverManager.getConnection(url,?SysProps);?
Statement?stmt=conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE);?
String?sql="select?*?from?test";?
ResultSet?rs=stmt.executeQuery(sql);?
while(rs.next())?{%>?
您的第一個字段內容為:<%=rs.getString(1)%>?
您的第二個字段內容為:<%=rs.getString(2)%>?
<%}%>?
<%out.print("數據庫操作成功,恭喜你");%>?
<%rs.close();?
stmt.close();?
conn.close();?
%>?
</body>?
</html>?
六、jsp連接MySQL數據庫?
testmysql.jsp如下:?
<%@?page?contentType="text/html;charset=gb2312"%>?
<%@?page?import="java.sql.*"%>?
<html>?
<body>?
<%Class.forName("org.gjt.mm.mysql.Driver").newInstance();?
String?url="jdbc:mysql://localhost/softforum?user=soft&password=soft1234&useUnicode=true&characterEncoding=8859_1"?
//testDB為你的數據庫名?
Connection?conn=?DriverManager.getConnection(url);?
Statement?stmt=conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE);?
String?sql="select?*?from?test";?
ResultSet?rs=stmt.executeQuery(sql);?
while(rs.next())?{%>?
您的第一個字段內容為:<%=rs.getString(1)%>?
您的第二個字段內容為:<%=rs.getString(2)%>?
<%}%>?
<%out.print("數據庫操作成功,恭喜你");%>?
<%rs.close();?
stmt.close();?
conn.close();?
%>?
</body>?
</html>
七、jsp連接PostgreSQL數據庫?
testmysql.jsp如下:?
<%@?page?contentType="text/html;charset=gb2312"%>?
<%@?page?import="java.sql.*"%>?
<html>?
<body>?
<%Class.forName("org.postgresql.Driver").newInstance();?
String?url?="jdbc:postgresql://localhost/soft"?
//soft為你的數據庫名?
String?user="myuser";?
String?password="mypassword";?
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())?{%>?
您的第一個字段內容為:<%=rs.getString(1)%>?
您的第二個字段內容為:<%=rs.getString(2)%>?
<%}%>?
<%out.print("數據庫操作成功,恭喜你");%>?
<%rs.close();?
stmt.close();?
conn.close();?
%>?
</body>?
</html>