程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 網頁編程 >> JSP編程 >> 關於JSP >> 在JSP中訪問數據庫大全

在JSP中訪問數據庫大全

編輯:關於JSP

     現在有好多初學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連接Access數據庫
     

    <%@page import="java.sql.*"
    import ="java.util.*"
    import ="java.io.*"
    import="java.text.*"
    contentType="text/html; charset=gb2312"
    buffer="20kb"
    %><%! int all,i,m_count;
    String odbcQuery;
    Connection odbcconn;
    Statement odbcstmt;
    ResultSet odbcrs;
    String username,title,content,work,email,url,time,date;
    String datetime;
    %>
    <%
    try{
    Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
    }catch (ClassNotFoundException e)
    { out.print ("驅動程序不存在");
    }
    try{
    odbcconn = DriverManager.getConnection("jdbc:odbc:db1");
    odbcstmt = odbcconn.createStatement();
    odbcQuery="Select * From book where datetime>2001-4-26 Order By datetime DESC";
    odbcrs=odbcstmt.executeQuery(odbcQuery);
    int i=0;
    while (i<130) odbcrs.next();
    while (odbcrs.next())
    {
    //*/////////////////////////顯示數據庫的內容用於調試程序是用//
    int ii;
    try{
    try{
    for (ii=1;;ii++)
    out.print ("<br>Cloumn "+ii+" is: "+odbcrs.getString(ii));
    }catch (NullPointerException e) {
    out.print ("有空的指針");
    }
    }catch (SQLException e){
    }
    }
    odbcrs.close();
    odbcstmt.close();
    odbcconn.close();
    }catch (SQLException e)
    { out.print (e);
    }
    %>

    1. 上一頁:
    2. 下一頁:
    Copyright © 程式師世界 All Rights Reserved