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)java資料庫連接教程擴展閱讀:
一、JSP句法:
一個JSP頁面可以被分為以下幾部份:
靜態數據,如HTML;JSP指令,如include指令;JSP腳本元素和變數;JSP動作;用戶自定義標簽。
靜態數據在輸入文件中的內容和輸出給HTTP響應的內容完全一致。此時,該JSP輸入文件會是一個沒有內嵌JAVA或動作的HTML頁面。而且,客戶端每次請求都會得到相同的響應內容。
JSP指令控制JSP編譯器如何去生成servlet:<%@ include file="somefile.jsp" %>
二、根據JSTL標簽所提供的功能,可以將其分為5個類別:
核心標簽;格式化標簽;SQL 標簽;XML 標簽;JSTL 函數。
② 怎麼使用JAVA連接資料庫
String s strURL="jdbc:odbc:student"; // 資料庫標識名, 其中student為我們資料庫的名字
String user;//資料庫的登錄名
String password;//資料庫的登錄密碼
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
Connection conn=DriverManager.getConnection(strURL,user,password); //獲取連接
Statement stmt = conn.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE,
ResultSet.CONCUR_UPDATABLE);//可滾動的
我再給你添加這種odbc的連接方式,即先用odbc數據源管理將資料庫添加為用戶數據源,程序連接的時候連接數據源就行,因為有的資料庫需要專門的調用驅動,安裝和調試不易,所以用odbc做一個中轉,請結合參考資料理解
這幾種就是java連接各類常用資料庫的方法了
③ Java中如何實現與後台資料庫的連接
用JAVA連接資料庫主要有兩種方式,一是用JDBC-ODBC橋來連接,二是用相關廠商提供的相應驅動程序來連接,首先談談第一種連接。 x0dx0ax0dx0aJDBC-ODBC橋接器是用JdbcOdbc.Class和一個用於訪問ODBC驅動程序的本地庫實現的。對於WINDOWS平台,該本地庫是一個動態連接庫DLL(JDBCODBC.DLL)。 x0dx0ax0dx0a由於JDBC在設計上與ODBC很接近。在內部,這個驅動程序把JDBC的方法映射到ODBC調用上,這樣,JDBC就可以和任何可用的ODBC驅動程序進行交互了。這種橋接器的優點是,它使JDBC目前有能力訪問幾乎所有的資料庫。通行方式如圖所示: x0dx0ax0dx0a應用程序---JDBC API---JDBC-ODBC---ODBC API---ODBC層---數據源 x0dx0ax0dx0a具體操作方法為: x0dx0ax0dx0a首先打開控制面板的管理工具,打開數據源(ODBC),在用戶DSN裡面添加數據源(即你要連接的資料庫的名字),在這里假定連接SQL SERVER 2000的GoodsSupply資料庫。名稱填寫你要連接的資料庫的名稱(GoodsSupply),然後逐步設置,如果選用了使用SQL-SERVER密碼認證的話,就要輸入相應的用戶名及密碼連接到資料庫。一路下一步設置完成。 x0dx0ax0dx0a在JAVA裡面編寫程序進行測試,在這里我的程序是讓用戶輸入任意的表名與與列名,把該列的所有數據輸出。源代碼如下: x0dx0ax0dx0aimport java.io.BufferedReader; x0dx0aimport java.io.InputStreamReader; x0dx0aimport java.sql.*; x0dx0ax0dx0apublic class ODBCBridge { x0dx0ax0dx0apublic static void main(String[] args) { x0dx0aString url="jdbc:odbc:GoodsSupply"; x0dx0aStatement sm=null; x0dx0aString command=null; x0dx0aResultSet rs=null; x0dx0aString tableName=null; x0dx0aString cName=null; x0dx0aString result=null; x0dx0aBufferedReader input=new BufferedReader(new InputStreamReader(System.in)); x0dx0atry { x0dx0atry { x0dx0aClass.forName("sun.jdbc.odbc.JdbcOdbcDriver"); //載入驅動 x0dx0a}catch(ClassNotFoundException e){ x0dx0aSystem.out.println("Can not load Jdbc-Odbc Bridge Driver"); x0dx0aSystem.err.print("ClassNotFoundException:"); x0dx0aSystem.err.println(e.getMessage()); x0dx0a} x0dx0aConnection con=DriverManager.getConnection(url,"USER","PASSWORD"); //使用SQL-SERVER2000認證 x0dx0aDatabaseMetaData dmd=con.getMetaData(); //DMD為連接的相應情況 x0dx0aSystem.out.println("連接的資料庫:"+dmd.getURL()); x0dx0aSystem.out.println("驅動程序:"+dmd.getDriverName()); x0dx0asm=con.createStatement(); x0dx0aSystem.out.println("輸入表名"); x0dx0atableName=input.readLine(); x0dx0awhile(true) { x0dx0aSystem.out.println("輸入列名(為空時程序結束):"); x0dx0acName=input.readLine(); x0dx0aif(cName.equalsIgnoreCase("")) x0dx0abreak; x0dx0acommand="select "+cName+" from "+tableName; x0dx0ars=sm.executeQuery(command); //執行查詢 x0dx0aif(!rs.next()) x0dx0aSystem.out.println("表名或列名輸入有誤"); x0dx0aelse { x0dx0aSystem.out.println("查詢結果為:"); x0dx0ado x0dx0a{ x0dx0aresult=rs.getString(cName); x0dx0a//資料庫語言設置為中文,不用轉換編碼 x0dx0a//result=new String(result.getBytes("ISO-8859-1"),"GB2312"); x0dx0aSystem.out.println(result); x0dx0a}while(rs.next()); x0dx0a} x0dx0a} x0dx0a}catch(SQLException ex) { x0dx0aSystem.out.println("SQLException:"); x0dx0awhile(ex!=null) { x0dx0aSystem.out.println("Message:"+ex.getMessage()); x0dx0aex=ex.getNextException(); x0dx0a} x0dx0a}catch(Exception e) { x0dx0aSystem.out.println("IOException"); x0dx0a} x0dx0a} x0dx0a}
④ java是怎麼連接mysql資料庫的
使用java連接MySQL資料庫與其他的資料庫連接核心是一樣的,如果說區別,那就是所需的驅動不一樣。
工具/原料
MySQL、JDK
方法/步驟
1、首先需要安裝好JDK(配置環境變數),如圖所示:
3、最後通過代碼進行連接。
(1)確定連接路徑URL:
String url="jdbc:mysql://localhost(可以是本機IP地址):3306(埠號)/mysqltest(資料庫名稱)?"+"user=用戶賬號&password=用戶密碼&useUnicode=字元編碼";
(2)載入驅動:
Class.forName("com.mysql.jdbc.Driver");
(3)連接,獲取Connection對象
Connection conn=DriverManager.getConnection(url)
(4)可以通過conn對象檢驗連接與否。
⑤ java中使用JDBC連接資料庫的步驟是什麼
注冊驅動
Class.forname("com.mysql.jdbc.Driver");//這是連接mysql資料庫的驅動
獲取資料庫連接
java.sql.Connection conn=java.sql.DriverManager.getConnection(); 3.獲取表達式
java.sql.Statement stmt=conn.createStatement("春悔jdbc:mysql://localhost/test?
useUnicode=true&扒沒正characterEncoding=GBK","root","null");//三個參數分別是資料庫連接的察租URL,
用戶名,密碼 4.執行SQL
java.sql.ResultSet rs=stmt.executeQuery("select * from user"); 5.顯示結果集裡面的數據
while(rs.next()){
System.out.println(rs.getInt(1));
System.out.println(rs.getString("username"));
System.out.println(rs.getString("password"));
System.out.pringln();
}//執行插入語句
//stmt.executeUpdate("insert into user values(1,'中文','345')");
釋放資源
rs.close();
stmt.close();
conn.close();
⑥ java怎麼和資料庫連接
1、載入驅動程序。
處理結果兩種情況:
1、執行更新返回的是本次操作影響到的記錄數。
2、執行查詢返回的結果是一個ResultSet對象。
ResultSet包含符合SQL語句中條件的所有行,並且它通過一套get方法提供了對這些 行中數據的訪問。
(6)java資料庫連接教程擴展閱讀:
Statement
要執行SQL語句,必須獲得java.sql.Statement實例,Statement實例分為以下3 種類型:
1、執行靜態SQL語句。通常通過Statement實例實現。
2、執行動態SQL語句。通常通過PreparedStatement實例實現。
3、執行資料庫存儲過程。通常通過CallableStatement實例實現。
⑦ java中使用JDBC完成資料庫操作的基本步驟是什麼
創建一個以JDBC連接資料庫的程序,包含7個步驟: x0dx0a 1、載入JDBC驅動程序: x0dx0a 在連接資料庫之前,首先要載入想要連接的資料庫的驅動到JVM(Java虛擬機), x0dx0a 這通過java.lang.Class類的靜態方法forName(String className)實現。 x0dx0a 例如: x0dx0a try{ x0dx0a //載入MySql的驅動類 x0dx0a Class.forName("com.mysql.jdbc.Driver") ; x0dx0a }catch(ClassNotFoundException e){ x0dx0a System.out.println("找不到驅動程序類 ,載入驅動失敗!"); x0dx0a e.printStackTrace() ; x0dx0a } x0dx0a 成功載入後,會將Driver類的實例注冊到DriverManager類中。 x0dx0a 2、提供JDBC連接的URL x0dx0a •連接URL定義了連接資料庫時的協議、子協議、數據源標識。 x0dx0a •書寫形式:協議:子協議:數據源標識 x0dx0a 協議:在JDBC中總是以jdbc開始 x0dx0a 子協議:是橋連接的驅動程序或是資料庫管理系統名稱。 x0dx0a 數據源標識:標記找到資料庫來源的地址與連接埠。 x0dx0a 例如:(MySql的連接URL) x0dx0a jdbc:mysql: x0dx0a //localhost:3306/test?useUnicode=true&characterEncoding=gbk ; x0dx0a useUnicode=true:表示使用Unicode字元集。如果characterEncoding設置為 x0dx0a gb2312或GBK,本參數必須設置為true 。characterEncoding=gbk:字元編碼方式。 x0dx0a 3、創建資料庫的連接 x0dx0a •要連接資料庫,需要向java.sql.DriverManager請求並獲得Connection對象, x0dx0a 該對象就代表一個資料庫的連接。 x0dx0a •使用DriverManager的getConnectin(String url , String username , x0dx0a String password )方法傳入指定的欲連接的資料庫的路徑、資料庫的用戶名和 x0dx0a 密碼來獲得。 x0dx0a 例如: x0dx0a //連接MySql資料庫,用戶名和密碼都是root x0dx0a String url = "jdbc:mysql://localhost:3306/test" ; x0dx0a String username = "root" ; x0dx0a String password = "root" ; x0dx0a try{ x0dx0a Connection con = x0dx0a DriverManager.getConnection(url , username , password ) ; x0dx0a }catch(SQLException se){ x0dx0a System.out.println("資料庫連接失敗!"); x0dx0a se.printStackTrace() ; x0dx0a } x0dx0a 4、創建一個Statement x0dx0a •要執行SQL語句,必須獲得java.sql.Statement實例,Statement實例分為以下3 x0dx0a 種類型: x0dx0a 1、執行靜態SQL語句。通常通過Statement實例實現。 x0dx0a 2、執行動態SQL語句。通常通過PreparedStatement實例實現。 x0dx0a 3、執行資料庫存儲過程。通常通過CallableStatement實例實現。 x0dx0a 具體的實現方式: x0dx0a Statement stmt = con.createStatement() ; x0dx0a PreparedStatement pstmt = con.prepareStatement(sql) ; x0dx0a CallableStatement cstmt = x0dx0a con.prepareCall("{CALL demoSp(? , ?)}") ; x0dx0a 5、執行SQL語句 x0dx0a Statement介面提供了三種執行SQL語句的方法:executeQuery 、executeUpdate x0dx0a 和execute x0dx0a 1、ResultSet executeQuery(String sqlString):執行查詢資料庫的SQL語句 x0dx0a ,返回一個結果集(ResultSet)對象。 x0dx0a 2、int executeUpdate(String sqlString):用於執行INSERT、UPDATE或 x0dx0a DELETE語句以及SQL DDL語句,如:CREATE TABLE和DROP TABLE等 x0dx0a 3、execute(sqlString):用於執行返回多個結果集、多個更新計數或二者組合的 x0dx0a 語句。 x0dx0a 具體實現的代碼: x0dx0a ResultSet rs = stmt.executeQuery("SELECT * FROM ...") ; x0dx0a int rows = stmt.executeUpdate("INSERT INTO ...") ; x0dx0a boolean flag = stmt.execute(String sql) ; x0dx0a 6、處理結果 x0dx0a 兩種情況: x0dx0a 1、執行更新返回的是本次操作影響到的記錄數。 x0dx0a 2、執行查詢返回的結果是一個ResultSet對象。 x0dx0a • ResultSet包含符合SQL語句中條件的所有行,並且它通過一套get方法提供了對這些 x0dx0a 行中數據的訪問。 x0dx0a • 使用結果集(ResultSet)對象的訪問方法獲取數據: x0dx0a while(rs.next()){ x0dx0a String name = rs.getString("name") ; x0dx0a String pass = rs.getString(1) ; // 此方法比較高效 x0dx0a } x0dx0a (列是從左到右編號的,並且從列1開始) x0dx0a 7、關閉JDBC對象 x0dx0a 操作完成以後要把所有使用的JDBC對象全都關閉,以釋放JDBC資源,關閉順序和聲 x0dx0a 明順序相反: x0dx0a 1、關閉記錄集 x0dx0a 2、關閉聲明 x0dx0a 3、關閉連接對象 x0dx0a if(rs != null){ // 關閉記錄集 x0dx0a try{ x0dx0a rs.close() ; x0dx0a }catch(SQLException e){ x0dx0a e.printStackTrace() ; x0dx0a } x0dx0a } x0dx0a if(stmt != null){ // 關閉聲明 x0dx0a try{ x0dx0a stmt.close() ; x0dx0a }catch(SQLException e){ x0dx0a e.printStackTrace() ; x0dx0a } x0dx0a } x0dx0a if(conn != null){ // 關閉連接對象 x0dx0a try{ x0dx0a conn.close() ; x0dx0a }catch(SQLException e){ x0dx0a e.printStackTrace() ; x0dx0a } x0dx0a }
⑧ 怎麼使用JAVA連接資料庫
1、首先我們先建好資料庫,然後建立好程序的目錄,因為是適用於初學者的,所以就建立一個簡單的java project,如圖。
⑨ java連接資料庫的詳細步驟
JDBC:
java database connective
主要作用:
連接程序使用的資料庫
使用步驟:
1. 引入外部jar包(mysql提供的Java使用者的連接器)
工程上右鍵-->build path --> config buildpath --> liberies
-->add external jars
-->選擇對應的mysql-connectorXXXXXX.jar
看到工程上有jar文件則證明引入成功
2. 編程:
(1):注冊資料庫驅動
Class.forName("com.mysql.jdbc.Driver");
(2):創建連接
String url = "jdbc:mysql://192.168.0.243:3306/test";
String userName = "root";
String password = "root";
Connection conn = DriverManager.getConnection(url, userName, password);
(3):創建SQL信使
Statement stmt = conn.createStatement();
(4):執行SQL語句
int i = stmt.executeUpdate("insert into employee values ('10070004', '張三豐', 1, '2005-05-23', 0, 1001, '2007-02-02', 200)");
(5):異常捕獲、關閉資源
⑩ Java中如何與資料庫建立連接
導入java.sql包 x0dx0a一、載入要連接資料庫的驅動程序 x0dx0a//Jdbc-Odbc橋 和 Microsoft Access 資料庫 x0dx0aClass.forName("sun.jdbc.odbc.JdbcOdbcDriver"); x0dx0a// SQL Server 驅動程序: x0dx0aClass.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver"); x0dx0a註:Class.forName()方法將給定的類載入到JVM,如果系統中不存在給定的類,則會引發異常 x0dx0a二、通過驅動程序管理器得到連接實例 x0dx0aConnection conn=null; x0dx0a//1. x0dx0a//1.1建立數據源 x0dx0aconn=DriverManager.getConnection("jdbc:odbc:MyDataSource"); //MyDataSource是數據源名稱 x0dx0a//1-2、不建立數據源 x0dx0aconn=DriverManager.getConnection("jdbc:odbc:;Driver=Microsoft Access Driver (*.mdb);DBQ=C:\\VBTest.mdb"); x0dx0a//2.SQL Server x0dx0aconn=DriverManager.getConnection("jdbc:microsoft:sqlserver://127.0.0.1:1433;databasename=mydb","sa",""); x0dx0ax0dx0a註:DriverManager類跟蹤已注冊的驅動程序,通過getConnection(URL)方法, 找到一個能夠連接至URL中指定的資料庫驅動程序 x0dx0a它接收三個參數, 分別表示1 數據源的名稱、類型 2 用戶名(可選) 3 密碼(可選) x0dx0a三、基於連接對象建立處理器對象 x0dx0aStatement stmt=conn.createStatement(); x0dx0a四、准備sql命令 x0dx0aString sql="select * from Student"; x0dx0a五、執行命令返回結果集 x0dx0aResultSet rs=stmt.executeQuery(sql); x0dx0a六、顯示結果集 x0dx0awhile(rs.next())//只要後面有記錄 x0dx0a{ x0dx0a//對當前行的所有欄位遍歷 x0dx0afor(int i=1;i<=rs.getMetaData().getColumnCount();i++) x0dx0a{ x0dx0aSystem.out.print(rs.getMetaData().getColumnName(i)+": ");//顯示欄位名 x0dx0aSystem.out.println(rs.getString(i));//顯示欄位當前值 x0dx0a} x0dx0aSystem.out.println(); x0dx0a} x0dx0ax0dx0a七、關閉資源 x0dx0ax0dx0ars.close(); //關閉記錄集 x0dx0astmt.close(); //關閉處理器對象 x0dx0aconn.close(); //關閉連接對象 x0dx0ax0dx0a預處理器的應用: x0dx0ax0dx0a//3.基於連接對象建立預處理器對象 x0dx0aPreparedStatement pstmt=conn.prepareStatement("insert into student values(?,?,?,?)"); x0dx0ax0dx0a//4.給預處理對象的參數賦值 x0dx0apstmt.setString(1,"8888"); x0dx0apstmt.setString(2,"nemo"); x0dx0apstmt.setString(3,"accp"); x0dx0apstmt.setString(4,"sanxianglu"); x0dx0ax0dx0a//5.執行預處理命令 x0dx0aint i=pstmt.executeUpdate(); x0dx0aSystem.out.println(i+"條記錄已成功插入!");