• JDBC配置信息提取到配置文件


    1.1 JDBC的配置信息提取到配置文件

    1.1.1 配置文件

    属性文件
    • 格式:扩展名是.properties
    • 内容:key=value
    XML文件

    1.1.2 提取信息到配置文件

    • 定义一个配置文件,在src下创建一个 db.properties 配置文件
    driverClassName=com.mysql.jdbc.Driver
    url=jdbc:mysql:///web_test3
    username=root
    password=1234
    

    1.1.3 在工具类中解析属性文件

    • 获取到具体内容为常量赋值
    package com.xdr630.jdbc.utils;
    
    import java.io.FileInputStream;
    import java.io.FileNotFoundException;
    import java.io.IOException;
    import java.sql.Connection;
    import java.sql.DriverManager;
    import java.sql.ResultSet;
    import java.sql.SQLException;
    import java.sql.Statement;
    import java.util.Properties;
    
    /**
     * JDBC的工具类
     * @author jt
     *
     */
    public class JDBCUtils {
    	private static final String driverClassName;
    	private static final String url;
    	private static final String username;
    	private static final String password;
    	
    	static{
    		// 获取属性文件中的内容:
    		Properties properties = new Properties();
    		try {
    			properties.load(new FileInputStream("src/db.properties"));
    		} catch (FileNotFoundException e) {
    			e.printStackTrace();
    		} catch (IOException e) {
    			e.printStackTrace();
    		}
    		
    		driverClassName=properties.getProperty("driverClassName");
    		url=properties.getProperty("url");
    		username=properties.getProperty("username");
    		password=properties.getProperty("password");
    	}
    
    	/**
    	 * 注册驱动的方法
    	 */
    	public static void loadDriver(){
    		try {
    			Class.forName(driverClassName);
    		} catch (ClassNotFoundException e) {
    			e.printStackTrace();
    		}
    	}
    	
    	/**
    	 * 获得连接的方法
    	 */
    	public static Connection getConnection(){
    		Connection conn = null;
    		try{
    			// 将驱动一并注册:
    			loadDriver();
    			// 获得连接
    			conn = DriverManager.getConnection(url,username, password);
    		}catch(Exception e){
    			e.printStackTrace();
    		}
    		return conn;
    	}
    	
    	/**
    	 * 释放资源的方法
    	 */
    	public static void release(Statement stmt,Connection conn){
    		if(stmt != null){
    			try {
    				stmt.close();
    			} catch (SQLException e) {
    				e.printStackTrace();
    			}
    			
    			stmt = null;
    		}
    		if(conn != null){
    			try {
    				conn.close();
    			} catch (SQLException e) {
    				e.printStackTrace();
    			}
    			conn = null;
    		}
    	}
    	
    	public static void release(ResultSet rs,Statement stmt,Connection conn){
    		// 资源释放:
    		if(rs != null){
    			try {
    				rs.close();
    			} catch (SQLException e) {
    				e.printStackTrace();
    			}
    			
    			rs = null;
    		}
    		if(stmt != null){
    			try {
    				stmt.close();
    			} catch (SQLException e) {
    				e.printStackTrace();
    			}
    			
    			stmt = null;
    		}
    		if(conn != null){
    			try {
    				conn.close();
    			} catch (SQLException e) {
    				e.printStackTrace();
    			}
    			conn = null;
    		}
    	}
    }
    
    

    在这里插入图片描述

    • 已知表数据:
      在这里插入图片描述
    • 控制台输出:
      在这里插入图片描述

    本文来自博客园,作者:兮动人,转载请注明原文链接:https://www.cnblogs.com/xdr630/p/15254874.html

  • 相关阅读:
    Python爬虫实践 —— 4.好听音乐网轻音乐资源下载
    Python爬虫实践 —— urllib.request和requests
    Python爬虫实践 —— 3.利用爬虫提取返回值,模拟有道词典接口
    Python爬虫实践 —— 2.百度贴吧html文件爬取
    Python爬虫实践 —— 1.对反爬机制的认识
    用gcd库函数求最大公约数
    对结构体进行排序
    python菜鸟入门知识
    python安装及typora使用
    python基础一整型、bool、字符串
  • 原文地址:https://www.cnblogs.com/xdr630/p/15254874.html
Copyright © 2020-2023  润新知