前面详细写过如何连接数据库的具体操作,下面介绍向数据库中添加数据。

注意事项:如果参考下面代码,需要

改包名,数据库名,数据库账号,密码,和数据表(数据表里面的信息)

 1 package com.ningmeng; 
 2  
 3 import java.sql.*; 
 4  
 5 /** 
 6  * 1:向数据库中添加数据 
 7  * @author biexiansheng 
 8  * 
 9  */ 
10 public class Test01 { 
11  
12     public static void main(String[] args) { 
13         try { 
14             Class.forName("com.mysql.jdbc.Driver");//加载数据库驱动 
15             System.out.println("加载数据库驱动成功"); 
16             String url="jdbc:mysql://localhost:3306/test";//声明数据库test的url 
17             String user="root";//数据库的用户名 
18             String password="123456";//数据库的密码 
19             //建立数据库连接,获得连接对象conn(抛出异常即可) 
20             Connection conn=DriverManager.getConnection(url, user, password); 
21             System.out.println("连接数据库成功"); 
22             //生成一条mysql语句 
23             String sql="insert into users(username,password,age,sex) values('小别','123456',22,0)";         
24             Statement stmt=conn.createStatement();//创建一个Statement对象 
25             stmt.executeUpdate(sql);//执行sql语句 
26             System.out.println("插入到数据库成功"); 
27             conn.close(); 
28             System.out.println("关闭数据库成功"); 
29         } catch (ClassNotFoundException e) { 
30             // TODO Auto-generated catch block 
31             e.printStackTrace(); 
32         }// 
33         catch (SQLException e) { 
34             // TODO Auto-generated catch block 
35             e.printStackTrace(); 
36         } 
37          
38     } 
39      
40 }

详细运行结果

这样就可以完美插入数据,增删改查第一步完美解决。

简单介绍一下所使用的知识点:

在java程序中一旦建立了数据库的连接,就可以使用Connection接口的createStatement()方法来获得statement对象

然后通过excuteUpdate()方法来执行sql语句,就可以向数据库中添加数据了。

1:createStatement()方法是Connection接口的方法,用来创建Statement对象

2:Connection接口代表和特定的数据库连接,要对数据库中数据表的数据进行操作,首先要获取数据库连接。

3:Statement接口用于创建向数据库中传递SQL语句的对象,该接口提供了一些方法可以实现对数据库的常用操作。

4:Statement接口中的excuteUpdate()方法执行给定的SQL语句,该语句可以是INSERT,UPDATE,DELETE语句。




第二种方法

使用PreparedStatement接口向mysql数据库中插入数据

 1 package com.ningmeng; 
 2  
 3 import java.sql.*; 
 4  
 5 /** 
 6  * 1:使用PreparedStatement接口来执行插入语句 
 7  *  
 8  * @author biexiansheng 
 9  * 
10  */ 
11 public class Test02 { 
12  
13     public static void main(String[] args) { 
14         // TODO Auto-generated method stub 
15         try { 
16             Class.forName("com.mysql.jdbc.Driver");//加载数据库驱动 
17             System.out.println("加载数据库驱动成功"); 
18             String url="jdbc:mysql://localhost:3306/test";//声明数据库test的url 
19             String user="root";//数据库用户名 
20             String password="123456";//数据库密码 
21             //建立数据库连接,获得连接对象conn 
22             Connection conn=DriverManager.getConnection(url, user, password); 
23             System.out.println("连接数据库驱动成功"); 
24             //生成一条SQL语句 
25             String sql="insert into users(username,password,age,sex) values(?,?,?,?)"; 
26             PreparedStatement ps=conn.prepareStatement(sql);//创建一个Statement对象 
27             ps.setNString(1,"lisi");//为sql语句中第一个问号赋值 
28             ps.setString(2,"123456");//为sql语句中第二个问号赋值 
29             ps.setInt(3,24);//为sql语句第三个问号赋值 
30             ps.setInt(4,2);//为sql语句的第四个问号赋值 
31             ps.executeUpdate();//执行sql语句 
32             conn.close();//关闭数据库连接对象 
33             System.out.println("关闭数据库连接对象"); 
34         } catch (ClassNotFoundException e) { 
35             // TODO Auto-generated catch block 
36             e.printStackTrace(); 
37         } catch (SQLException e) { 
38             // TODO Auto-generated catch block 
39             e.printStackTrace(); 
40         } 
41          
42          
43     } 
44  
45 }

由于刚才不小心多执行了一遍第一个程序,所以多了一行id==7的,特此注释一下

1:PreparedStatement接口继承Statement,用于执行动态的SQL语句,通过PreparedStatement实例执行SQL语句,将被预编译并且保存到PreparedStatement实例中,从而可以反复的执行该SQL语句。

2:PreparementStatement接口中的方法,如executeUpdate在此PrepareStatement对象中执行sql语句,该sql语句必须是一个INSERT.UPDATE,DELETE语句,或者是没有返回值的DDL语句。

3:setString(int pIndex,String str)将参数pIndex位置上设置为给定的String类型的参数,俗语就是在第几个位置写上符合的数据类型

setInt(int pIndex,int x)

其他的都类似,不作多叙述

更深层次的理解JDBC对java程序和数据库之间的操作

JDBC技术的常用类和接口

必须搞明白这些关系,不能只会写代码,理解其含义。
(1):必须清楚,JDBC是一种可用于执行SQL语句的JAVA API(Application Programming Interface,应用程序设计接口),是连接数据库和java应用程序的一个纽带。


(2):DriverManager类用来管理数据库中的所有驱动程序,是JDBC的管理层,作用与用户和驱动程序之间,跟踪可用的驱动程序,并在数据库的驱动程序之间建立连接。
DriverManager类最常用的方法是
getConnection(String url,String user,String password);


(3):Connection接口代表与特定的数据库的连接,要对数据表中的数据进行操作,首先要获取数据库的连接。Connection实例就像在应用程序与数据库之间开通了一条通道。
可通过DriverManager类的getConnection()方法获取Connection实例。
比如:
Connection conn=DriverManager.getConnection(url, user, password);
Statement stmt=conn.createStatement();//创建一个Statement对象

Connection接口常用的方法是:
createStatement()创建Statement对象
close()立即释放此Connection对象的数据库和JDBC资源,而不是等待它们被自动释放。


(4):Statement接口用于创建向数据库中传递SQL语句的对象,该接口提供了一些方法可以实现对数据库的常用操作。(Statement接口用于执行静态SQL语句,并返回它所生成结果的对象)
Statement接口常用的方法
execute(String sql);执行静态的SELECT语句,该语句可能返回多个结果集
executeQuery(String sql);执行给定的SQL语句,该语句返回单个ResultSet对象。
executeUpdate()执行给定的SQL语句,该语句可以为INSERT,UPDATE,DELETE语句。
close()释放Statement实例占用的数据库和JDBC资源。


(5):PreparedStatement接口继承了Statement接口,用于执行动态的SQL语句,通过PreparedStatement实例执行的sql语句,将被预编译并保存到PreparedStatement实例中,从而可以反复的执行该SQL语句。
PreparedStatement接口的常用方法。
execute();在此PreparedStatement对象中执行SQL语句,该语句可以是任何类型的SQL语句。
executeQuery()在此PreparedStatement对象中执行SQL查询语句,返回结果为查询结果集ResultSet对象。
executeUpdate()在此PreparedStatement对象中执行SQL语句,该语句必须是一个INSERT,UPDATE,DELETE语句。或者是没有返回值的DDL语句。
close()释放Statement实例占用的数据库和JDBC资源。

(6):ResultSet接口类似与一个临时表,用来暂时存放数据库查询操作所获得的结果集,





下面写几个程序更深层次的理解一下JDBC作为连接数据库的JAVA程序纽带
1:首先封装了通用的一些东西,然后通过引入调用(需要注意的是包名,类名,mysql数据库账号,密码,数据库名,数据表名,字段等等。)

 1 package com.util; 
 2  
 3 import java.sql.Connection; 
 4 import java.sql.DriverManager; 
 5 import java.sql.SQLException; 
 6  
 7 public class Dbutil { 
 8      
 9     private static String url="jdbc:mysql://localhost:3306/db_person";//生命数据库的url(地址) 
10     private static String user="root";//数据库账号 
11     private static String password="123456";//数据库密码 
12     private static String driver="com.mysql.jdbc.Driver";//数据库的驱动 
13      
14     /** 
15      *  
16      * @return 
17      * @throws Exception 
18      */ 
19     public Connection getCon() throws Exception{ 
20         Class.forName(driver);//加载数据库驱动 
21         Connection con=DriverManager.getConnection(url, user, password); 
22         //建立数据库的连接,获得连接对象con 
23         return con; 
24     } 
25      
26     /** 
27      *  
28      * @param con 
29      * @throws Exception 
30      */ 
31     public void close(Connection con) throws Exception{ 
32         if(con!=null){ 
33             con.close(); 
34         }     
35     } 
36      
37      
38 }
封装的通用的一些东西
 1 package com.ningmeng; 
 2  
 3 import java.sql.Connection; 
 4 import java.sql.Statement; 
 5  
 6 import com.util.Dbutil; 
 7  
 8 public class Test { 
 9    
10      public static void main(String args[]) throws Exception {   
11          Dbutil db=new Dbutil(); 
12          String sql="insert into db_book values(null,'javaweb',888,'小别',1)";//生成一条sql语句 
13          Connection con=db.getCon();//获取数据库的连接 
14          Statement stmt=con.createStatement();//创建一个Statement连接 
15          int result=stmt.executeUpdate(sql);//执行sql语句 
16          System.out.println("执行了"+result+"数据"); 
17          stmt.close();//关闭顺序是先关闭小的,后关闭大的 
18          con.close(); 
19           
20      }      
21 } 
核心代码

2:数据库的插入一般都是从前台获取的,上面这个例子不是很好,下面举例另一种方式。

(插入数据时使用拼接)同样引用上面封装的通用的一些东西!!!

 1 package com.ningmeng; 
 2  
 3 import java.sql.Connection; 
 4 import java.sql.Statement; 
 5  
 6 import com.util.Dbutil; 
 7  
 8 public class Test2 { 
 9  
10     private static Dbutil db=new Dbutil(); 
11     private static int add(String name,float price,String author,int bookTypeId) 
12         throws Exception{ 
13         Connection con=db.getCon(); 
14         String sql="insert into db_book values(null,'"+name+"',"+price+",'"+author+"',"+bookTypeId+")"; 
15         Statement stmt=con.createStatement();//创建一个Statement连接 
16         int result=stmt.executeUpdate(sql);//执行sql语句 
17         db.close(stmt,con); 
18         return result; 
19     } 
20     public static void main(String[] args) throws Exception { 
21         // TODO Auto-generated method stub 
22         int result=add("java",888,"小卡",1); 
23         if(result==1){ 
24             System.out.println("添加成功"); 
25         }else{ 
26             System.out.println("添加失败"); 
27         } 
28          
29     } 
30  
31 }
核心代码

(可以发现已经添加成功了)

3:下面使用面向对象的思想传入数据(实现的时候和上面的一同完成操作,)

 1 package com.ningmeng; 
 2  
 3 public class Book { 
 4      
 5     private String name; 
 6     private float price; 
 7     private String author; 
 8     private int bookTypeId; 
 9     public String getName() { 
10         return name; 
11     } 
12     public void setName(String name) { 
13         this.name = name; 
14     } 
15     public float getPrice() { 
16         return price; 
17     } 
18     public void setPrice(float price) { 
19         this.price = price; 
20     } 
21     public String getAuthor() { 
22         return author; 
23     } 
24     public void setAuthor(String author) { 
25         this.author = author; 
26     } 
27     public int getBookTypeId() { 
28         return bookTypeId; 
29     } 
30     public void setBookTypeId(int bookTypeId) { 
31         this.bookTypeId = bookTypeId; 
32     } 
33     public Book(String name, float price, String author, int bookTypeId) { 
34         super(); 
35         this.name = name; 
36         this.price = price; 
37         this.author = author; 
38         this.bookTypeId = bookTypeId; 
39     } 
40      
41      
42      
43      
44 }
封装,面向对象的思想
 1 package com.ningmeng; 
 2  
 3 import java.sql.Connection; 
 4 import java.sql.Statement; 
 5  
 6 import com.util.Dbutil; 
 7  
 8 public class Test2 { 
 9  
10     private static Dbutil db=new Dbutil(); 
11      
12     private static int add2(Book book) throws Exception{ 
13         Connection con=db.getCon(); 
14         String sql="insert into db_book values(null,'"+book.getName()+"',"+book.getPrice()+",'"+book.getAuthor()+"',"+book.getBookTypeId()+")"; 
15         Statement stmt=con.createStatement();//创建一个Statement连接 
16         int result=stmt.executeUpdate(sql);//执行sql语句 
17         db.close(stmt,con); 
18         return result; 
19     } 
20      
21     private static int add(String name,float price,String author,int bookTypeId) 
22         throws Exception{ 
23         Connection con=db.getCon(); 
24         String sql="insert into db_book values(null,'"+name+"',"+price+",'"+author+"',"+bookTypeId+")"; 
25         Statement stmt=con.createStatement();//创建一个Statement连接 
26         int result=stmt.executeUpdate(sql);//执行sql语句 
27         db.close(stmt,con); 
28         return result; 
29     } 
30     public static void main(String[] args) throws Exception { 
31         // TODO Auto-generated method stub 
32         /*int result=add("java",888,"小卡",1); 
33         if(result==1){ 
34             System.out.println("添加成功"); 
35         }else{ 
36             System.out.println("添加失败"); 
37         }*/ 
38          
39         Book book=new Book("java2",888,"小卡2",1); 
40         int result=add2(book); 
41         if(result==1){ 
42             System.out.println("添加成功"); 
43         }else{ 
44             System.out.println("添加失败"); 
45         }     
46      
47     } 
48 }
核心代码
 1 package com.util; 
 2  
 3 import java.sql.Connection; 
 4 import java.sql.DriverManager; 
 5 import java.sql.SQLException; 
 6 import java.sql.Statement; 
 7  
 8 public class Dbutil { 
 9      
10     private static String url="jdbc:mysql://localhost:3306/db_person";//生命数据库的url(地址) 
11     private static String user="root";//数据库账号 
12     private static String password="123456";//数据库密码 
13     private static String driver="com.mysql.jdbc.Driver";//数据库的驱动 
14      
15     /** 
16      *  
17      * @return 
18      * @throws Exception 
19      */ 
20     public Connection getCon() throws Exception{ 
21         Class.forName(driver);//加载数据库驱动 
22         Connection con=DriverManager.getConnection(url, user, password); 
23         //建立数据库的连接,获得连接对象con 
24         return con; 
25     } 
26      
27     /** 
28      *  
29      * @param con 
30      * @throws Exception 
31      */ 
32     public void close(Statement stmt,Connection con) throws Exception{ 
33         if(stmt!=null){ 
34             stmt.close(); 
35             if(con!=null){ 
36                 con.close(); 
37             } 
38         } 
39              
40     } 
41      
42      
43 }
通用的



 1:使用Statement更新操作

 1 package com.ningmeng; 
 2  
 3 import java.sql.Connection; 
 4 import java.sql.Statement; 
 5  
 6 import com.util.Dbutil; 
 7  
 8 /** 
 9  * 更新操作 
10  * @author biexiansheng 
11  * 
12  */ 
13 public class Test3 { 
14      
15     private static Dbutil db=new Dbutil(); 
16      
17     private static int update(Book book) throws Exception{ 
18         Connection con=db.getCon(); 
19         String sql="update db_book set name='"+book.getName()+"',price="+book.getPrice()+",author='"+book.getAuthor()+"',bookTypeId="+book.getBookTypeId()+" where id=13"; 
20         Statement stmt=con.createStatement();//创建一个Statement连接 
21         int result=stmt.executeUpdate(sql);//执行sql语句 
22         db.close(stmt,con); 
23         return result; 
24     } 
25      
26     public static void main(String[] args) throws Exception { 
27         Book book=new Book(13,"java120",666,"小别",1); 
28         int result=update(book); 
29         if(result==1){ 
30             System.out.println("更新成功"); 
31         }else{ 
32             System.out.println("更新失败"); 
33         }     
34     } 
35 }
核心代码
 1 package com.util; 
 2  
 3 import java.sql.Connection; 
 4 import java.sql.DriverManager; 
 5 import java.sql.SQLException; 
 6 import java.sql.Statement; 
 7  
 8 public class Dbutil { 
 9      
10     private static String url="jdbc:mysql://localhost:3306/db_person";//生命数据库的url(地址) 
11     private static String user="root";//数据库账号 
12     private static String password="123456";//数据库密码 
13     private static String driver="com.mysql.jdbc.Driver";//数据库的驱动 
14      
15     /** 
16      *  
17      * @return 
18      * @throws Exception 
19      */ 
20     public Connection getCon() throws Exception{ 
21         Class.forName(driver);//加载数据库驱动 
22         Connection con=DriverManager.getConnection(url, user, password); 
23         //建立数据库的连接,获得连接对象con 
24         return con; 
25     } 
26      
27     /** 
28      *  
29      * @param con 
30      * @throws Exception 
31      */ 
32     public void close(Statement stmt,Connection con) throws Exception{ 
33         if(stmt!=null){ 
34             stmt.close(); 
35             if(con!=null){ 
36                 con.close(); 
37             } 
38         } 
39              
40     } 
41      
42      
43 }
通用代码
 1 package com.ningmeng; 
 2  
 3 public class Book { 
 4      
 5     private int id; 
 6     private String name; 
 7     private float price; 
 8     private String author; 
 9     private int bookTypeId; 
10     public String getName() { 
11         return name; 
12     } 
13     public void setName(String name) { 
14         this.name = name; 
15     } 
16     public float getPrice() { 
17         return price; 
18     } 
19     public void setPrice(float price) { 
20         this.price = price; 
21     } 
22     public String getAuthor() { 
23         return author; 
24     } 
25     public void setAuthor(String author) { 
26         this.author = author; 
27     } 
28     public int getBookTypeId() { 
29         return bookTypeId; 
30     } 
31     public void setBookTypeId(int bookTypeId) { 
32         this.bookTypeId = bookTypeId; 
33     } 
34      
35     public int getId() { 
36         return id; 
37     } 
38     public void setId(int id) { 
39         this.id = id; 
40     } 
41      
42     public Book(int id, String name, float price, String author, int bookTypeId) { 
43         super(); 
44         this.id = id; 
45         this.name = name; 
46         this.price = price; 
47         this.author = author; 
48         this.bookTypeId = bookTypeId; 
49     } 
50      
51      
52      
53      
54      
55      
56 }
封装代码

(已经完成更新操作,需要注意的是在执行sql语句的时候由于语句过长可以使用eclipse自带的排版功能,完成排版)

1:使用Statement执行删除操作

 1 package com.ningmeng; 
 2  
 3 import java.sql.Connection; 
 4 import java.sql.Statement; 
 5  
 6 import com.util.Dbutil; 
 7  
 8 public class Test4 { 
 9  
10     private static Dbutil db=new Dbutil(); 
11      
12     private static int delete(Book book) throws Exception{ 
13         Connection con=db.getCon(); 
14         String sql="delete from db_book where id="+book.getId(); 
15         Statement stmt=con.createStatement();//创建一个Statement连接 
16         int result=stmt.executeUpdate(sql);//执行sql语句 
17         db.close(stmt,con); 
18         return result; 
19     } 
20     public static void main(String[] args) throws Exception{ 
21         // TODO Auto-generated method stub 
22         Book book=new Book(13); 
23         int result=delete(book); 
24         if(result==1){ 
25             System.out.println("删除成功"); 
26         }else{ 
27             System.out.println("删除失败"); 
28         }     
29     } 
30  
31 }
核心代码
 1 package com.util; 
 2  
 3 import java.sql.Connection; 
 4 import java.sql.DriverManager; 
 5 import java.sql.SQLException; 
 6 import java.sql.Statement; 
 7  
 8 public class Dbutil { 
 9      
10     private static String url="jdbc:mysql://localhost:3306/db_person";//生命数据库的url(地址) 
11     private static String user="root";//数据库账号 
12     private static String password="123456";//数据库密码 
13     private static String driver="com.mysql.jdbc.Driver";//数据库的驱动 
14      
15     /** 
16      *  
17      * @return 
18      * @throws Exception 
19      */ 
20     public Connection getCon() throws Exception{ 
21         Class.forName(driver);//加载数据库驱动 
22         Connection con=DriverManager.getConnection(url, user, password); 
23         //建立数据库的连接,获得连接对象con 
24         return con; 
25     } 
26      
27     /** 
28      *  
29      * @param con 
30      * @throws Exception 
31      */ 
32     public void close(Statement stmt,Connection con) throws Exception{ 
33         if(stmt!=null){ 
34             stmt.close(); 
35             if(con!=null){ 
36                 con.close(); 
37             } 
38         } 
39              
40     } 
41      
42      
43 }
通用的
 1 package com.ningmeng; 
 2  
 3 public class Book { 
 4      
 5     private int id; 
 6     private String name; 
 7     private float price; 
 8     private String author; 
 9     private int bookTypeId; 
10     public String getName() { 
11         return name; 
12     } 
13     public void setName(String name) { 
14         this.name = name; 
15     } 
16     public float getPrice() { 
17         return price; 
18     } 
19     public void setPrice(float price) { 
20         this.price = price; 
21     } 
22     public String getAuthor() { 
23         return author; 
24     } 
25     public void setAuthor(String author) { 
26         this.author = author; 
27     } 
28     public int getBookTypeId() { 
29         return bookTypeId; 
30     } 
31     public void setBookTypeId(int bookTypeId) { 
32         this.bookTypeId = bookTypeId; 
33     } 
34      
35     public int getId() { 
36         return id; 
37     } 
38     public void setId(int id) { 
39         this.id = id; 
40     } 
41     public Book(int id) { 
42         super(); 
43         this.id = id; 
44     } 
45      
46      
47      
48      
49      
50 }
封装

(可以看到删除操作执行完毕。)

 1:PreparedStatement是Statement的子接口,属于预处理操作,与直接使用Statement不同的是,PreparedStatement在操作时,是先在数据表中准备好了一条SQL语句,但是此SQL语句的具体内容暂时不设置,而是之后再进行设置。
(以后开发一般用PreparedStatement,一般不用Statement)

2:PreparedStatement插入操作

 1 package com.ningmeng; 
 2  
 3 import java.sql.Connection; 
 4 import java.sql.PreparedStatement; 
 5  
 6 import com.util.Dbutil; 
 7  
 8 public class Test5 { 
 9      
10     private static Dbutil db=new Dbutil(); 
11      
12     private static int add(Book book) throws Exception{ 
13         Connection con=db.getCon();//建立数据库的连接 
14         String sql="insert into db_book values(null,?,?,?,?)";//生成一条SQL语句 
15         PreparedStatement pstmt=con.prepareStatement(sql);//创建Statement对象 
16         pstmt.setString(1,book.getName()); 
17         pstmt.setFloat(2,book.getPrice()); 
18         pstmt.setString(3,book.getAuthor()); 
19         pstmt.setInt(4,book.getBookTypeId()); 
20         int result=pstmt.executeUpdate();//执行SQL语句 
21         db.close(pstmt,con); 
22         return result; 
23     } 
24     public static void main(String[] args) throws Exception{ 
25         // TODO Auto-generated method stub 
26         Book book =new Book("openstack",999,"小别",1); 
27         int result=add(book); 
28         if(result==1){ 
29             System.out.println("插入成功"); 
30         }else{ 
31             System.out.println("插入失败"); 
32         } 
33     } 
34  
35 }
核心代码
 1 package com.ningmeng; 
 2  
 3 public class Book { 
 4      
 5     private int id; 
 6     private String name; 
 7     private float price; 
 8     private String author; 
 9     private int bookTypeId; 
10     public String getName() { 
11         return name; 
12     } 
13     public void setName(String name) { 
14         this.name = name; 
15     } 
16     public float getPrice() { 
17         return price; 
18     } 
19     public void setPrice(float price) { 
20         this.price = price; 
21     } 
22     public String getAuthor() { 
23         return author; 
24     } 
25     public void setAuthor(String author) { 
26         this.author = author; 
27     } 
28     public int getBookTypeId() { 
29         return bookTypeId; 
30     } 
31     public void setBookTypeId(int bookTypeId) { 
32         this.bookTypeId = bookTypeId; 
33     } 
34      
35     public int getId() { 
36         return id; 
37     } 
38     public void setId(int id) { 
39         this.id = id; 
40     } 
41     public Book(String name, float price, String author, int bookTypeId) { 
42         super(); 
43         this.name = name; 
44         this.price = price; 
45         this.author = author; 
46         this.bookTypeId = bookTypeId; 
47     } 
 }
封装
 1 package com.util; 
 2  
 3 import java.sql.Connection; 
 4 import java.sql.DriverManager; 
 5 import java.sql.PreparedStatement; 
 6 import java.sql.Statement; 
 7  
 8 public class Dbutil { 
 9      
10     private static String url="jdbc:mysql://localhost:3306/db_person";//生命数据库的url(地址) 
11     private static String user="root";//数据库账号 
12     private static String password="123456";//数据库密码 
13     private static String driver="com.mysql.jdbc.Driver";//数据库的驱动 
14      
15     /** 
16      *  
17      * @return 
18      * @throws Exception 
19      */ 
20     public Connection getCon() throws Exception{ 
21         Class.forName(driver);//加载数据库驱动 
22         Connection con=DriverManager.getConnection(url, user, password); 
23         //建立数据库的连接,获得连接对象con 
24         return con; 
25     } 
26      
27     /** 
28      *  
29      * @param con 
30      * @throws Exception 
31      */ 
32     public void close(Statement stmt,Connection con) throws Exception{ 
33         if(stmt!=null){ 
34             stmt.close(); 
35             if(con!=null){ 
36                 con.close(); 
37             } 
38         } 
39     } 
40      
41     public void close(PreparedStatement pstmt,Connection con) throws Exception{ 
42         if(pstmt!=null){ 
43             pstmt.close(); 
44             if(con!=null){ 
45                 con.close(); 
46             } 
47         } 
48     } 
49      
50 }
通用

(如图已经完成插入操作)

3:PreparedStatement更新操作

 1 package com.util; 
 2  
 3 import java.sql.Connection; 
 4 import java.sql.DriverManager; 
 5 import java.sql.PreparedStatement; 
 6 import java.sql.Statement; 
 7  
 8 public class Dbutil { 
 9      
10     private static String url="jdbc:mysql://localhost:3306/db_person";//生命数据库的url(地址) 
11     private static String user="root";//数据库账号 
12     private static String password="123456";//数据库密码 
13     private static String driver="com.mysql.jdbc.Driver";//数据库的驱动 
14      
15     /** 
16      *  
17      * @return 
18      * @throws Exception 
19      */ 
20     public Connection getCon() throws Exception{ 
21         Class.forName(driver);//加载数据库驱动 
22         Connection con=DriverManager.getConnection(url, user, password); 
23         //建立数据库的连接,获得连接对象con 
24         return con; 
25     } 
26      
27     /** 
28      *  
29      * @param con 
30      * @throws Exception 
31      */ 
32     public void close(Statement stmt,Connection con) throws Exception{ 
33         if(stmt!=null){ 
34             stmt.close(); 
35             if(con!=null){ 
36                 con.close(); 
37             } 
38         } 
39     } 
40      
41     public void close(PreparedStatement pstmt,Connection con) throws Exception{ 
42         if(pstmt!=null){ 
43             pstmt.close(); 
44             if(con!=null){ 
45                 con.close(); 
46             } 
47         } 
48     } 
49      
50 }
通用
 1 package com.ningmeng; 
 2  
 3 public class Book { 
 4      
 5     private int id; 
 6     private String name; 
 7     private float price; 
 8     private String author; 
 9     private int bookTypeId; 
10     public String getName() { 
11         return name; 
12     } 
13     public void setName(String name) { 
14         this.name = name; 
15     } 
16     public float getPrice() { 
17         return price; 
18     } 
19     public void setPrice(float price) { 
20         this.price = price; 
21     } 
22     public String getAuthor() { 
23         return author; 
24     } 
25     public void setAuthor(String author) { 
26         this.author = author; 
27     } 
28     public int getBookTypeId() { 
29         return bookTypeId; 
30     } 
31     public void setBookTypeId(int bookTypeId) { 
32         this.bookTypeId = bookTypeId; 
33     } 
34      
35     public int getId() { 
36         return id; 
37     } 
38     public void setId(int id) { 
39         this.id = id; 
40     } 
41     /*public Book(String name, float price, String author, int bookTypeId) { 
42         super(); 
43         this.name = name; 
44         this.price = price; 
45         this.author = author; 
46         this.bookTypeId = bookTypeId; 
47     }*/ 
48     public Book(int id, String name, float price, String author, int bookTypeId) { 
49         super(); 
50         this.id = id; 
51         this.name = name; 
52         this.price = price; 
53         this.author = author; 
54         this.bookTypeId = bookTypeId; 
55     } 
}
封装
 1 package com.ningmeng; 
 2  
 3 import java.sql.Connection; 
 4 import java.sql.PreparedStatement; 
 5  
 6  
 7 import com.util.Dbutil; 
 8  
 9 public class Test6 { 
10  
11     private static Dbutil db=new Dbutil(); 
12  
13     private static int add(Book book) throws Exception{ 
14         Connection con=db.getCon();//建立数据库的连接 
15         String sql="update db_book set name=?,price=?,author=?,bookTypeId=? where id=?";//生成一条SQL语句 
16         PreparedStatement pstmt=con.prepareStatement(sql);//创建Statement对象 
17         pstmt.setString(1,book.getName()); 
18         pstmt.setFloat(2,book.getPrice()); 
19         pstmt.setString(3,book.getAuthor()); 
20         pstmt.setInt(4,book.getBookTypeId()); 
21         pstmt.setInt(5,book.getId()); 
22         int result=pstmt.executeUpdate();//执行SQL语句 
23         db.close(pstmt,con); 
24         return result; 
25     } 
26     public static void main(String[] args) throws Exception{ 
27         // TODO Auto-generated method stub 
28         Book book =new Book(16,"javaweb",222,"小ma",1); 
29         int result=add(book); 
30         if(result==1){ 
31             System.out.println("更新成功"); 
32         }else{ 
33             System.out.println("更新失败"); 
34         } 
35          
36     } 
37 }
核心代码

(有图可见,已经完成更新操作)

4:PreparedStatement删除操作

 1 package com.ningmeng; 
 2  
 3 import java.sql.Connection; 
 4 import java.sql.PreparedStatement; 
 5  
 6 import com.util.Dbutil; 
 7  
 8 public class Test7 { 
 9  
10     private static Dbutil db=new Dbutil(); 
11  
12     private static int add(Book book) throws Exception{ 
13         Connection con=db.getCon();//建立数据库的连接 
14         String sql="delete from db_book where id=?";//生成一条SQL语句 
15         PreparedStatement pstmt=con.prepareStatement(sql);//创建Statement对象 
16         pstmt.setInt(1,book.getId()); 
17         int result=pstmt.executeUpdate();//执行SQL语句 
18         db.close(pstmt,con); 
19         return result; 
20     } 
21     public static void main(String[] args) throws Exception{ 
22         // TODO Auto-generated method stub 
23         Book book =new Book(16); 
24         int result=add(book); 
25         if(result==1){ 
26             System.out.println("删除成功"); 
27         }else{ 
28             System.out.println("删除失败"); 
29         } 
30          
31     } 
32 }
核心代码
 1 package com.util; 
 2  
 3 import java.sql.Connection; 
 4 import java.sql.DriverManager; 
 5 import java.sql.PreparedStatement; 
 6 import java.sql.Statement; 
 7  
 8 public class Dbutil { 
 9      
10     private static String url="jdbc:mysql://localhost:3306/db_person";//生命数据库的url(地址) 
11     private static String user="root";//数据库账号 
12     private static String password="123456";//数据库密码 
13     private static String driver="com.mysql.jdbc.Driver";//数据库的驱动 
14      
15     /** 
16      *  
17      * @return 
18      * @throws Exception 
19      */ 
20     public Connection getCon() throws Exception{ 
21         Class.forName(driver);//加载数据库驱动 
22         Connection con=DriverManager.getConnection(url, user, password); 
23         //建立数据库的连接,获得连接对象con 
24         return con; 
25     } 
26      
27     /** 
28      *  
29      * @param con 
30      * @throws Exception 
31      */ 
32     public void close(Statement stmt,Connection con) throws Exception{ 
33         if(stmt!=null){ 
34             stmt.close(); 
35             if(con!=null){ 
36                 con.close(); 
37             } 
38         } 
39     } 
40      
41     public void close(PreparedStatement pstmt,Connection con) throws Exception{ 
42         if(pstmt!=null){ 
43             pstmt.close(); 
44             if(con!=null){ 
45                 con.close(); 
46             } 
47         } 
48     } 
49      
50 }
通用
 1 package com.ningmeng; 
 2  
 3 public class Book { 
 4      
 5     private int id; 
 6     private String name; 
 7     private float price; 
 8     private String author; 
 9     private int bookTypeId; 
10     public String getName() { 
11         return name; 
12     } 
13     public void setName(String name) { 
14         this.name = name; 
15     } 
16     public float getPrice() { 
17         return price; 
18     } 
19     public void setPrice(float price) { 
20         this.price = price; 
21     } 
22     public String getAuthor() { 
23         return author; 
24     } 
25     public void setAuthor(String author) { 
26         this.author = author; 
27     } 
28     public int getBookTypeId() { 
29         return bookTypeId; 
30     } 
31     public void setBookTypeId(int bookTypeId) { 
32         this.bookTypeId = bookTypeId; 
33     } 
34      
35     public int getId() { 
36         return id; 
37     } 
38     public void setId(int id) { 
39         this.id = id; 
40     } 
41     /*public Book(String name, float price, String author, int bookTypeId) { 
42         super(); 
43         this.name = name; 
44         this.price = price; 
45         this.author = author; 
46         this.bookTypeId = bookTypeId; 
47     }*/ 
48     /*public Book(int id, String name, float price, String author, int bookTypeId) { 
49         super(); 
50         this.id = id; 
51         this.name = name; 
52         this.price = price; 
53         this.author = author; 
54         this.bookTypeId = bookTypeId; 
55     }*/ 
56     public Book(int id) { 
57         super(); 
58         this.id = id; 
59     } 
60      
61      
62      
63      
64      
65      
66 }
封装

(执行删除操作完成后如图)

1:ResultSet接口的使用

 1 package com.ningmeng; 
 2  
 3 import java.sql.Connection; 
 4 import java.sql.PreparedStatement; 
 5 import java.sql.ResultSet; 
 6  
 7 import com.util.Dbutil; 
 8  
 9 public class Test8 { 
10  
11     private static Dbutil db=new Dbutil(); 
12      
13     public static void select() throws Exception{ 
14         Connection con=db.getCon(); 
15         String sql="select * from db_book"; 
16         PreparedStatement pstmt=con.prepareStatement(sql); 
17         ResultSet rs=pstmt.executeQuery(); 
18         while(rs.next()){ 
19             int id=rs.getInt(1);//id  开发的时候一般使用数据库字段名 
20             String name=rs.getString(2);//name 
21             float price=rs.getFloat(3);//price 
22             String author=rs.getString(4);//author 
23             int bookTypeId=rs.getInt(5);//bookTypeId 
24             System.out.println(id+"\t"+name+"\t"+price+"\t"+author+"\t"+bookTypeId); 
25         } 
26          
27     } 
28     public static void main(String[] args) throws Exception { 
29         // TODO Auto-generated method stub 
30         select(); 
31     } 
32  
33 }
核心代码
 1 package com.util; 
 2  
 3 import java.sql.Connection; 
 4 import java.sql.DriverManager; 
 5 import java.sql.PreparedStatement; 
 6 import java.sql.Statement; 
 7  
 8 public class Dbutil { 
 9      
10     private static String url="jdbc:mysql://localhost:3306/db_person";//生命数据库的url(地址) 
11     private static String user="root";//数据库账号 
12     private static String password="123456";//数据库密码 
13     private static String driver="com.mysql.jdbc.Driver";//数据库的驱动 
14      
15     /** 
16      *  
17      * @return 
18      * @throws Exception 
19      */ 
20     public Connection getCon() throws Exception{ 
21         Class.forName(driver);//加载数据库驱动 
22         Connection con=DriverManager.getConnection(url, user, password); 
23         //建立数据库的连接,获得连接对象con 
24         return con; 
25     } 
26      
27     /** 
28      *  
29      * @param con 
30      * @throws Exception 
31      */ 
32     public void close(Statement stmt,Connection con) throws Exception{ 
33         if(stmt!=null){ 
34             stmt.close(); 
35             if(con!=null){ 
36                 con.close(); 
37             } 
38         } 
39     } 
40      
41     public void close(PreparedStatement pstmt,Connection con) throws Exception{ 
42         if(pstmt!=null){ 
43             pstmt.close(); 
44             if(con!=null){ 
45                 con.close(); 
46             } 
47         } 
48     } 
49      
50 }
通用
 1 package com.ningmeng; 
 2  
 3 public class Book { 
 4      
 5     private int id; 
 6     private String name; 
 7     private float price; 
 8     private String author; 
 9     private int bookTypeId; 
10     public String getName() { 
11         return name; 
12     } 
13     public void setName(String name) { 
14         this.name = name; 
15     } 
16     public float getPrice() { 
17         return price; 
18     } 
19     public void setPrice(float price) { 
20         this.price = price; 
21     } 
22     public String getAuthor() { 
23         return author; 
24     } 
25     public void setAuthor(String author) { 
26         this.author = author; 
27     } 
28     public int getBookTypeId() { 
29         return bookTypeId; 
30     } 
31     public void setBookTypeId(int bookTypeId) { 
32         this.bookTypeId = bookTypeId; 
33     } 
34      
35     public int getId() { 
36         return id; 
37     } 
38     public void setId(int id) { 
39         this.id = id; 
40     } 
41     /*public Book(String name, float price, String author, int bookTypeId) { 
42         super(); 
43         this.name = name; 
44         this.price = price; 
45         this.author = author; 
46         this.bookTypeId = bookTypeId; 
47     }*/ 
48     public Book(int id, String name, float price, String author, int bookTypeId) { 
49         super(); 
50         this.id = id; 
51         this.name = name; 
52         this.price = price; 
53         this.author = author; 
54         this.bookTypeId = bookTypeId; 
55     } 
56     public Book(int id) { 
57         super(); 
58         this.id = id; 
59     } 
60  
61 }
封装

2:以后开发使用的举例

 1 package com.ningmeng; 
 2  
 3  
 4 import java.sql.Connection; 
 5 import java.sql.PreparedStatement; 
 6 import java.sql.ResultSet; 
 7 import java.util.ArrayList; 
 8 import java.util.List; 
 9  
10 import com.util.Dbutil; 
11  
12 public class Test9 { 
13  
14     private static Dbutil db=new Dbutil(); 
15      
16     private static List<Book> select() throws Exception{ 
17         List<Book> list=new ArrayList<Book>(); 
18         Connection con=db.getCon(); 
19         String sql="select * from db_book"; 
20         PreparedStatement pstmt=con.prepareStatement(sql); 
21         ResultSet rs=pstmt.executeQuery(); 
22         while(rs.next()){ 
23             int id=rs.getInt(1);//id  开发的时候一般使用数据库字段名 
24             String name=rs.getString(2);//name 
25             float price=rs.getFloat(3);//price 
26             String author=rs.getString(4);//author 
27             int bookTypeId=rs.getInt(5);//bookTypeId 
28             Book book=new Book(id,name,price,author,bookTypeId); 
29             list.add(book); 
30         } 
31         return list; 
32          
33     } 
34     public static void main(String[] args) throws Exception { 
35         // TODO Auto-generated method stub 
36         List<Book> list=select(); 
37         for(Book book : list){ 
38             System.out.println(book); 
39         } 
40     } 
41  
42 }
核心代码
 1 package com.util; 
 2  
 3 import java.sql.Connection; 
 4 import java.sql.DriverManager; 
 5 import java.sql.PreparedStatement; 
 6 import java.sql.Statement; 
 7  
 8 public class Dbutil { 
 9      
10     private static String url="jdbc:mysql://localhost:3306/db_person";//生命数据库的url(地址) 
11     private static String user="root";//数据库账号 
12     private static String password="123456";//数据库密码 
13     private static String driver="com.mysql.jdbc.Driver";//数据库的驱动 
14      
15     /** 
16      *  
17      * @return 
18      * @throws Exception 
19      */ 
20     public Connection getCon() throws Exception{ 
21         Class.forName(driver);//加载数据库驱动 
22         Connection con=DriverManager.getConnection(url, user, password); 
23         //建立数据库的连接,获得连接对象con 
24         return con; 
25     } 
26      
27     /** 
28      *  
29      * @param con 
30      * @throws Exception 
31      */ 
32     public void close(Statement stmt,Connection con) throws Exception{ 
33         if(stmt!=null){ 
34             stmt.close(); 
35             if(con!=null){ 
36                 con.close(); 
37             } 
38         } 
39     } 
40      
41     public void close(PreparedStatement pstmt,Connection con) throws Exception{ 
42         if(pstmt!=null){ 
43             pstmt.close(); 
44             if(con!=null){ 
45                 con.close(); 
46             } 
47         } 
48     } 
49      
50 }
通用
 1 package com.ningmeng; 
 2  
 3 public class Book { 
 4      
 5     private int id; 
 6     private String name; 
 7     private float price; 
 8     private String author; 
 9     private int bookTypeId; 
10     public String getName() { 
11         return name; 
12     } 
13     public void setName(String name) { 
14         this.name = name; 
15     } 
16     public float getPrice() { 
17         return price; 
18     } 
19     public void setPrice(float price) { 
20         this.price = price; 
21     } 
22     public String getAuthor() { 
23         return author; 
24     } 
25     public void setAuthor(String author) { 
26         this.author = author; 
27     } 
28     public int getBookTypeId() { 
29         return bookTypeId; 
30     } 
31     public void setBookTypeId(int bookTypeId) { 
32         this.bookTypeId = bookTypeId; 
33     } 
34      
35     public int getId() { 
36         return id; 
37     } 
38     public void setId(int id) { 
39         this.id = id; 
40     } 
41     /*public Book(String name, float price, String author, int bookTypeId) { 
42         super(); 
43         this.name = name; 
44         this.price = price; 
45         this.author = author; 
46         this.bookTypeId = bookTypeId; 
47     }*/ 
48     public Book(int id, String name, float price, String author, int bookTypeId) { 
49         super(); 
50         this.id = id; 
51         this.name = name; 
52         this.price = price; 
53         this.author = author; 
54         this.bookTypeId = bookTypeId; 
55     } 
56     public Book(int id) { 
57         super(); 
58         this.id = id; 
59     } 
60     @Override 
61     public String toString() { 
62         return "Book [id=" + id + ", name=" + name + ", price=" + price + ", author=" + author + ", bookTypeId=" 
63                 + bookTypeId + "]"; 
64     } 
65  
66      
67 }
封装

1:处理大数据对象

大数据对象处理主要有CLOB(character large object)和BLOB(binary large object)两种类型的字段;在CLOB中可以存储大字符数据对象,比如长篇小说;在BLOB中可以存放二进制大数据对象,比如图片,电影,音乐;

 1 package com.ningmeng; 
 2  
 3 import java.io.File; 
 4 import java.io.FileInputStream; 
 5 import java.io.FileOutputStream; 
 6 import java.io.InputStream; 
 7 import java.sql.Blob; 
 8 import java.sql.Clob; 
 9 import java.sql.Connection; 
10 import java.sql.PreparedStatement; 
11 import java.sql.ResultSet; 
12  
13 import com.util.Dbutil; 
14  
15 public class Test10 { 
16  
17     private static Dbutil db=new Dbutil(); 
18      
19     private static int add(Book book) throws Exception{ 
20         Connection con=db.getCon();//建立数据库的连接 
21         String sql="insert into db_book values(null,?,?,?,?,?,?)";//生成一条SQL语句 
22         PreparedStatement pstmt=con.prepareStatement(sql);//创建Statement对象 
23         pstmt.setString(1,book.getName()); 
24         pstmt.setFloat(2,book.getPrice()); 
25         pstmt.setString(3,book.getAuthor()); 
26         pstmt.setInt(4,book.getBookTypeId()); 
27          
28         File context=book.getContext(); 
29         InputStream input=new FileInputStream(context); 
30         pstmt.setAsciiStream(5, input,context.length()); 
31          
32         File pic=book.getPic(); 
33         InputStream input2=new FileInputStream(pic); 
34         pstmt.setBinaryStream(6, input2,pic.length()); 
35          
36          
37         int result=pstmt.executeUpdate();//执行SQL语句 
38         db.close(pstmt,con); 
39         return result; 
40     } 
41      
42     public static void read(Book book) throws Exception{ 
43         Connection con=db.getCon(); 
44         String sql="select * from db_book where id="+book.getId(); 
45         PreparedStatement pstmt= con.prepareStatement(sql); 
46         ResultSet rs=pstmt.executeQuery(); 
47         while(rs.next()){ 
48             int id=rs.getInt("id"); 
49             String name=rs.getString("name"); 
50             float price=rs.getFloat("price"); 
51             String author=rs.getString("author"); 
52             int bookTypeId=rs.getInt("bookTypeId"); 
53             Clob c=rs.getClob("context"); 
54             String context=c.getSubString(1,(int)c.length()); 
55              
56             Blob b=rs.getBlob("pic");  
57             FileOutputStream fos=new FileOutputStream("G:/1.png"); 
58             fos.write(b.getBytes(1, (int) b.length())); 
59             fos.close(); 
60                  
61             System.out.println("id"+"\t"+name+"\t"+price+"\t"+author+"\t"+bookTypeId+"\t"+context); 
62              
63             
64         } 
65         db.close(pstmt, con); 
66     } 
67      
68     public static void main(String[] args) throws Exception{ 
69         // TODO Auto-generated method stub 
70         /*File context=new File("F:/子查询.txt"); 
71         File pic=new File("F:/1.png"); 
72         Book book=new Book("javaweb",888,"小别",1,context,pic); 
73         int result=add(book); 
74         if(result==1){ 
75             System.out.println("插入成功"); 
76         }else{ 
77             System.out.println("插入失败"); 
78         }*/ 
79          
80         Book book2=new Book(19); 
81         read(book2); 
82          
83          
84     } 
85  
86 }
核心代码
  1 package com.ningmeng; 
  2  
  3 import java.io.File; 
  4  
  5 public class Book { 
  6      
  7     private int id; 
  8     private String name; 
  9     private float price; 
 10     private String author; 
 11     private int bookTypeId; 
 12     private File context;//处理文本 
 13     private File pic;//处理图片的 
 14      
 15     public String getName() { 
 16         return name; 
 17     } 
 18     public void setName(String name) { 
 19         this.name = name; 
 20     } 
 21     public float getPrice() { 
 22         return price; 
 23     } 
 24     public void setPrice(float price) { 
 25         this.price = price; 
 26     } 
 27     public String getAuthor() { 
 28         return author; 
 29     } 
 30     public void setAuthor(String author) { 
 31         this.author = author; 
 32     } 
 33     public int getBookTypeId() { 
 34         return bookTypeId; 
 35     } 
 36     public void setBookTypeId(int bookTypeId) { 
 37         this.bookTypeId = bookTypeId; 
 38     } 
 39      
 40     public int getId() { 
 41         return id; 
 42     } 
 43     public void setId(int id) { 
 44         this.id = id; 
 45     } 
 46      
 47      
 48     public File getContext() { 
 49         return context; 
 50     } 
 51     public void setContext(File context) { 
 52         this.context = context; 
 53     } 
 54      
 55      
 56     public File getPic() { 
 57         return pic; 
 58     } 
 59     public void setPic(File pic) { 
 60         this.pic = pic; 
 61     } 
 62      
 63      
 64     /*public Book(String name, float price, String author, int bookTypeId) { 
 65         super(); 
 66         this.name = name; 
 67         this.price = price; 
 68         this.author = author; 
 69         this.bookTypeId = bookTypeId; 
 70     }*/ 
 71     public Book(int id, String name, float price, String author, int bookTypeId) { 
 72         super(); 
 73         this.id = id; 
 74         this.name = name; 
 75         this.price = price; 
 76         this.author = author; 
 77         this.bookTypeId = bookTypeId; 
 78     } 
 79     public Book(int id) { 
 80         super(); 
 81         this.id = id; 
 82     } 
 83     @Override 
 84     public String toString() { 
 85         return "Book [id=" + id + ", name=" + name + ", price=" + price + ", author=" + author + ", bookTypeId=" 
 86                 + bookTypeId + "]"; 
 87     } 
 88     public Book(String name, float price, String author, int bookTypeId, File context) { 
 89         super(); 
 90         this.name = name; 
 91         this.price = price; 
 92         this.author = author; 
 93         this.bookTypeId = bookTypeId; 
 94         this.context = context; 
 95     } 
 96     public Book(String name, float price, String author, int bookTypeId, File context, File pic) { 
 97         super(); 
 98         this.name = name; 
 99         this.price = price; 
100         this.author = author; 
101         this.bookTypeId = bookTypeId; 
102         this.context = context; 
103         this.pic = pic; 
104     } 
105  
106      
107      
108     //构造方法是根据不同的初始化对象的需要构造的 
109 }
封装
 1 package com.util; 
 2  
 3 import java.sql.Connection; 
 4 import java.sql.DriverManager; 
 5 import java.sql.PreparedStatement; 
 6 import java.sql.Statement; 
 7  
 8 public class Dbutil { 
 9      
10     private static String url="jdbc:mysql://localhost:3306/db_person";//生命数据库的url(地址) 
11     private static String user="root";//数据库账号 
12     private static String password="123456";//数据库密码 
13     private static String driver="com.mysql.jdbc.Driver";//数据库的驱动 
14      
15     /** 
16      *  
17      * @return 
18      * @throws Exception 
19      */ 
20     public Connection getCon() throws Exception{ 
21         Class.forName(driver);//加载数据库驱动 
22         Connection con=DriverManager.getConnection(url, user, password); 
23         //建立数据库的连接,获得连接对象con 
24         return con; 
25     } 
26      
27     /** 
28      *  
29      * @param con 
30      * @throws Exception 
31      */ 
32     public void close(Statement stmt,Connection con) throws Exception{ 
33         if(stmt!=null){ 
34             stmt.close(); 
35             if(con!=null){ 
36                 con.close(); 
37             } 
38         } 
39     } 
40      
41     public void close(PreparedStatement pstmt,Connection con) throws Exception{ 
42         if(pstmt!=null){ 
43             pstmt.close(); 
44             if(con!=null){ 
45                 con.close(); 
46             } 
47         } 
48     } 
49      
50 }
通用

评论关闭
IT序号网

微信公众号号:IT虾米 (左侧二维码扫一扫)欢迎添加!