java連接mysql以及增刪改查操作


java連接數據庫的代碼基本是固定的,步驟過程覺得繁瑣些,代碼記起來對我來說是鬧挺。直接上代碼:

(溫馨提醒:你的項目提前導入連接數據庫的jar包才有的以下操作 )

  1 class DBConnection{
  2     
  3 //    驅動類名
  4     String driver="com.mysql.jdbc.Driver";
  5 //    URL格式,最后為數據庫名
  6     String url="jdbc:mysql://localhost:3306/javaTest?useUnicode=true&characterEncoding=UTF8";  //JavaTest為你的數據庫名稱   7     String user="root";
  8     String password="123456";
  9     Connection  coon=null;
 10     public DBConnection(){
 11         try{
 12 //            加載驅動程序
 13             Class.forName(driver);
 14             coon=(Connection)DriverManager.getConnection(url,user,password);
 15             if(!coon.isClosed()){
 16                 System.out.println("成功連接數據庫!");
 17             } 
 18         }catch (Exception e){
 19                 e.printStackTrace();
 20             }
 21     }
 22     public void close(){
 23         try{
 24             this.coon.close();
 25         }catch(Exception e){
 26             e.printStackTrace();
 27         }
 28     }
 29 //    增加數據
 30     public void add(String name,int age,String gender){
 31 //        String sql="insert into usrInfo(username,gender,age) values(?,?,?)";  //向usrInfo表中插入數據
 32         String sql="insert into usrInfo(age,gender,username) values('"+age+"','"+gender+"','"+name+"')";
 33         try{
 34             PreparedStatement preStmt=(PreparedStatement)this.coon.prepareStatement(sql);
 35 //            preStmt.setString(1, name);
 36 //            preStmt.setInt(3, age);
 37 //            preStmt.setString(2, gender);  //和上面的注釋的一塊組成另外一種插入方法
 38             preStmt.executeUpdate();
 39             System.out.println("插入數據成功!");
 40             preStmt.close();
 41         }catch(Exception e){
 42             e.printStackTrace();
 43         }
 44     }
 45     
 46 //    查詢
 47     public void select(){
 48         String sql="select * from usrInfo";  //查詢usrInfo表中的信息
 49         
 50         try{
 51             Statement stmt=(Statement)this.coon.createStatement();
 52             ResultSet rs=(ResultSet)stmt.executeQuery(sql);  //得到的是結果的集合
 53             System.out.println("--------------------------------");
 54             System.out.println("姓名"+"\t"+"年齡"+"\t"+"性別");
 55             System.out.println("--------------------------------");
 56             while(rs.next()){
 57                 String name=rs.getString("username");
 58                 int age=rs.getInt("age");
 59                 String gender=rs.getString("gender");
 60                 System.out.println(name+"\t"+age+"\t"+gender);
 61             }
 62             stmt.close();
 63         }catch(Exception e){
 64             e.printStackTrace();
 65         }
 66     }
 67     
 68 //    更改數據
 69     
 70     public void update(String name,int age){
 71         String sql="update usrInfo set age=? where username=?";  //推薦使用這種方式,下面的那種注釋方式不知道為啥有時候不好使
 72 //        String sql="update usrInfo set age="+age+" where username='"+name+"'";  
 73         try{
 74             PreparedStatement prestmt=(PreparedStatement)this.coon.prepareStatement(sql);
 75             prestmt.setInt(1, age);
 76             prestmt.setString(2,name);
 77             prestmt.executeUpdate();
 78             
 79             
 80 //            Statement stmt=(Statement)this.coon.createStatement();
 81 //            stmt.executeUpdate(sql);
 82             System.out.println("更改數據成功!");
 83             prestmt.close();
 84         }catch(Exception e){
 85             e.printStackTrace();
 86         }
 87     }
 88     
 89 //    刪除數據
 90     public void del(String name){
 91         String sql="delete from usrInfo where username=?";
 92         try{
 93             PreparedStatement prestmt=(PreparedStatement)this.coon.prepareStatement(sql);
 94             prestmt.setString(1, name);
 95             prestmt.executeUpdate();
 96             System.out.println("刪除數據成功!");
 97             prestmt.close();
 98         }catch(Exception e){
 99             e.printStackTrace();
100         }
101     }
102 }

 

在主類中對其創建實例,實例中構造方法完成數據庫的連接操作,實例調用增刪改查方法進行對數據庫信息的操作

 1 public class mysqlTest {
 2     public static void main(String args[]){
 3         Scanner in=new Scanner(System.in);
 4         DBConnection db=new DBConnection();
 5         
 6 //        插入數據
 7         System.out.println("輸入姓名,年齡,性別:");
 8         String name=in.next();
 9         int age=in.nextInt();
10         String gender=in.next();        
11         db.add(name, age, gender);
12         
13 //        查詢數據
14         db.select();
15         
16 //        修改數據
17 //        String name=in.next();
18 //        int age=in.nextInt();
19 //        db.update(name, age);
20         
21         
22 //        刪除數據
23 //        String name=in.next();
24 //        db.del(name);
25 //        
26 //        db.close();
27     }
28 
29 }

 

原創不易,尊重版權。轉載請注明出處:http://www.cnblogs.com/xsmile/


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM