读取web项目中的配置文件

**注意:**javaweb中一些配置文件的读取,一般都保存在src目录下,当配置文件第一次创建的时候会在bin目录下生成一个相同的文件,如果手动删除了bin目录下生成的配置文件,则不会再次生成,必须重新再src目录下创建才会再次生成。项目发布到tomcat中之后,会在WEB-INF下的classes下生成配置文件。

下面是两种读取配置文件的方法:

1、使用ServletContext对象中的方法读取

**InputStream getResourceAsStream(String filepath)**获取配置文件的输入流。

**String getRealPath(String path)**获取配置文件的绝对路径。

2、使用类加载器读取配置文件

**getClassLoader()**获取类加载器
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.InputStream;

import javax.servlet.ServletContext;

/**
 * 读取web项目下的配置文件
 * @author zhw
 */
public class ReadFileUtils {

    private ReadFileUtils() {}

    /**
     * 类的加载器读取web项目下的配置文件
     * @param fileName 文件名
     * @return InputStream
     */
    public static InputStream readFile(String fileName) {
        return ReadFileUtils.class.getClassLoader().getResourceAsStream(fileName);
    }

    /**
     * 通过getResourceAsStream()方法获取对应文件名的字节输入流
     * @param context ServletContext对象
     * @param fileName  文件名
     * @return  InputStream
     */
    public static InputStream readFile(ServletContext context,String fileName){
        return context.getResourceAsStream("/WEB-INF/classes/"+fileName);
    }

    /**
     * 通过getRealPath()方法获取对应文件名的绝对路径,在获取字节输入流
     * @param context ServletContext对象
     * @param fileName 文件名
     * @return InputStream
     * @throws FileNotFoundException 
     */
    public static InputStream readRealPathFile(ServletContext context,String fileName) throws FileNotFoundException{
        String realPath = context.getRealPath("/WEB-INF/classes/"+fileName);
        return new FileInputStream(realPath);
    }

}
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值