[Java] 连接数据库的工具类 →→→→→进入此内容的聊天室

来自 , 2019-08-13, 写在 Java, 查看 101 次.
URL http://www.code666.cn/view/f4a331b7
  1. //数据库的配置文件databases.properties
  2.  
  3. jdbc.driver=com.mysql.jdbc.Driver
  4. jdbc.connection.url=jdbc:mysql://localhost:3306/db_book
  5. jdbc.connection.user=root
  6. jdbc.connection.password=wang000123
  7.  
  8.  
  9. //加载连接数据库配置文件的工具类
  10. package cn.it.util;
  11.  
  12. import java.io.IOException;
  13. import java.io.InputStream;
  14. import java.util.Properties;
  15.  
  16. //获取数据库连接:完成前两步-加载驱动;获取连接数据库的配置文件连接数据库
  17. public class ConfigManager
  18. {
  19.         private static ConfigManager configManager;
  20.         //读取配置文件:用到map集合中Hashtable子类Properties类
  21.         private static Properties properties = new Properties();//获取该实例
  22.        
  23.         //缺省的构造方法,实例化时加载配置文件,私有是防止外界new
  24.         private  ConfigManager()
  25.         {
  26.                 String configFile = "databases.properties";    //指定根目录
  27.                
  28.                 //properties = new Properties();
  29.                
  30.                 InputStream is = ConfigManager.class.getClassLoader().getResourceAsStream(configFile);//把资源文件读入到流
  31.        
  32.                 try
  33.                 {
  34.                         properties.load(is);
  35.                        
  36.                         is.close();
  37.                 }
  38.                 catch (IOException e)
  39.                 {
  40.                         // TODO Auto-generated catch block
  41.                         e.printStackTrace();
  42.                 }
  43.         }
  44.         //向外界提供一个获取的方法
  45.         public static ConfigManager getInstance()
  46.         {
  47.                 if(configManager==null)
  48.                 {
  49.                         configManager = new ConfigManager();
  50.                 }
  51.                 return configManager;
  52.         }
  53.         //获取配置文件的value
  54.         public String getValue(String key)
  55.         {
  56.                 return properties.getProperty(key);
  57.         }
  58.        
  59. }
  60. //获取数据库连接的工具类
  61. package cn.it.util;
  62.  
  63. import java.sql.Connection;
  64. import java.sql.DriverManager;
  65. import java.sql.SQLException;
  66.  
  67. public class DatabaseUtil
  68. {
  69.  
  70.         private static Connection connection = null;
  71.  
  72.         // 使用静态方法获取连接数据库
  73.         public static Connection open()
  74.         {
  75.  
  76.                 // 拿到具体的数据库连接的属性值
  77.                 String driver = ConfigManager.getInstance().getValue("jdbc.driver");
  78.                 String url = ConfigManager.getInstance().getValue("jdbc.connection.url");
  79.                 String user = ConfigManager.getInstance().getValue("jdbc.connection.user");
  80.                 String password = ConfigManager.getInstance().getValue("jdbc.connection.password");
  81.                 //获取数据库相关信息
  82.                 System.out.println(driver);
  83.                 System.out.println(url);
  84.                 System.out.println(password);
  85.                 System.out.println(user);
  86.                 try
  87.                 {
  88.                         Class.forName(driver);
  89.  
  90.                         connection = DriverManager.getConnection(url, user, password);
  91.                 }
  92.                 catch (Exception e)
  93.                 {
  94.                         throw new RuntimeException("数据库连接异常!");
  95.                 }
  96.                 return connection;
  97.         }
  98.  
  99.         // 关闭数据库
  100.         public static void close(Connection conn)
  101.         {
  102.                 if (conn != null)
  103.                 {
  104.                         try
  105.                         {
  106.                                 conn.close();
  107.                         } catch (SQLException e)
  108.                         {
  109.                                 throw new RuntimeException("数据库关闭异常!");
  110.                         }
  111.                 }
  112.         }
  113.  
  114.         // 测试数据库连接
  115.         public static void main(String[] args)
  116.         {
  117.                 try{
  118.                         DatabaseUtil.open();
  119.                         System.out.println("连接成功");
  120.                 }catch(Exception e)
  121.                 {
  122.                         System.out.println("连接失败!");
  123.                        
  124.                         throw new RuntimeException("连接数据库异常!");
  125.                 }
  126.                
  127.         }
  128. }
  129.  

回复 "连接数据库的工具类"

这儿你可以回复上面这条便签

captcha