//201521123094 String URL = "jdbc:mysql://localhost:3306/students"; String driverName = "com.mysql.jdbc.Driver"; String sql = "XXX"; //輸入指令 String userName = "root"; //帳戶 String password = "******"; //密碼 Connection conn = null; try { Class.forName(driverName); //註冊驅動 } catch (ClassNotFoundException e1) { e1.printStackTrace(); } try { conn = DriverManager.getConnection(URL,userName,password); Statement statement = conn.createStatement(); ResultSet resultSet = statement.executeQuery(sql); } catch (SQLException e) { e.printStackTrace(); }finally{ if(conn!=null) try { conn.close(); } catch (SQLException e) { e.printStackTrace(); } conn = null; //關閉鏈接 }
相關截圖:
mysql
答:
(1)Class.forName(driverName)——註冊驅動
(2)Connection——與數據庫創建鏈接
(3)Statement——向數據庫發送SQL語句
(4)ResultSet——得到和處理SQL語句返回的結果
(5)關閉鏈接,釋放資源sql
//201521123094 conn = DriverManager.getConnection(URL, userName, password); String strSql = "select *查看條件* from *表名* where *篩選條件*?"; pStatement = conn.prepareStatement(strSql); pStatement.set類型(1, *要篩選的值*); resultSet = pStatement.executeQuery(); resultSet.next(); //多SQL語句可用 // 還有一些釋放資源的代碼 if (resultSet != null) try { resultSet.close(); resultSet = null; } catch (Exception e) { e.printStackTrace(); } if (pStatement != null) try { pStatement.close();// 關閉語句 pStatement = null; } catch (Exception e) { e.printStackTrace(); } if (conn != null) { try { conn.close();// 關閉鏈接 conn = null; } catch (Exception e) { e.printStackTrace(); }
相關截圖:
數據庫
答:
個人代碼
ide
查看錶結果
工具
整個操做所消耗的大概時間如圖所示。
學習
//201521123094(兩個編寫的類型格式比較不一樣) @Override public int add(entity.Student stu) { Connection conn = null; PreparedStatement pstat = null; String sql = "insert into students(stuno,name,age,birthdate) values(?,?,?,?)"; int result = -1; try { conn = JDBCUtil.getConnection(); pstat = conn.prepareStatement(sql); pstat.setString(1, stu.getStuno()); pstat.setString(2, stu.getName()); pstat.setInt(3, stu.getAge()); pstat.setString(4, stu.getBirthdate()); result = pstat.executeUpdate(); } catch (SQLException sqle) { sqle.printStackTrace(); } catch (Exception e) { e.printStackTrace(); } finally { JDBCUtil.realeaseAll(null, pstat, conn); } return result > 0 ? 1 : -1; } @Override public List<entity.Student> findAll() { Connection conn = null; PreparedStatement pstat = null; ResultSet rs = null; List<entity.Student> students = new ArrayList<Student>(); String sql = "select * from students;"; try { conn = JDBCUtil.getConnection(); pstat = conn.prepareStatement(sql); rs = pstat.executeQuery(); while(rs.next()){ int id = rs.getInt("id"); String stuno = rs.getString("stuno"); String name = rs.getString("name"); int age = rs.getInt("age"); String date = rs.getString("birthdate"); Student stu = new Student(id, stuno, name, age, date); students.add(stu); } } catch (SQLException sqle) { sqle.printStackTrace(); } catch (Exception e) { e.printStackTrace(); } finally { JDBCUtil.realeaseAll(null, pstat, conn); } return students; }
相關截圖:
測試
答:
(1)DAO(Database Access Object) ——數據庫訪問接口
(2)使程序井井有條,不須要知道層次直接的具體關係,便於管理。
(3)若是隻是一層出錯只要處理那一層的程序,通常不會影響其餘。3d
答:
(1)文件存儲須要處理的步驟比較多,讀寫文件比較麻煩。
(2)數據庫存儲與管理數據能夠直接交互,且數據永久保存,數據經過SQL語句就能進行管理。code
數據庫課程上,須要測試索引對查找的加速做用。然而在幾百或幾千的數據量上進行操做沒法直觀地體驗到索引的加速做用。現但願編寫一個程序,批量插入1000萬條數據,且該數據中的某些字段的內容能夠隨機生成。blog
參考:實驗任務書-題目4
使用數據庫鏈接池改寫題目5
參考:實驗任務書-題目4
——在碼雲的項目中,依次選擇「統計-Commits歷史-設置時間段」, 而後搜索並截圖