zoukankan      html  css  js  c++  java
  • 关于读取properties文件的方法

    第一种方法是使用InputStream字节流的方式,读取src下的properties文件,两种方式我都是以获取数据库的连接来举例子

    先贴出properties文件这是数据库的连接配置,这个文件在我项目工厂下的config包中路径为src/config/c3p0.properties

    jdbc_driver=com.mysql.jdbc.Driver
    jdbc_url=jdbc:mysql://localhost:3306/day101
    jdbc_password=123456
    jdbc_username=root
    
    private static String jdbcDriver = null;
    	private static String jdbcUrl = null;
    	private static String jdbcUsername = null;
    	private static String jdbcPassword = null;
    	static{
    		try {
    			Properties properties = new Properties();
    			//这里用了类加载器,加载类路径下的包为config下的c3p0.properties文件
    			InputStream inputStream = JdbcUtil.class.getClassLoader().getResourceAsStream("config/c3p0.properties");
    			//加载InputStream流
    			properties.load(inputStream);
    			//从properties文件中以key/value的方式读取配置数据
    			jdbcDriver = properties.getProperty("jdbc_driver");
    			jdbcUrl = properties.getProperty("jdbc_url");
    			jdbcUsername = properties.getProperty("jdbc_username");
    			jdbcPassword = properties.getProperty("jdbc_password");
    		} catch (IOException e) {
    			e.printStackTrace();
    		}
    	}
    	
    	public static Connection getConnection(){
    		try {
    			Class.forName(jdbcDriver);
    			return DriverManager.getConnection(jdbcUrl,jdbcUsername,jdbcPassword);
    		} catch (Exception e) {
    			e.printStackTrace();
    		}
    		return null;
    	}
    	public static void main(String[] args){
    		System.out.println(getConnection());
    	}
    

    第二种方式是用java.util提供的一个类ResourceBundle来读取properties文件的键值对,这种方式短小精悍

    properties文件跟上面的第一种方式一样

    我直接贴代码

    private static String jdbcDriver = null;
    	private static String jdbcUrl = null;
    	private static String jdbcUsername = null;
    	private static String jdbcPassword = null;
    	static{
    		ResourceBundle bundle = ResourceBundle.getBundle("config/c3p0");
    		jdbcDriver = bundle.getString("jdbc_driver");
    		jdbcUrl = bundle.getString("jdbc_url");
    		jdbcUsername = bundle.getString("jdbc_username");
    		jdbcPassword = bundle.getString("jdbc_password");
    	}
    	public static Connection getConnection(){
    		try {
    			Class.forName(jdbcDriver);
    			return DriverManager.getConnection(jdbcUrl,jdbcUsername,jdbcPassword);
    		} catch (Exception e) {
    			e.printStackTrace();
    		}
    		return null;
    	}
    	public static void main(String[] args){
    		System.out.println(getConnection());
    	}
    

      

  • 相关阅读:
    这样的专家门诊
    CPU 知识介绍
    软考结束了!
    ubuntu环境配置eclipse+opencv
    2016年3月份总结
    点聚合功能基于ARCGIS RUNTIME SDK FOR ANDROID
    如何用java语言获取某个网页的源代码
    点聚合功能改良版本
    ARCGIS切图:TPK文件的空间参考为地理坐标系
    Java中的数据类型
  • 原文地址:https://www.cnblogs.com/tranquilityMan/p/11003293.html
Copyright © 2011-2022 走看看