java程序可以通過JDBC鏈接數據庫,通過JDBC可以方便的訪問數據庫,不必為特定的數據庫編寫專門的程序。
需要先配置mysql-connector-java-5.0.8-bin.jar
使用JDBC連接數據庫的開發流程如下:
如下為JDBC核心API的五個接口:
例:mysql數據表格式:
增加操作的核心代碼:
try{ Class.forName("com.mysql.jdbc.Driver"); String url="jdbc:mysql://localhost:3306/student"; Connection con=DriverManager.getConnection(url, "root", ""); String sql="insert into tb_books(name, PRice, bookCount, author) values(?,?,?,?)"; PreparedStatement ps=con.prepareStatement(sql); ps.setString(1, book.getName()); ps.setDouble(2, book.getPrice()); ps.setInt(3, book.getBookCount()); ps.setString(4, book.getAuthor()); int row = ps.executeUpdate(); if(row>0){ out.print("成功添加"+row+" 行數據"); } ps.close(); con.close();}catch(Exception e){ out.print("添加失敗!"); e.printStackTrace();}
查詢操作的核心代碼:
try{ Class.forName("com.mysql.jdbc.Driver"); String url="jdbc:mysql://localhost:3306/student"; Connection con=DriverManager.getConnection(url, "root", ""); Statement statement=con.createStatement(); String sql="select * from tb_books"; ResultSet rs=statement.executeQuery(sql); ArrayList<Book> list=new ArrayList<Book>(); while(rs.next()){ Book book=new Book(); book.setName(rs.getString("name")); book.setPrice(rs.getDouble("price")); book.setBookCount(rs.getInt("bookCount")); book.setAuthor(rs.getString("author")); list.add(book); } request.setAttribute("list", list); rs.close(); con.close(); } catch(ClassNotFoundException e){ e.printStackTrace(); } catch(SQLException e){ e.printStackTrace(); }
修改數據的核心代碼:
try{ Class.forName("com.mysql.jdbc.Driver"); String url="jdbc:mysql://localhost:3306/student"; Connection con=DriverManager.getConnection(url, "root", ""); String sql="update tb_books set bookCount=? where name=?"; PreparedStatement ps=con.prepareStatement(sql); ps.setInt(1, bookCount); ps.setString(2, name); ps.executeUpdate(); ps.close();con.close(); } catch(Exception e){ e.printStackTrace(); }
對數據的其他操作類似。
新聞熱點
疑難解答