zoukankan      html  css  js  c++  java
  • Properties类

    1特点

    1Hashtable的子类,map集合中的方法都可以用。

    2、该集合没有泛型。键值都是字符串。

    3、它是一个可以持久化的属性集。键值可以存储到集合中,也可以存储到持久化的设备(硬盘、U盘、光盘)上。键值的来源也可以是持久化的设备。

    4、有和流技术相结合的方法。

    2方法

    例:当做集合用

    import java.io.IOException;
    import java.util.Properties;
    import java.util.Set;
    
    public class Test {
    	public static void main(String[] args) throws IOException {
    		Properties pro=new Properties();
    		//往集合中存储键值对
    		pro.setProperty("b","1");
    		pro.setProperty("a", "2");
    		//取值
    		System.out.println(pro.getProperty("a"));
    		Set<String> set=pro.stringPropertyNames(); //相当于keySet方法
    		for(String s:set){
    			System.out.println(s+":"+pro.getProperty(s));
    		}
    	}
    }
    

     

    这里面有三个方法,但不大常用。因为map更好用。

    3常用方法

    1建一个demo.properties的文件,并输入以下内容(注意不要加额外的符号)

     

    import java.io.FileReader;
    import java.io.IOException;
    import java.util.Properties;
    
    public class Test {
    	public static void main(String[] args) throws IOException {
    		Properties pro=new Properties();
    		FileReader fr=new FileReader("E:\zyx\java\demo.properties");
    		//从文件中读取键值对
    		pro.load(fr);
    		System.out.println(pro);
    	}
    }
    

    例2

    import java.io.FileOutputStream;
    import java.io.IOException;
    import java.util.Properties;
    
    public class Test {
    	public static void main(String[] args) throws IOException {
    		Properties pro=new Properties();
    		pro.setProperty("name2", "lisi");
    		pro.setProperty("hobby2", "football");
    		pro.setProperty("sex2", "man");
    		pro.setProperty("sex2", "woman");
    		//明确目的地
    		FileOutputStream fos=new FileOutputStream("E:\zyx\java\demo.properties",true);
    		pro.store(fos,"this is a person information");
    	}
    }
    

    注意:

    描述只能是英文或空串

    不能存重复的键

    4应用:jdbc工具类中

    如果需要连接多个数据库,那么JDBCUtils.java这个工具类需要修改。那么可以建一个properties文件,把配置参数写进去。再读这个文件就方便许多。

    例:

    在项目中建一个pro.properties文件:

     

    然后工具类连接数据库方法修改为:

  • 相关阅读:
    Windows搭建SkyWalking8.3环境进行JAVA应用性能监控及入门示例(使用Mysql持久化)
    使用JMeter进行压力测试
    IDEA2020.1使用LeetCode插件运行并调试本地样例
    centos7使用Minikube“快速搭建“出Kubernetes本地实验环境(踩坑集锦及解决方案)
    事务的隔离级别与所带来的问题
    深入理解HashMap第一篇
    LoadRunner 与浏览器兼容性
    互联网产品接入支付功能如何测试?
    基于AMF协议的Flex应用程序的性能测试
    centos+mono+nginx+jexus 搭建linux下c#运行环境测试
  • 原文地址:https://www.cnblogs.com/hzhjxx/p/10205805.html
Copyright © 2011-2022 走看看