JDBC工具类:JDBCUtils

  1. 目的:简化书写
  2. 分析:
    1. 注册驱动的抽取
    2. 抽取一个方法获取连接对象
      1. 需求:不想传递参数,同时保证工具类的通用性
      2. 解决:配置文件
        1. Jdbc.properties
          1. Url=
          2. User=
          3. Password=
    3. 抽取一个方法释放资源
  3. 代码实现:
    		public  class JDBCUtils {
    		Private  static  String url ;
    		Private static String username; 
    		Private static String password;
    		Private static String driver;
    		
    		
    		/**
    		*文件的读取,只需要读一次即可拿到这些值。使用静态代码块
    		*/
    		
    		static{
    		//读取资源文件,获取值。
    		
    		try{
    		//1.创建Properties集合类
    			Properties Pro = new properties();
    		//获取src路径下的文件方式--->ClassLoader 类加载器
    		ClassLoader classloader = JDBCUtils.class.getClassLoader();
    		URL  res = classLoader .getResource("jdbc.properties");
    		String path = res.getPath();
    		System .out .println(path);
    		//加载文件
    		pro.load(new FieldReader(path));
    		//获取数据,赋值
    		url = pro.getProperty("url");
    		user = pro.getProperty("user");
    		password = pro.getProperty("password");
    		driver = pro.getProperty("driver");
    		//注册驱动
    		Class.forName(driver);
    		}catch(IOException e){
    			e.printStackTrace();
    		}
    		}catch(ClassNotFoundException e){
    			e.printStackTrace();
    		}
    		
    		
    		/**
    		*获取连接
    		*/
    		public static Connection getConnection()throw SQLException{
    			return DriverManager.getConnection(url,user,password);
    		}
    		
    		
    		/**
    		*释放资源
    		*/
    		public static void close (ResultSet rs, Statement stmt ,Connection conn) {
    			
    			If (rs!= NULL){
    				try{
    					rs.close();
    				}catch(SQLException e){
    					e.printStackTrace();
    				}
    			}
    			
    			If (stmt != NULL){
    				try{
    					stmt.close();
    				}catch(SQLException e){
    					e.printStackTrace();
    				}
    			}
    			
    			If (conn != NULL){
    				try{
    					conn .close();
    				}catch(SQLException e){
    					e.printStackTrace();
    				}
    			}
    			
    		}
    		
    		}
    		
    	
    		} 
    

     

你可能感兴趣的:(♥Java学习♥)