當前位置:首頁 » 操作系統 » jsp連接oracle資料庫jsp

jsp連接oracle資料庫jsp

發布時間: 2023-03-07 02:58:08

『壹』 怎麼使用java連接資料庫

java的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>

(1)jsp連接oracle資料庫jsp擴展閱讀:

一、JSP句法:

一個JSP頁面可以被分為以下幾部份:

靜態數據,如HTML;JSP指令,如include指令;JSP腳本元素和變數;JSP動作;用戶自定義標簽。

靜態數據在輸入文件中的內容和輸出給HTTP響應的內容完全一致。此時,該JSP輸入文件會是一個沒有內嵌JAVA或動作的HTML頁面。而且,客戶端每次請求都會得到相同的響應內容。

JSP指令控制JSP編譯器如何去生成servlet:<%@ include file="somefile.jsp" %>

二、根據JSTL標簽所提供的功能,可以將其分為5個類別:

核心標簽;格式化標簽;SQL 標簽;XML 標簽;JSTL 函數。

『貳』 如何在jsp直接訪問oracle資料庫

<%@pagecontentType="text/html;charset=gb2312"%>
<%@pageimport="java.sql.*"%>

<HTML><BODY>

<hralign="center"width="55%"color="#991111"size="5"/>

<%
Connectionconn=null;
PreparedStatementstmt=null;
ResultSetrs=null;


request.setCharacterEncoding("GBK");

try{
Class.forName("oracle.jdbc.driver.OracleDriver");
}
catch(ClassNotFoundExceptionce){
out.println(ce.getMessage());
}
try{
Stringurl="jdbc:oracle:thin:@localhost:1521:orcl";
conn=DriverManager.getConnection(url,"scott","tiger");
stmt=conn.prepareStatement("select*fromemp");

rs=stmt.executeQuery();
out.print("<TABLEBORDER='1'width='55%'cellpadding='3'align=center>");
out.print("<TR><TD>"+"<b>Empno</b>"+"</TD>");
out.print("<TD>"+"<b>Ename</b>"+"</TD>");
out.print("<TD>"+"<b>Job</b>"+"</TD>");
out.print("<TD>"+"<b>Mgr</b>"+"</TD>");
out.print("<TD>"+"<b>hiredate</b>"+"</TD>");
out.print("<TDalign=center>"+"<b>Sal</b>"+"</TD>");
out.print("<TD>"+"<b>Comm</b>"+"</TD>");
out.print("<TD>"+"<b>Deptno</b>"+"</TD></TR>");


while(rs.next()){
out.print("<TR><TD>"+rs.getString(1)+"</TD>");
out.print("<TD>"+rs.getString(2)+"</TD>");
out.print("<TD>"+rs.getString(3)+"</TD>");
out.print("<TD>"+rs.getString(4)+"</TD>");
out.print("<TD>"+rs.getString(5)+"</TD>");
out.print("<TD>"+rs.getString(6)+"</TD>");
out.print("<TD>"+rs.getString(7)+"</TD>");
out.print("<TD>"+rs.getString(8)+"</TD></TR>");
}

out.print("</TABLE>");

rs.close();
stmt.close();
conn.close();

}
catch(Exceptione){
System.out.println(e.getMessage());
}

%>

</BODY></HTML>

『叄』 jsp怎麼連接資料庫oracle

JSP連接Oracle10g資料庫的方法:
<%@ page contentType="text/html;charset=gb2312"%>
<%@ page import="java.sql.*" %>
<%@ page import="java.io.*" %>
<%@ page import="java.util.*" %>
<html>
<head>
<title>Oracle資料庫連接測試</title>
</head>
<body>
<%
java.sql.Connection lConn = null;
java.sql.Statement lStat = null;
java.sql.ResultSet lRs = null;
try
{
DriverManager.registerDriver(new oracle.jdbc.driver.OracleDriver());
String lUrl = "java:oracle:thin:@localhost:1521:orcl";
//java:oracle:thin: 表示使用的是thin驅動
//@srv:1521: 表示使用的伺服器的名字和埠號
//dbname: 表示資料庫的SID
lConn = DriverManager.getConnection(lUrl,"system","rg");
lStat = lConn.createStatement();
//創建表
String createTableCoffees = "CREATE TABLE COFFEES " +
"(COF_NAME VARCHAR(32), SUP_ID INTEGER, PRICE FLOAT, " +
"SALES INTEGER, TOTAL INTEGER)";
lStat.executeUpdate(createTableCoffees);
//插入數據
lStat.executeUpdate("INSERT INTO COFFEES VALUES ('Colombian', 101, 7.99, 0, 0)");
lStat.executeUpdate("INSERT INTO COFFEES VALUES ('Espresso', 150, 9.99, 0, 0)");
lStat.executeUpdate("INSERT INTO COFFEES VALUES ('Colombian_Decaf', 101, 8.99, 0, 0)");
lStat.executeUpdate("INSERT INTO COFFEES VALUES ('French_Roast_Decaf', 49, 9.99, 0, 0)");
//查詢結果
lRs = lStat.executeQuery("select * from COFFEES");
//顯示結果
out.println("<table>");

while (lRs.next()) {
out.print("<tr><td>" + lRs.getString(1));
//COF_NAME
out.print( "<td>" + lRs.getInt(2));
//SUP_ID
out.print( "<td>" + lRs.getFloat(3));
//PRICE
out.print( "<td>" + lRs.getInt(4));
//SALES
out.println( "<td>" + lRs.getInt(5));
//TOTAL
}
out.println("</table>");
lRs.close();
lStat.close();
} catch (SQLException e) {
throw new ServletException(e);
} finally {
try {
if (lConn != null)
lConn.close();
} catch (SQLException e) {
}
}
%>
</body>
</html>

『肆』 在JSP中訪問Oracle資料庫

寫第一個連接Oracle的JSP程序test.jsp
1、連入SQL*Plus
以system/manager用戶登錄,
SQL> conn system/manager
創建新的用戶:如user1/pass1,賦予connect,resource許可權。
SQL> grant connect,resource to user1 identified by pass1;
SQL> conn user1/pass1
SQL> create table test(a number,b char(10));
SQL> insert into test values(1,"一");
SQL> insert into test values(2,"二");
SQL> insert into test values(3,"三");
SQL> commit;
SQL> select * from test;
A B
---------- ----------
1 一
2 二
3 三
2、配置ODBC(在伺服器端設置)
開始->設置->控制面板->管理工具->數據源 (ODBC)->系統DSN->添加->
選擇「Oracle ODBC Driver」->完成->
Data Source Name:test名字隨便取,好記就行,如:test
Service Name:oradb Oracle資料庫的實例名,本例:oradb,一般Oracle默認安裝為ORCL
UserID:user1 Oracle用戶名,本例:user1
按「OK」->按「確定」退出
3、在C:\JBuilder4\tomcat\webapps\test下創建test.jsp,用notebook編輯,輸入以下代碼
<!--首先導入一些必要的packages-->
<%@ page info="database handler"%>
<%@ page import="java.io.*"%>
<%@ page import="java.util.*"%>
<!--告訴編譯器使用SQL包-->
<%@ page import="java.sql.*"%>
<%@ page import="javax.servlet.*"%>
<%@ page import="javax.servlet.http.*"%>
<%
//以try開始
try
{
Connection con;
Statement stmt;
ResultSet rs;
//載入驅動程序,下面的代碼為載入JDBD-ODBC驅動程序
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
//用適當的驅動程序連接到資料庫,test"是系統dsn名
String url="jdbc:odbc:test";
//建立連接,類似於ASP中的創建資料庫聯接
con=DriverManager.getConnection(url, "user1", "pass1");
//創建一個JDBC聲明
stmt = con.createStatement();
//增加新記錄
stmt.executeUpdate("INSERT INTO test (a,b) VALUES (1,"2")");
//查詢記錄
rs = stmt.executeQuery("SELECT a,b from test");
//輸出查詢結果
out.println("<table border=1 width=400>");
while (rs.next())
{
String col1 = rs.getString(1);
String col2 = rs.getString(2);
//列印所顯示的數據
out.println("<tr><td>"+col1+"</td><td>"+col2+"</td></tr>");
}
out.println("</table>");
}
//如果載入時出錯,給出相應的錯誤信息
catch (Exception e) {}
%>
4、打開一個瀏覽器窗口,輸入以下地址來查看運行結果
http://localhost:8080/test/test.jsp

『伍』 jsp連接資料庫方法(詳細的)

上面的給出了jsp內嵌java的最初模式,現在一般是三層結構了即MVC結構,就這個例子我來給你解釋下是怎麼做的,java對連接資料庫提供了統一的介面,各個資料庫廠商根據提供的介面規范開發自己的連接方法順序如下:1、用Class.forName()方法載入驅動:Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver").newInstance(); 黑體部分為資料庫廠商自己開發的驅動。2、定義好連接資料庫的url地址,連接串Stringurl="jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=pubs";黑體部分為固定寫法不用理會。回到你最初的問題,如何創建資料庫,這里你可以去下每個資料庫創建的方法,一般資料庫安裝的時候都有默認的資料庫名,和對應的系統管理員工號和密碼,DatabaseName=pubs這里說明sql serv 2000中建立了一個名字叫pubs的資料庫jdbc:microsoft:sqlserver://localhost:1433固定寫法唯一不同的是1433埠號,可能你在安裝sql serv 2000的時候改變了該埠號為1500那麼這里就應該為jdbc:microsoft:sqlserver://localhost:15003、定義好DatabaseName=pubs的登錄用戶名和密碼 String user="sa";用戶名
String password="";密碼4、創建Connection對象,通過調用DriverManager.getConnection方法獲得。 Connection conn= DriverManager.getConnection(url,user,password);黑體部分就是你定義好的連接串,用戶名,密碼,不可改變順序。到這里為止資料庫就連接上了,但是連接好了資料庫還要做點什麼,比如列印出來,接下看。5、通過獲得的Connection對象conn創建Statement 對象stmtStatement stmt=conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE);黑體部分是定義ResultSet的一些屬性的,具體含義可以參考JDK的api。6、定義好你准備取得數據的sql語句,比如下面 select * from test說明想從test表中取得所有的數據,關於sql語句可以去查找相關資料庫資料。 String sql="select * from test";定義好語句後,就用上一步創建好的Statement 對象stmt來執行這個sql語句,並返回一個ResultSet對象。
ResultSet rs=stmt.executeQuery(sql);執行完這步後rs中已經取得了test表所有的數據,那麼接下來要展現在網頁上。7、rs.next()對你取得的記錄集做一個循環直到沒有值為止,rs.getString(1)代表你test表中的第一個欄位rs.getString(2)代表你test中的第二個欄位,如果還有更多欄位可以繼續rs.getString(3)..rs.getString(N) while(rs.next()) {%>
您的第一個欄位內容為:<%=rs.getString(1)%>
您的第二個欄位內容為:<%=rs.getString(2)%>
<%}%>8、當所有數據展現完畢,調用close()方法將所有資源關閉。 rs.close();
stmt.close();
conn.close();回顧下大致過程:載入驅動 Class.forName();定義好相關的數據,調用DriverManager.getConnection(driver,user,password)獲得一個資料庫連接conn通過conn創建Statement對象stmt,conn.createStatement();通過stmt執行定義好的sql語句獲得數據集ResultSet rs=stmt.executeQuery(「select * from test」);通過rs.next()方法循環遍歷數據集的數據,通過rs.getString(1)獲得第一條數據的第一個欄位內容,這里要注意的是getString是對應資料庫是字元類型,如果test表的第一個欄位不是字元類型則用rs.getInt(1)獲得。展現完畢後關閉所有資源conn stmt rs close方法。

熱點內容
淘寶圖片緩存怎麼關閉 發布:2025-08-21 09:51:31 瀏覽:149
訪問學者出國手續 發布:2025-08-21 09:51:26 瀏覽:365
91資源解壓 發布:2025-08-21 09:42:14 瀏覽:415
創新科存儲技術 發布:2025-08-21 09:42:12 瀏覽:891
我的世界十三區伺服器地址 發布:2025-08-21 09:41:28 瀏覽:432
編程語言排行榜2016 發布:2025-08-21 09:31:33 瀏覽:295
編程教學廣告 發布:2025-08-21 09:28:24 瀏覽:173
安卓手機用哪個軟體編輯視頻 發布:2025-08-21 09:25:02 瀏覽:577
邁騰最低配有哪些值得選裝的配置 發布:2025-08-21 09:14:04 瀏覽:836
php求職 發布:2025-08-21 09:14:03 瀏覽:490