神级管家txt下载请看:在Java代码(非JSP及Action,Servlet,Controller)中获得WebRoot的物理路径
来源:百度文库 编辑:中财网 时间:2024/04/29 16:00:42
在开发Web方面的应用时, 经常需要获取 服务器中当前WebRoot的物理路径
如果是Servlet , Action , Controller, 或则Filter , Listener , 拦截器等相关类时, 我们只需要获得ServletContext, 然后通过ServletContext.getRealPath("/")来获取当前应用在服务器上的物理地址
如果在类中取不到ServletContext时, 有两种方式可以做到
1) 利用Java的类加载机制 调用 XXX.class.getClassLoader().getResource(""); 方法来获取到ClassPath , 然后处理获得WebRoot目录
这种方式只能是该class在WebRoot/WEB-INF/classes下才能生效, 如果该class被打包到一个jar文件中, 则该方法失效。这时就应该用下面一种方式
2) spring框架的思路, 在WEB-INF/web.xml中 , 创建一个webAppRootKey的param, 指定一个值(默认为webapp.root)作为键值, 然后通过Listener , 或者Filter , 或者Servlet 执行String webAppRootKey = getServletContext().getRealPath("/"); 并将webAppRootKey对应的webapp.root 分别作为Key , Value写到System Properties系统属性中。之后在程序中通过System.getProperty("webapp.root")来获得WebRoot的物理路径
根据第二种的思路,我们还可以再扩展一下。不过对于在部署在一台服务器中的应用来说,已经足够了。
如果是Servlet , Action , Controller, 或则Filter , Listener , 拦截器等相关类时, 我们只需要获得ServletContext, 然后通过ServletContext.getRealPath("/")来获取当前应用在服务器上的物理地址
如果在类中取不到ServletContext时, 有两种方式可以做到
1) 利用Java的类加载机制 调用 XXX.class.getClassLoader().getResource(""); 方法来获取到ClassPath , 然后处理获得WebRoot目录
这种方式只能是该class在WebRoot/WEB-INF/classes下才能生效, 如果该class被打包到一个jar文件中, 则该方法失效。这时就应该用下面一种方式
2) spring框架的思路, 在WEB-INF/web.xml中 , 创建一个webAppRootKey的param, 指定一个值(默认为webapp.root)作为键值, 然后通过Listener , 或者Filter , 或者Servlet 执行String webAppRootKey = getServletContext().getRealPath("/"); 并将webAppRootKey对应的webapp.root 分别作为Key , Value写到System Properties系统属性中。之后在程序中通过System.getProperty("webapp.root")来获得WebRoot的物理路径
根据第二种的思路,我们还可以再扩展一下。不过对于在部署在一台服务器中的应用来说,已经足够了。
帮忙看 下这个JSP提示错误是什么意思,原因在哪?下边附有java文件和JSP代码
java 代码中间能使用jsp标签吗?怎么使用?
java jsp
flash编程,action代码
如何用java 编写论坛及代码
在jsp中怎样使用java的import java.util.*;?
jsp代码在dreamweaver的用法
在JSP中,我如何在表单的action中指定跳转页面的同时设定一个session?
jsp,jsp网页计数器代码?
jsp,jsp网页计数器代码?
在深圳搞java/jsp月薪能达到多少?
如何将JSP+JAVA 源码在ECLIPSE中打开?
在 学Java 和JSP 之 前要先精通什么 那 .?
怎样在java中建立一个helloworld程序,要有建立工程及代码以及调试,编译的全过程
Java JSP高手请进
Java JSP高手请进
关于java jsp asp
java,jsp怎么准备?
java与jsp
jsp vb.net java
如何学习JAVA JSP
JAVA/JSP问题
action键在哪
在 java 中如何嵌入 Fortran 代码