J2EE之ServletContext读取资源文件

J2EE之ServletContext读取资源文件

大家好,又见面了,我是全栈君。

ServletContext读取资源文件内容的方式有两种:

方法1.

public void doGet(HttpServletRequest request, HttpServletResponse response)
			throws ServletException, IOException {

	InputStream in = this.getServletContext().getResourceAsStream("/WEB-INF/classes/data.properties");
	Properties pros = new Properties();
	pros.load(in);
		
	String username = pros.getProperty("username");
	String password = pros.getProperty("password");
		
	System.out.println("username = " + username);
	System.out.println("password = " + password);
}


J2EE之ServletContext读取资源文件

这里须要注意的是data.properties文件的位置在Myeclipse的src文件夹下,为啥getResourceAsStream方法传入的參数确实”/WEB-INF/classes/data.properties”

这是由于这些代码有webserver运行,当项目公布以后。data.properties文件就会被放到tomcat安装文件所在目录下。

如图:

J2EE之ServletContext读取资源文件J2EE之ServletContext读取资源文件J2EE之ServletContext读取资源文件

所以这里传入參数就解释清楚了。

方法2

public void doGet(HttpServletRequest request, HttpServletResponse response)
			throws ServletException, IOException {

	String path = this.getServletContext().getRealPath("/WEB-INF/classes/data.properties");
	FileInputStream in = new FileInputStream(path);
	Properties pros = new Properties();
	pros.load(in);
		
		
	String username = pros.getProperty("username");
	String password = pros.getProperty("password");
		
	System.out.println("username = " + username);
	System.out.println("password = " + password);
}

这里首先通过getRealPath方法获取data.properties文件的绝对路径,然后通过FileInputStream获取文件流。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/115509.html原文链接:https://javaforall.net

赞 (0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • java连接mysql数据库的步骤(访问数据库的步骤)

    Java连接MySQL数据库步骤声明,只推荐你看代码学会我的步骤,逻辑,还有用的所有方法第一,​ 安装mysql数据库配置(https://www.jianshu.com/p/ea4accd7afb4),安装还有配置教程,按照步骤来肯定没错,里面是win10的mysql解压版安装教程,设置账号密码是一定要注意:账号一般为root,密码一般为123456,如果你要更改的话一定要记住,因为…

    2022年4月15日
  • 史上最全的中高级JAVA工程师-面试题汇总

    史上最全的中高级JAVA工程师-面试题汇总史上最全的java工程师面试题汇总,纯个人总结,精准无误。适合中高级JAVA工程师。

    2022年6月13日
  • 借助Unity AR Foundation构建跨平台AR应用

    借助Unity AR Foundation构建跨平台AR应用

    2021年6月19日
  • 关系数据模型表示采用_数据库常见的数据模型

    关系数据模型表示采用_数据库常见的数据模型关系模型是目前最常用地数据模型之一。关系型数据库系统采用关系模型作为数据的组织方式,在关系模型中用表格结构表达实体集,以及实体集之间的联系,其最大特点是描述的一致性。关系模型是由若干个关系模式组成的集合。关系模式可记为R(A1,A2,A3,…,An),其中,R表示关系名,A1,A2,A3,…,An表示属性名。一个关系模式相当于一个记录型,对应与程序设计语言中类型定义的概念。关系是一个实例,也是一张…

    2022年10月30日
  • DropDownList详解

    DropDownList详解在.net中,DropDownList和ListBox是最常用的两个LIST控件,我的学习笔记也从这里开始吧!一、DropDownList命名空间:System.Web.UI.WebControls程序集:System.Web(在system.web.dll中)一些常用的属性:DataMember当数据源包含多个不同的数据项列表时,获取或设置数据绑定控件绑定到的数据列表的

    2022年7月18日
  • 宿主机和虚拟机的网络_vmware独享宿主机网卡

    宿主机和虚拟机的网络_vmware独享宿主机网卡问题描述:宿主机为win10家庭版,虚拟机为Centos7,上午还可以正常的进行互通,中间应该是弹出来一个外设的接入通知,其他的没有什么明显的操作,下午就不能互相访问了,原因不明。解决方法:首先检查虚拟机的网络配置,分为如下几步:1、编辑–>虚拟机网络编辑器,选择桥接模式,同时选择要桥接的网络:这个网路需要和宿主机中的网络保持一致,如果宿主机中存在多个网络连接,比如无线连接和有线连接,那就根据实际需要,看虚拟机需要连接到哪个网络中,就对应选择。选择完之后,确

    2022年8月21日

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号