jdbc连接数据库工具包模板

jdbc连接数据库操作

jdbc连接数据库模板,收藏可做模板使用(小型工程,一般大工程都会用框架,c3p0等连接,不考虑此种方法!)。

配置文件的使用(使用配置文件可以使我们后期的修改更加方便,当然,也可以使用java中的枚举效果也是相同的,不过在这里推荐大家使用配置文件)

在这里使用mysql做类子:

 #db.properties
 #一般放在src下

 driver=com.mysql.jdbc.Driver
 url=jdbc:mysql://127.0.0.1:3306/duomao?useUnicode=true&characterEncoding=utf-8
 user=root
 password=**********

关于useUnicode和charsetEncoding(duomao为数据库的名称)

1. 存数据时:

     数据库在存放项目数据的时候会先用UTF-8格式将数据解码成字节码,然后再将解码后的字节码重新使用GBK编码存放到数据库中。

2.取数据时:

     在从数据库中取数据的时候,数据库会先将数据库中的数据按GBK格式解码成字节码,然后再将解码后的字节码重新按UTF-8格式编码数据,最后再将数据返回给客户端。

读取配置文件和进行连接操作:

创建一个工具包,可以重复的使用:

大概的流程:

1:使用Properties来读取配置文件

2:加载驱动

3:获得连接conn=DriverManager.getConnection(url, username, password);

4:使用完毕后记得使用.close方法来关闭数据库的连接!

 import java.io.FileReader;
 import java.io.IOException;
 import java.io.Reader;
 import java.sql.Connection;
 import java.sql.DriverManager;
 import java.sql.SQLException;
 import java.util.Properties;

 public class DBUtil {
     private static String driver;
     private static String url;
     private static String username;
     private static String password;

     //读取配置文件中的内容
     static{
         Properties properties = new Properties();
         Reader in;
         try {
             in = new FileReader("db.properties");
             //load方法 从.properties属性文件对应的文件输入流中,加载属性列表到Properties类对象
             properties.load(in);
         } catch (IOException e) {
             e.printStackTrace();
         }
         //将配置文件中的参数提取出来
         driver = properties.getProperty("driver");
         url = properties.getProperty("url");
         username = properties.getProperty("username");
         password = properties.getProperty("password");
     }

     public static Connection open(){
         try {
             Class.forName(driver);
             return DriverManager.getConnection(url, username, password);
         } catch (ClassNotFoundException e) {
             e.printStackTrace();
         } catch (SQLException e) {
             e.printStackTrace();
         }
         return null;
     }

     public static void close(Connection conn){
         if(conn != null){
             try {
                 conn.close();
             } catch (SQLException e) {
                 e.printStackTrace();
             }
         }
     }
 }
上一篇:SDUT 2409:The Best Seat in ACM Contest


下一篇:ReportViewer工具栏功能扩展[手动设置打印/导出按钮]