问题:前几天,碰到了需要从web应用读取文件内容的问题。一般的,配置文件都放在工程src目录下,那样读起来也很方便,对于大多数人都是这种习惯。但这次偏偏就放在WebContent目录下的子目录里,虽然郁闷,问题还是要解决的。因此在此聊记一笔。
解决方法:XXX.class.getResourceAsStream(Path)获取流对象,要明白部署后目录的变化
实例:
import java.io.IOException;
import java.io.InputStream;
import javax.servlet.ServletContextEvent;
import javax.servlet.ServletContextListener;
public class MyListener implements ServletContextListener {
@Override
public void contextDestroyed(ServletContextEvent arg0) {
}
@Override
public void contextInitialized(ServletContextEvent event) {
//指定要读取的文件路径,此处的test.txt放在工程的web目录下面
InputStream is = MyListener.class.getResourceAsStream("/../../web/test.txt");
if(is!=null){
byte []bytes = new byte[1024];
try {
while(is.read(bytes)>0){
System.out.println(bytes.toString());
}
} catch (IOException e) {
e.printStackTrace();
}finally{
if(is!=null){
try {
is.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
}
}
}
工程目录结构图:
分享到:
相关推荐
Java读取WEB应用中的资源.pdf
ServletContext 读取 web 应用中的资源文件 在 Web 应用程序中,我们经常需要读取某些资源文件,如配置文件、图片等等。为了实现这一点,ServletContext 接口提供了一些方法来读取 web 应用中的资源文件,这些方法...
类装载器在Java Web应用中起着至关重要的角色,它负责加载应用中的类。在Tomcat中,类装载器有明确的层次结构,理解这个层次结构有助于避免类冲突和管理不同Web应用的类加载。通过`context.xml`配置文件,我们可以...
通过王红老师的《Java Web应用开发技术实用教程》,你不仅能够掌握Java Web开发的基础知识,还能了解到实际项目开发中的最佳实践。课件中的实例和练习将帮助你巩固所学,确保你在课堂之外也能独立进行学习和实践,...
在Java Web开发中,获取WEB-INF目录或者更广泛的WEBROOT(Web应用的根目录)的物理路径是一项常见的需求。这通常涉及到服务器环境变量、Servlet API的使用以及对Web应用部署结构的理解。以下将详细讲解如何在Java中...
对于Java Web应用来说,可以通过多种方式来进行性能优化,比如使用缓存技术减少数据库访问次数、使用异步处理提高响应速度、采用CDN加速静态资源加载等。 综上所述,Java Web开发涉及到许多关键技术点和实践技巧。...
通过在Java Web应用中简单集成,JavaMelody就能提供包括请求处理时间、SQL查询、内存使用、线程信息、异常跟踪等多种关键性能指标的可视化报告。 首先,JavaMelody的核心功能在于其丰富的监控指标。它能够监控HTTP...
WebAPI通常指的是Web应用程序提供的接口,允许客户端(如Java应用)发送HTTP请求并接收响应。本压缩包包含了相关工具和示例,方便开发者理解和实践Java调用WebAPI的方法。 首先,我们看到压缩包中包含了一个名为`...
Java Web应用开发是计算机科学领域中的一个重要组成部分,主要涉及使用Java技术来构建Web应用程序。这份文档,"Java Web应用开发 JavaWeb应用开发期末试卷B卷答案.doc",是一份复习和学习资料,涵盖了Java Web开发的...
总结来说,过滤器在Java Web开发中扮演着重要的角色,它不仅扩展了Servlet技术的功能,还提高了Web应用的灵活性和可维护性。开发者在掌握了过滤器的创建、配置及使用后,可以有效地解决实际开发过程中遇到的各种问题...
【Java Web接口开发】是Web应用程序开发中的一个重要环节,它允许不同的系统或客户端通过网络进行数据交互。在Java世界中,实现Web接口通常涉及到Servlet、JSP、Spring MVC或者RESTful API等技术。本示例"java web...
首先,Tomcat类装载器是Java Web应用程序的基础组成部分,负责加载并管理Web应用中的类。通过`context.xml`配置文件,我们可以设置资源,如邮件服务。例如,配置邮件服务时,可以在`context.xml`中定义一个名为`mail...
Java源码中的Web应用主要基于Servlet技术,Servlet是Java平台上的一个标准,用于构建动态Web应用程序。它允许服务器端处理HTTP请求并返回响应,极大地增强了Web应用的功能。Servlet API是Java EE的一部分,提供了...
OpenID 是一种去中心化的认证协议,旨在使用户更方便地访问 Java™ Web 应用程序中的资源。在本文中,我们将介绍 OpenID 认证规范,并指导读者如何将其应用于 Java 应用程序中,而不是手动实现 OpenID 认证规范。 ...
总结来说,使用Quartz和Struts Action框架,开发者可以方便地在Java Web应用中构建任务调度系统,优化后台任务的执行,提高系统的响应速度和资源利用率,从而提升整体的用户体验。无论是处理复杂的数据报表还是执行...
在构建Java应用程序的过程中,尤其是当我们要开发Web应用程序时,我们需要将桌面应用的交互方式扩展到网络环境中。在本文中,我们将探讨如何利用servlets来创建一个Web激活的Java应用程序,以此来处理Web请求并返回...
通过以上步骤,你可以在Java Web应用中轻松地读取并使用`webroot`下的属性文件。这有助于将敏感信息和配置细节与代码分离,提高代码的可维护性和灵活性。记住,始终确保正确处理资源和异常,以保持良好的编程实践。
2. **Java Web服务器与容器**:在Java Web应用中,服务器和容器是运行Web应用的环境。常见的Java Web服务器包括Apache Tomcat和Jetty等。容器可以视为运行Java Servlet和JavaServer Pages (JSP)的特殊Java虚拟机,...