Java的特殊文件和日志技术
Properties
xxx.properties文件中存储的都是一系列的键值对形式的数据,格式为
键 = 值,它在Java程序中的操作,本质上是一个特殊的Map集合,我们可以通过对Properties集合的操作向文件写入和读取一些数据
- 构造器
Properties properties = new Properties()
- 读取文件数据特殊的方法
1.load(字节输入流/字符输入流) 通过字节/字符输入流,读取Properties文件中键值对的数据
注意:操作文件之前一定要检查本项目的字符集一样,具体操作如下
File -> Settings -> Editor -> File Encodings

代码及其演示
public class Demo01 {
public static void main(String[] args) throws Exception {
Properties properties = new Properties();
// 通过字节(字符)输入流,读取Properties文件中的键值对数据
properties.load(new FileReader("D:\\IDEA\\idea\\Boke\\JavaSE\\src\\特殊文件_日志技术\\file\\test.properties"));
Set<String> keys = properties.stringPropertyNames();
for (String key : keys) {
System.out.println(key+" = "+properties.getProperty(key));
}
}
}

getProperty(String key)根据键获取值(同Map集合中的get方法)
注意:Properties集合对象没有用load()方法开启读取文件的话无法使用此方法读取文件中键对应的值
public class Demo01 {
public static void main(String[] args) throws Exception {
Properties properties = new Properties();
// 通过字节(字符)输入流,读取Properties文件中的键值对数据
properties.load(new FileReader("D:\\IDEA\\idea\\Boke\\JavaSE\\src\\特殊文件_日志技术\\file\\test.properties"));
String name = properties.getProperty("name");
System.out.println(name);
}
}
Set<String> stringPropertyNames()获取集合中全部键的集合(同Map集合中的keySet方法)
注意:Properties集合对象没有用load()方法开启读取文件的话无法使用此方法读取文件中键对应的值
public class Demo01 {
public static void main(String[] args) throws Exception {
Properties properties = new Properties();
// 通过字节(字符)输入流,读取Properties文件中的键值对数据
properties.load(new FileReader("D:\\IDEA\\idea\\Boke\\JavaSE\\src\\特殊文件_日志技术\\file\\test.properties"));
Set<String> keys = properties.stringPropertyNames();
System.out.println(keys);
}
}
- 写入Properties文件特殊的方法
setProperty(String key,String value)向集合中添加键值对数据store(OutputStream/Writer ,String comments)把键值对数据通过字节/字符输出流写入到指定路径的Properties文件中


public class Demo02 {
public static void main(String[] args) throws Exception {
Properties properties = new Properties();
// 通过字节/字符输出流把键值对数据写入到Properties文件中
properties.setProperty("likeFood","烧鸡");
properties.setProperty("tool","赤兔马");
properties.store(new FileWriter("D:\\IDEA\\idea\\Boke\\JavaSE\\src\\特殊文件_日志技术\\file\\test.properties",true),
"三国");
}
}
XML
XML文件是一种特殊的文件,我们一般用来做项目的配置文件,如SpringBoot项目中的
application.XML文件,里面配置一些我们项目的所需要的依赖、第三方接口所需的登录账号,如阿里云的oss云服务存储秘钥、七牛云存储的账号密码等等,还有就是SpringBoot项目中所用的Mybatis框架,框架的XML文件映射也是使用到XML文件,所以XML文件对于我们Java开发是密不可分的
以下是Mybatis框架的XML文件映射展示

- XML文件的特点
- XML中的"<标签名>"称为一个标签或一个元素,一般都是成对出现的
- XML中的标签可以自己定义,所以XML文件也叫做可扩展标记语言,但前提是必须正确的嵌套
- XML文件中只能存在一个根标签
- XML中的标签可以拥有属性
- 如果一个文件中放置的是XML格式的数据,这个文件就是XML文件,后缀一般要写成.xml
- XML的语法规则
- XML文件的后缀名为:.xml,文档声明必须是第一行
- 注释格式:<!-注释内容->
- 常用的特殊字符转义符号
| 转义字符 | 作用 |
|---|---|
| < | 小于号 |
| > | 大于号 |
| & | &与 |
| ' | 单引号 |
| " | 双引号 |
- 关于XML文件原生的解析和写入我们这里不做过多介绍,因为有现成封装的API框架可以直接解析和写入XML数据
日志技术
什么是日志呢?日志简单点来说就是日记,只不过这个日记是系统来帮我们来记录,日志在一个项目中几乎是必备的技术,它可以记录什么时候什么人做了什么事,也可以记录我们使用系统用户的喜好,这样更方便我们对系统的优化,最重要的一点是,当我们开发的系统崩溃时,我们可以查询日志来排查和分析bug,日志通常是一个文件,不过我们开发中一般把日志记录在数据库中,使用注解
@Sl4fj开启日志的记录
这里所讲述的日志仅仅作为了解即可,后面我们会用到注解来真正的使用日志技术
- 日志级别
| 日志 | 作用 | 级别 |
|---|---|---|
| trace | 追踪,指明程序运行的轨迹 | 1(最低级别) |
| debug | 调试,实际应用中一般将其作为最低级别,而trace则使用得更少 | 2 |
| info | 输出重要的运行信息,数据连接、网络连接、IO操作等,使用较多 | 3 |
| warn | 警告信息,可能会发生的问题,使用较多 | 4 |
| error | 错误信息,使用较多 | 5(最高级别) |
本文介绍了Java中Properties文件的使用,包括读写操作和XML日志技术的基础概念,以及XML文件在配置文件中的应用,同时提及了日志的作用和级别划分。
1213

被折叠的 条评论
为什么被折叠?



