1. 程式人生 > >20165235 祁瑛 2018-4 《Java程序設計》第七周學習總結

20165235 祁瑛 2018-4 《Java程序設計》第七周學習總結

roc connect 也有 目錄 cto b2c 操作 ren 數據庫操作

20165235 祁瑛 2018-4 《Java程序設計》第七周學習總結

教材學習內容總結

MySQL數據管理系統

  • MySQL數據管理系統,簡稱MySQL,是世界上流行的數據管理系統。
  • MySQL是網絡數據庫管理系統,可以使遠程的計算機訪問它所管理的數據庫。
  • Windows上下載好MySQL後,進入Windows命令行,進入MySQLbin文件目錄輸入--initialize-insecureMySQLdata目錄進行初始化。然後可以在bin目錄下再次輸mysql啟用MySQL。啟用MySQL後不能通過關閉命令行來結束進程,要使用Windows上的任務管理器來結束進程,可以使用快捷鍵shift+ctrl+Esc
  • 可以下載Navicat軟件,這是一個不錯的MySQL客戶端管理工具(但是要收費,我使用的是免費版的)。然後根據教材的步驟建立鏈接。
  • MySQL占用的是3360端口。主機名可以直接寫成localhost。(取的是MySQL在服務器所在的計算器的域名或IP)
  • JDBC-MySQL驅動可以使Java應用程序和MySQL數據庫建立連接。
  • 程序常用的JDBC進行如下操作:1.與一個數據庫建立連接。2.向已連接的數據路發送SQL語句。3.處理SQL返回的結果。
  • 使用JDBC-數據庫驅動方式和數據庫建立連接需要經過以下步驟:1.加載JDBC-數據庫驅動。2.和指定的數據庫建立連接。
  • 在MySQL官網上下載mysqld-connector-java-bin.jar
    文件,然後復制到jdk1.8/jre/lib/ext目錄下。
  • 驅動JDBC代碼如下:
try{  Class.forName("com.mysql.jdbc.Driver"); 
      }
      catch(Exception e){}
  • 啟動JDBC驅動之後要建立連接,建立連接代碼如下:

    connection con;
    String uri=
    "jdbc:mysql://localhost:3306/students?useSSL=true";
    try{
    con= DriverManager.getConnection(uri,user,password);
    }
    catch(SQLException e){ }
  • 如果用戶密碼是123可以將&password=改成&password=123即可。

    查詢操作

  • 和數據庫建立好連接後就可以使用JDBC提供的API和數據庫交互信息,查詢,修改等操作。
  • 向數據庫發送SQL語句

    try {
    statement sql =con.ctrateStatement();
    }
    catch(SQLException e){}
  • 有了SQL對象就可以調用相應的方法實現數據的查詢操作,並將查詢操作存放在ResultSet類聲明的對象中。例如以下代碼:

    ResultSet rs = sql.executeQuery("SELECT*FROM student"),//此處我建立的數據庫名為student

    如教材代碼查詢的是mess表:

    rs=sql.executeQuery("SELECT * FROM mess");
  • 最後有一步是要關閉連接如con.close()

教材Example11_1代碼測試操作以及截圖:

  • 這次我是在Windows下的dos命令行中進行數據庫操作,所以下載了MySQLNavicat軟件,同時也下載了JDBC-數據庫驅動mysqld-connector-java-bin.jar並要把這個.jar文件放在jdk1.8/jre/lib/ext目錄下。完成這些之後按照課本上的教程初始化MySQL下的bin中的data文件目錄,並啟用MySQL,此為啟用MySQL截圖:
  • 技術分享圖片

  • Navicat上與數據庫建立連接並建立名為student的數據庫,並建立mess表,如下圖:
  • 技術分享圖片

  • 然後在打開另一個dos命令行,運行Example11_1.java文件,運行結果如下:
  • 技術分享圖片

教材學習中的問題和解決過程

  • 在本次的操作中遇到了不少問題
  • 問題一:在運行MySQL時報錯如下:
  • 技術分享圖片

  • 解決方法:我在網上下載到MSVCR120.dll文件然後復制到系統目錄下的SysWOW64目錄下結果依舊報錯,之後又在網上搜到要下載修復程序對其進行修復,最後成功。截圖如下:
  • 技術分享圖片

代碼托管1

代碼托管2

  • 技術分享圖片
  • 技術分享圖片

上周考試錯題總結

的五周錯題總結:
  • 6.調用線性的interrupt()方法會拋出:CloseByInterruptException異常對象
  • 8.自定義異常類可以更加明確的確定位異常出錯的位置和給出詳細出錯信息。
    1. FileInputStream類繼承自InputStream可以以字節讀取文件。
  • 31.ByteArrayOutputStream(int size)緩沖默認大小由size決定。
  • 36.BufferedWriter流可以指向FileWriter流。
  • 44.java使用throw拋出一個異常,使用throws聲明方法可以拋出異常。
  • 45.對於嚴重的錯誤,通過Error類來描述,而對與非常嚴重的錯誤,則通過Exception類進行描述。

    的六周錯題總結:
  • 6.如果指定對象無法與該set中的當前元素進行比較,則拋出ClassCastException異常。\b\w{6}\b匹配剛好6個字符的單詞。
  • 35.new Data(System.currentTimeMillis())等價與new Date()

    感悟

  • 本次學習MySQL感覺學到了不少東西,對數據庫也有了不少的了解。在進行操作的時候難免會遇上一些失誤,重要的是要努力的想辦法去解決,而不是依靠同學,老師(實在解決不了的是可以向老師,同學尋求幫助的)。而且在學習數據庫的時候會用到一些SQL語句,學習SQL語句對於掌握MySQL數據庫操作也是個重要的方法。因為上次沒有敲完第八章的代碼,這次我補交代碼,補交代碼鏈接在上。

學習進度條

代碼行數(新增/累積) 博客量(新增/累積) 學習時間(新增/累積) 重要成長
目標 5000行 30篇 400小時
第一周 31/31 1/1 20/20 git的使用
第二周 373/404 2/3 18/38 java基本數據語法
第三周 547/920 1/4 22/60 類與對象以及打包
第四周 919/1839 2/6 30/80 子類與繼承,接口和面向接口編程
第五周 500/2300 3/9 20/ 100 輸入輸出流以及內部類
第六周 300/2600 1/10 25/125 泛型與集合框架,常用實用類
第七周 447/3047 3/13 25/150 MySQL數據庫與JDBC

參考資料

  • Java學習筆記(第8版)

  • 《Java學習筆記(第8版)》學習指導

20165235 祁瑛 2018-4 《Java程序設計》第七周學習總結