博學(xué)而篤志,好問而近思

          用JSP連接各種數(shù)據(jù)庫(kù)的例子(不用框架的可以參考)

          現(xiàn)在有好多初學(xué)JSP 的朋友經(jīng)常會(huì)問數(shù)據(jù)庫(kù)怎么連接啊,怎么老出錯(cuò)啊?所以我集中的在這寫篇文章供大家參考,其實(shí)這種把數(shù)據(jù)庫(kù)邏輯全部放在 jsp 里未必是好的做法,但是有利于學(xué)習(xí)JSP,所以我就這樣做了,當(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)室 )

           四、 jsp 連接 Informix 數(shù)據(jù)庫(kù)
             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 為你的數(shù)據(jù)庫(kù)名
             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()) {%>
            您的第一個(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 連接 Sybase 數(shù)據(jù)庫(kù)
             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 為你的數(shù)據(jù)庫(kù)名
             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()) {%>
            您的第一個(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 連接 MySQL 數(shù)據(jù)庫(kù)
             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 為你的數(shù)據(jù)庫(kù)名
             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()) {%>
            您的第一個(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 連接 PostgreSQL 數(shù)據(jù)庫(kù)
             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 為你的數(shù)據(jù)庫(kù)名
             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()) {%>
            您的第一個(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>

          posted on 2006-06-21 14:21 冰川 閱讀(1220) 評(píng)論(0)  編輯  收藏


          只有注冊(cè)用戶登錄后才能發(fā)表評(píng)論。


          網(wǎng)站導(dǎo)航:
           
          <2006年6月>
          28293031123
          45678910
          11121314151617
          18192021222324
          2526272829301
          2345678

          導(dǎo)航

          統(tǒng)計(jì)

          常用鏈接

          留言簿(14)

          隨筆檔案

          BlogJava的幫助

          朋友的博客

          搜索

          最新評(píng)論

          閱讀排行榜

          評(píng)論排行榜

          快樂工作—享受生活
          主站蜘蛛池模板: 东辽县| 兴仁县| 克什克腾旗| 施秉县| 巫溪县| 新田县| 锡林郭勒盟| 西吉县| 林口县| 龙泉市| 香格里拉县| 乌拉特后旗| 张家川| 上高县| 铜陵市| 青冈县| 龙游县| 巴林左旗| 武平县| 辉县市| 闵行区| 土默特左旗| 酉阳| 汝城县| 徐汇区| 宝兴县| 新乡市| 永仁县| 密山市| 札达县| 太湖县| 宣威市| 张北县| 常州市| 湘乡市| 县级市| 灵台县| 正定县| 肇州县| 邢台市| 双江|