zoukankan      html  css  js  c++  java
  • JavaWeb学习之DButil配置文件

    properties配置文件

    在开发中获得连接的4个参数(驱动、url、用户名、密码)通常都存在配置文件中,方便后期维护。如果程序需要更换数据库,只需要修改配置文件即可

    使用properties配置文件的要求如下:

    1、文件的位置:任意,建议在src下

    2、文件的名称:任意,扩展名为properties

    3、文件的内容:一行一组数据,格式“key=value”

         a)  key命名自定义,如果是多个单词,习惯使用点分隔。如:jdbc.driver

         b)  value值不支持中文,如果需要使用非英文字符,需要使用Unicode编码转换

    创建配置文件

    在项目的根目录(建议在src)下,创建文件,输入“db.properties”文件名

    文件内容如下:

       driver=com.mysql.jdbc.Driver

       url=jdbc:mysql://localhost:3306/mydb?characterEncoding=utf-8

       username=root

       password=123456

    配置DButil文件

    driver=com.mysql.jdbc.Driver
    url=jdbc:mysql://localhost:3306/demo_jdbc?characterEncoding=utf-8
    username=root
    password=123456
    package com.oracle.demo06;
    
    import java.io.InputStream;
    import java.sql.Connection;
    import java.sql.DriverManager;
    import java.sql.ResultSet;
    import java.sql.SQLException;
    import java.sql.Statement;
    import java.util.Properties;
    
    public class DButil {
    	private DButil() {
    	}
    
    	public static Connection getConn() {
    		try {
    			InputStream in = DButil.class.getClassLoader().getResourceAsStream("db.properties");
    			Properties pro = new Properties();
    			pro.load(in);
    			String url = pro.getProperty("url");
    			String username = pro.getProperty("username");
    			String password = pro.getProperty("password");
    			String driver = pro.getProperty("driver");
    			Class.forName(driver);
    			// 获得连接
    			Connection conn = DriverManager.getConnection(url, username, password);
    			return conn;
    		} catch (Exception ex) {
    			throw new RuntimeException(ex + "数据库连接失败");
    		}
    	}
    
    	public static void close(Statement sta, Connection conn) {
    		if (sta != null) {
    			try {
    				sta.close();
    			} catch (SQLException ex) {
    			}
    		}
    		if (conn != null) {
    			try {
    				conn.close();
    			} catch (SQLException ex) {
    			}
    		}
    	}
    
    	public static void close(ResultSet rs, Statement sta, Connection conn) {
    		if (rs != null) {
    			try {
    				rs.close();
    			} catch (SQLException ex) {
    			}
    		}
    		close(sta, conn);
    	}
    
    }
    

    测试DButil(一定要记得导入数据库驱动包)

    package com.oracle.demo06;
    
    import java.sql.Connection;
    import java.sql.PreparedStatement;
    import java.sql.ResultSet;
    import java.sql.SQLException;
    
    public class Test {
    	public static void main(String[] args) throws SQLException {
            Connection conn=DButil.getConn();
            PreparedStatement pst=conn.prepareStatement("select * from sort");
            ResultSet rs=pst.executeQuery();
            while(rs.next()){
            	System.out.println(rs.getString("sname"));
            }
    	}
    }
    

      

      

  • 相关阅读:
    SQL Server, Timeout expired.all pooled connections were in use and max pool size was reached
    javascript 事件调用顺序
    Best Practices for Speeding Up Your Web Site
    C语言程序设计 使用VC6绿色版
    破解SQL Prompt 3.9的几步操作
    Master page Path (MasterPage 路径)
    几个小型数据库的比较
    CSS+DIV 完美实现垂直居中的方法
    由Response.Redirect引发的"Thread was being aborted. "异常的处理方法
    Adsutil.vbs 在脚本攻击中的妙用
  • 原文地址:https://www.cnblogs.com/Java-125/p/8990280.html
Copyright © 2011-2022 走看看