Java读取WEB应用中的资源_JAVA_编程开发_程序员俱乐部

中国优秀的程序员网站程序员频道CXYCLUB技术地图
热搜:
更多>>
 
您所在的位置: 程序员俱乐部 > 编程开发 > JAVA > Java读取WEB应用中的资源

Java读取WEB应用中的资源

 2011/12/28 17:55:40  o_oand0_0  http://o-oand0-0.iteye.com  我要评论(0)
  • 摘要:问题:前几天,碰到了需要从web应用读取文件内容的问题。一般的,配置文件都放在工程src目录下,那样读起来也很方便,对于大多数人都是这种习惯。但这次偏偏就放在WebContent目录下的子目录里,虽然郁闷,问题还是要解决的。因此在此聊记一笔。解决方法:XXX.class.getResourceAsStream(Path)获取流对象,要明白部署后目录的变化实例:importjava.io.IOException;importjava.io.InputStream;importjavax
  • 标签:Web Java 应用 资源

?

问题:前几天,碰到了需要从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();
					}
				}
			}
		}
	}

}
? 工程目录结构图:
发表评论
用户名: 匿名