day1 java基础回顾- Properties类与配置文件
Properties配置文件说明
Properties类对应.properties文件。文件内容是键值对,键值对之间使用"="或空格隔开。开头是"#"的表示注释
Properties类在加载.properties文件时使用的iso8859-1的编码。所以这个文件中的中文要特殊处理:如果这个配置文件中有中文就必须要进行转义,使用native2ascii.exe命令操作:
native2ascii d:/my.properties d:/my2.properties
使用Properties类中的load(InputStream) 方法可以加载配置文件,使用其中的store(OutputStream) 方法可以保存配置到指定文件。
更多的信息可以看Properties类的API文档。
加载配置文件
 public static void testLoadProperties() throws Exception {
     Properties properties = new Properties();
     InputStream in = new FileInputStream("E:/itcast/config.properties");
     properties.load(in); // 加载
     in.close();
     System.out.println(properties);
 }
写配置文件
 public static void testStoreProperties() throws Exception {
     // 准备配置信息
     Properties properties = new Properties();
     properties.setProperty("name", "李四");
     properties.setProperty("age", "20");
     // 准备
     OutputStream out = new FileOutputStream("d:/my.properties");
     String comments = "这是我的配置文件";
     // 写出去
     properties.store(out, comments);
     out.close();
 }
使用Properties类
 public class DBUtil {
     static Properties properties = new Properties();
     static{
         try {
             Class clazz = DBUtil.class;
             InputStreamReader fileReader =
             new InputStreamReader(clazz.getResourceAsStream("/db.properties"));
             properties.load(fileReader);
         } catch (IOException e) {
             e.printStackTrace();
         }
     }
     public static String getUserName(){
         String userName =properties.getProperty("userName");
         return userName;
     }
     public static String getPassword(){
         return    properties.getProperty("password");
     }
     public static void main(String[] args) {
         System.out.println("用户名:"+ getUserName());
         System.out.println("密码: "+  getPassword());
     }
 }
day1 java基础回顾- Properties类与配置文件的更多相关文章
- JAVA基础之Properties类、序列化流及打印流、commons-IO
		
个人理解: Properties类是个存储String类型的键值对的集合类,可以用其存储一些关键的账号密码什么的,同时后面的注释可以很好的帮助理解,但是需要注意的是其文件中不能出现其他的符号:序列化与 ...
 - day1 java基础回顾-	文件路径
		
绝对路径 以根目录或某盘符开头的路径(或者说完整的路径) 例如: l c:/a.txt (Windows操作系统中) l c:/xxx/a.txt (Windows操作系统中) l /var/x ...
 - day1 java基础回顾-内省
		
为什么要学内省? 开发框架时,经常需要使用java对象的属性来封装程序的数据,每次都使用反射技术完成此类操作过于麻烦,所以sun公司开发了一套API,专门用于操作java对象的属性. 内省是用于操作j ...
 - day1 java基础回顾-泛型
		
2.泛型(Generic) 当集合中存储的对象类型不同时,那么会导致程序在运行的时候的转型异常 1 import java.util.ArrayList; 2 import java.util.Ite ...
 - day1 java基础回顾-Junit单元测试
		
Junit单元测试框架的基本使用 一.搭建环境: 导入junit.jar包(junit4) 二.写测试类: 0,一般一个类对应一个测试类. 1,测试类与被测试类最好是放到同一个包中(可以是不同的源文件 ...
 - day1 java基础回顾-多线程
		
启动线程方式 方式一:继承Thread. 1. 自定义一个类继承Thread类. 2. 重写Thread的run方法,把自定义线程的任务代码定义在run方法上. 3. 创建Thread子类的对象,并且 ...
 - day1 java基础回顾-IO流
		
IO流的分类 注:这几个类都是抽象类. IO解决问题: 解决设备与设备之间 的数据传输问题. 比如: 硬盘--->内存 内存----->硬盘 字节流: 输入字节流:---------| I ...
 - day1 java基础回顾-集合
		
1.集合 1.1 集合的类型与各自的特性 ---|Collection: 单列集合 ---|List: 有存储顺序, 可重复 ---|ArrayList: 数组实现, 查找快, 增删慢 由于是数组实现 ...
 - Java基础 使用Properties类
 
随机推荐
- idea创建普通java项目以及maven创建项目过程(转)
			
1. idea创建一个普通项目流程 http://blog.csdn.net/testcs_dn/article/details/52303941 2. idea创建maven项目流程 http:// ...
 - 九度OJ 1178:复数集合 (插入排序)
			
时间限制:1 秒 内存限制:32 兆 特殊判题:否 提交:8393 解决:1551 题目描述: 一个复数(x+iy)集合,两种操作作用在该集合上: 1.Pop 表示读出集合中复数模值最大的那个复数,如 ...
 - c#中多线程写DataGridView出现滚动栏导致程序卡死(无响应)的解决的方法
			
版权声明:本文为博主原创文章,未经博主同意不得转载. https://blog.csdn.net/u013529927/article/details/24225567 由于写的程序涉及到多线程维护一 ...
 - Docker实践中遇到的坑
			
1.docker容器中后台运行退出执行curl+p+q,再次进入执行命令docker attach 容器id. 2.容器中exit退出后,还原方法为docker ps -a 查看历史运行容器,dock ...
 - fragment 动态加载
			
/** * 测试使用Fragment(动态使用) 1. * 使用FragmentManager和FragmentTransaction动态使用一个Fragment 2. 方式: * add(viewI ...
 - Java多线程系列  基础篇10 wait/notify/sleep/yield/join
			
1.Object类中的wait()/notify()/notifyAll() wait(): 让当前线程处于Waiting状态并释放掉持有的对象锁,直到其他线程调用此对象的线程notify()/not ...
 - Linux桥接网络配置
			
在虚拟机网络配置中,选择桥接的方式.然后进入linux进行设置. 编辑 vim /etc/sysconfig/network-scripts/ifcfg-eth0 DEVICE=eth0 BOOTPR ...
 - Exception of type 'System.OutOfMemoryException' was thrown
			
最近刚换了服务器,开始测试的时候未发现什么问题,可是一旦同一时间段操作的人比较多的时候,就会抛出如下错误: Server Error in '/' Application. Exception of ...
 - hadoop —— MapReduce例子 (求平均值)
			
参考:http://eric-gcm.iteye.com/blog/1807468 math.txt: 张三 88 李四 99 王五 66 赵六 77 china.txt: 张三 78 李四 89 王 ...
 - Buffer的数据存取
			
缓冲区 存放要读取的数据 缓冲区 和 通道 配合使用 一个用于特定基本数据类行的容器.有java.nio包定义的,所有缓冲区都是抽象类Buffer的子类. Java NIO中的Buffer主要用于与N ...