不使用Spring,怎样能在Listener启动的Thread中获取web目录,还真不完全确定。其实我觉得实际代码也很简单。
就是基于普通的listener,然后在listener中获取web目录并放到JRE全局变量中。
但使用Spring,就可以用一种比较优雅的方式来获取了。
在web.xml中的<web-app>节点内加入:
<context-param> <param-name>webAppRootKey</param-name> <param-value>tansungWeb.root</param-value> </context-param> <listener> <listener-class>org.springframework.web.util.WebAppRootListener</listener-class> </listener>
然后在普通的Java类中(不是action中),就可以通过System.getProperty("tansungWeb.root")获取了web根目录了。
然后再拼凑路径的时候,最好不要直接使用/或者\,最好使用File.separatorChar
参考:http://blog.csdn.net/hellostory/archive/2010/12/30/6106930.aspx
这样的做法,适用于Spring配置中启动的线程需要获取web目录。例如删除临时文件的线程,定时发送邮件的线程。
相关推荐
在这个主题中,我们将深入探讨如何使用ServletContext来获取JavaWeb应用的根目录下的文件路径,这对于读取、写入或操作静态资源如图片、CSS、JavaScript文件等非常有用。 首先,了解ServletContext接口。它在javax....
- `<listener>`:定义了一个`ContextLoaderListener`监听器,当Web应用启动时,它会读取`context-param`中指定的配置文件,初始化Spring应用上下文。 4. **创建`applicationContext.xml`**: 这是Spring的配置...
在Servlet容器(如Tomcat)中,`webroot`是应用程序的根目录,可以通过`ServletContext`对象获取。首先,我们需要在Servlet或者Filter中获取`ServletContext`实例: ```java ServletContext context = ...
2. 运行应用:在项目根目录下,使用`spring run application.java`命令可以运行Java源代码。 3. 交互式模式:输入`spring`进入CLI的交互模式,可以尝试编写和运行简单的Spring Boot命令。 Spring Boot CLI的核心...
在Servlet中,可以通过`WebApplicationContext`接口的`getServletContext().getAttribute(WebApplicationContext.ROOT_WEB_APPLICATION_CONTEXT_ATTRIBUTE)`方法获取到Spring的根应用上下文,从而得到Service对象...
首先,你需要在项目根目录下创建一个`pom.xml`文件,这是Maven的配置中心。在`<dependencies>`标签中,列出所有Spring相关的模块和其他必要的库,如Spring Core、Spring Web、Spring Data等。每个依赖项都有一个唯一...
7. **项目结构**:一个标准的Web项目结构通常包括`src`(源代码目录)、`WebRoot`(Web应用根目录),其中`WebRoot`下包含了HTML、CSS、JavaScript文件以及Web应用所需的其他资源。 8. **Struts集成**:Struts是MVC...
在多数情况下,这应该指向Web应用的根目录。 - `contentRoot`:定义了Flex应用中静态资源的根目录,比如图片、样式表等。如果未明确指定,则默认为Flex应用的根目录。 **解决方法:** - 确保`rootUrl`正确指向了Web...
Eclipse的Web项目根目录是`WebContent`,而MyEclipse通常是`WebRoot`。 - **Tomcat**:推荐使用Tomcat 6,启动时应确保控制台无错误输出,显示服务器正常启动的信息。 - **Eclipse/MyEclipse设置**:确保IDE中的...
4. **src/main/webapp**: Web应用程序的根目录,包含静态资源(如HTML、CSS、JavaScript)、Web-INF目录(存放web.xml配置文件)。 5. **web.xml**: Web应用程序的部署描述符,配置了Spring MVC的前端控制器...
文件名称列表中提到了"java web project",这很可能是指整个项目源代码的根目录,其中可能包含以下子目录和文件: 1. `src/main/java`:Java源代码,包括控制器、服务层、DAO(数据访问对象)层以及模型类。 2. `...
- `src/main/webapp`: Web应用的根目录,包含`WEB-INF`下的`web.xml`(Web应用的部署描述符)、`velocity.properties`(Velocity的配置)以及其他静态资源和视图模板。 通过这个项目,开发者可以学习到如何配置...
1. **开发目录的设定**:创建一个项目根目录`springapp`,并在其下建立`src`和`war`子目录。`src`目录用于存储Java源代码,而`war`目录则用于存放最终会被打包成WAR文件的所有资源,包括JSP文件、配置文件等。 2. *...
本文将深入解析Java Web中所有路径问题的解决方法,涵盖Servlet、Action、Controller、Filter、Listener等关键组件的路径获取技巧,以及Spring框架下Web应用根目录的获取策略。 ### 一、理解Java Web中的路径类型 ...
- `DebitNoteAction.class.getResource("/")`:获取当前类路径的根目录,输出结果类似于`file:/D:/eclipse/springTest/WebRoot/WEB-INF/classes/`。 - 这种方式适用于获取类路径的根目录。 3. **使用线程上下文类...
3. `src/main/webapp`: 这是Web应用的根目录,包含了Web应用的静态资源(如HTML、CSS、JavaScript)、视图解析路径(如JSP文件)以及WEB-INF目录,其中`web.xml`是Web应用的部署描述符。 项目中可能的架构设计如下...
- **根目录下的链接**:如果需要链接到Web应用根目录下的文件,可以使用绝对路径`<a href="/road/dir2/b.jsp">b.jsp</a>`,这里的`/`指向Web应用的根目录。 ### Servlet中的路径表示 Servlet中的路径表示与JSP有所...
由于内容量较大,我们将按照目录给出的知识点进行详细解读: 1、不同版本的SpringFramework有哪些主要功能? Spring Framework是一个开源的Java平台,它提供了全面的编程和配置模型,适用于企业级应用程序的开发。...
`webapp`目录则是Web应用的根目录,其中`WEB-INF`目录下的`web.xml`配置文件用于定义Servlet容器的配置,而`WEB-INF/views`目录通常存放JSP或Thymeleaf等视图模板,这些模板会被Spring MVC的视图解析器用来渲染响应...