day17-jdbc 6.Connection介绍
生活随笔
收集整理的這篇文章主要介紹了
day17-jdbc 6.Connection介绍
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
?
?
package cn.itcast.jdbc; import com.mysql.jdbc.Connection; import java.sql.DriverManager; import java.sql.ResultSet; import java.sql.SQLException; import java.sql.Statement; //解決關于加載驅動問題 public class JdbcDemo2 {public static void main(String[] args) throws SQLException, ClassNotFoundException {//1.注冊驅動//DriverManager.registerDriver(new Driver());//一注冊驅動,驅動就加載到內存里面了 也就是說我們就可以用它了 加載了兩個驅動Class.forName("com.mysql.jdbc.Driver");//優點是加載一次 替換registerDriver()這個方法 這個不耦合,根本就沒用mysql驅動的東西 不是意味著那就不用驅動了,只是不依賴jar包//在代碼上、表現上根本就看不到驅動那包 用的都是公共的那種接口(Connection、DriverManager、ResultSet、SQLException、Statement),就是JDK里面提供的公共的接口//編程的都知道不依賴任何東西是最好的,因為沒有耦合,但是那是不可能的。所以要盡量讓耦合度降低//加載mysql驅動Class.forName("oracle.jdbc.driver.OracleDriver");//加載oracle驅動//它怎么知道這是oracle驅動還是mysql驅動呢?它是如何區分的?//String url = "jdbc:mysql://localhost:3306/day17";String url = "jdbc:mysql:///day17";//2.獲取連接對象//Connection con = DriverManager.getConnection(url, "root", "");Connection con = (Connection) DriverManager.getConnection(url, "root", "");System.out.println(con);//connection是接口,是驅動,驅動肯定把這個接口實現了 編程用最頂層去接收操作起來會比較方便 前面是父,后面是子 用最頂層接收//3.通過連接對象獲取操作sql語句的StatementStatement st = con.createStatement();//4.操作sql語句String sql = "select * from user";ResultSet rs = st.executeQuery(sql);//ResultSet就是查詢的結果,可以想象成是集合,但是它不是集合//5.遍歷結果集/* boolean flag = rs.next();//向下移動,返回值為true,代表有下一條記錄。System.out.println(flag);int id = rs.getInt(1);int id1 = rs.getInt("id");System.out.println(id);System.out.println(id1);String username = rs.getString(2);String username1 = rs.getString("username");System.out.println(username);System.out.println(username1);*/while(rs.next()){int id = rs.getInt("id");String username = rs.getString("username");String password = rs.getString("password");String email = rs.getString("email");System.out.println(id+" "+username+" "+password+" "+email);}//只要Java程序跟任何設備進行了連接,用完之后必須釋放資源。最簡單基礎班講I/O流,Java跟文件進行了連接,用完之后關閉文件流。數據庫也是一個設備。Java跟數據庫連接上了用完之后也要關閉。必須把資源釋放。//6.釋放資源rs.close();//結果集得關st.close();con.close();//直接把con關閉了,數據庫和程序斷開了。但是statement和resultset沒有及時釋放,它還在內存存著。close()是釋放和回收資源。//close()的順序和進門出門是一樣的,是進門的時候先進大門,出門的時候是最后才出大門//=============//Java可以操作數據庫} }?
轉載于:https://www.cnblogs.com/ZHONGZHENHUA/p/6628725.html
總結
以上是生活随笔為你收集整理的day17-jdbc 6.Connection介绍的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 《嵌入式linux应用程序开发标准教程》
- 下一篇: Win10 UWP开发:摄像头扫描二维码