1. 程式人生 > >JDBC操作數據庫之連接數據庫

JDBC操作數據庫之連接數據庫

log color his null creat pda url root 數據庫連接字符串

通過JDBC向數據庫中添加數據的時候,使用insert語句實現數據的插入,再SQL語句中的參數可以用占位符“?”來替代,然後通過PreparedStatement對象或者Statement對象對其賦值並執行SQL。

下面分別對PreparedStatement接口和Statement接口插入數據方法做代碼實現:其中PreparedStatementTest類中是用PreparedStatement接口中的方法來實現數據庫數據插入的;StatementTest類中是用Statement接口中的excuteUpdate(sql)方法實現數據庫數據插入。

  1 public class Book{
2 //編號 3 private int id; 4 //圖書名稱 5 private String name; 6 //價格 7 private double price; 8 //數量 9 private int bookCount; 10 //作者 11 private String author; 12 13 public int getId() { 14 return id; 15 } 16 17 public void
setId(int id) { 18 this.id = id; 19 } 20 public String getName() { 21 return name; 22 } 23 public void setName(String name) { 24 this.name = name; 25 } 26 public double getPrice() { 27 return price; 28 } 29 public void setPrice(double
price) { 30 this.price = price; 31 } 32 public int getBookCount() { 33 return bookCount; 34 } 35 public void setBookCount(int bookCount) { 36 this.bookCount = bookCount; 37 } 38 public String getAuthor() { 39 return author; 40 } 41 public void setAuthor(String author) { 42 this.author = author; 43 } 44 } 45 /****方法一:通過PreparedStatement接口中的方法插入數據*****/ 46 public class PreparedStatementTest{ 47 Book book = new Book(); 48 //加載數據庫驅動,註冊到驅動管理器 49 Class.forName("com.mysql.jdbc.Driver"); 50 //數據庫連接字符串 51 String url = "jdbc:mysql://localhost:3306/Test"; 52 //數據庫用戶名 53 String username = "root"; 54 //數據庫連接密碼 55 String password = "123"; 56 //創建Connection連接 57 Connection conn = (Connection)DriverManager.getConnection(url,username,password); 58 //插入圖書信息的SQL語句 59 String sql = "insert into bookTable(name,price,bookCount,author) value(?,?,?,?);"; 60 //獲取PreparedStatement 61 PreparedStatement ps = conn.prepareStatement(sql); 62 //對SQL語句中的第1個參數賦值 63 ps.setString(1, book.getName()); 64 //對SQL語句中的第2個參數賦值 65 ps.setDouble(2,book.getPrice()); 66 //對SQL語句中的第3個參數賦值 67 ps.setInt(3, book.getBookCount()); 68 //對SQL語句中的第4個參數賦值 69 ps.setString(4, book.getAuthor()); 70 //執行更新操作,返回所影響的行數 71 int row = ps.executeUpdate(); 72 //判斷是否更新成功 73 if(row > 0){ 74 out.print("添加成功"+row+"條數據"); 75 } 76 //關閉PreparedStatement,釋放資源 77 ps.close(); 78 //關閉Connection釋放資源 79 conn.close(); 80 81 } 82 83 /*方法二:通過Statement接口中的executeUpdate(sql)方法插入數據*/ 84 public class StatementTest{ 85 Book book = new Book(); 86 //加載數據庫驅動,註冊到驅動管理器 87 Class.forName("com.mysql.jdbc.Driver"); 88 //數據庫連接字符串 89 String url = "jdbc:mysql://localhost:3306/Test"; 90 //數據庫用戶名 91 String username = "root"; 92 //數據庫連接密碼 93 String password = "123"; 94 //創建Connection連接 95 Connection conn = (Connection)DriverManager.getConnection(url,username,password); 96 //插入圖書信息SQL語句 97 String sql="insert into bookTable(name,price,bookCount,author) value("+book.getName()+","+book.getPrice()+","+book.getBookCount()+","+book.getAuthor()+")"; 98 //獲取Statement接口對象 99 Statement stat = conn.createStatement(); 100 //調用Statement接口中的excuteUpdate(sql)方法,執行SQL語句插入數據 101 stat.executeUpdate(date); 102 103 //關閉Statement接口對象 104 if(stat != null){ 105 stat.close(); 106 } 107 //關閉Connection接口對象 108 if(conn != null){ 109 conn.close(); 110 } 111 }

---恢復內容結束---

JDBC操作數據庫之連接數據庫