`

JAVA Web项目下获取网站根目录及设定上传目录

    博客分类:
  • JAVA
 
阅读更多

    在JAVA Web编程和程中,我经常要用到网站根目录以设置文件的上传目录,下面这个类可以很好的实现相关的功能。这个类用静态成员变量,数据获取方便,省去许多不必要的操作。

import java.io.File;
import java.io.IOException;

public class ConstUtil {
	
	/**
	 * 网站运行的根目录
	 */
	public static String ROOT_PATH = getRootPath();
	
	/**
	 * 系统目录分隔符
	 */
	public static String PATH_DS = getDirectorySeparator();
	
	/**
	 * 网站上传根目录
	 * @return
	 */
	public static String UPLOAD_ROOT = getUploadRoot();

	private static String getRootPath() {
		// TODO Auto-generated method stub
		String root = Thread.currentThread().getContextClassLoader().getResource("").getPath();
		File file =  new File(root).getParentFile();
		return file.getParent();
	}
	
	
	private static String getDirectorySeparator() {
		// TODO Auto-generated method stub
		return File.separator;
	}

	/**
	 * 设置网站上传根目录
	 * @return
	 */
	private static String getUploadRoot() {
		// TODO Auto-generated method stub
		String uploadPath = getRootPath()+PATH_DS+"static"+PATH_DS+"uploads";
		File file = new File(uploadPath);
		//判断文件夹是否存在,如果不存在,创建之
		if ( !file.exists() && !file.isDirectory() ) {
			try {
				if ( file.mkdirs() ) {
					System.out.println("Write OK.");
				}else{
					System.out.println("目录创建失败。");
				}
			} catch(SecurityException e) {
				System.out.println("无法写入目录,相关信息:" + e.getMessage());
			}
		}
		return file.getPath();
	}

}

 

要获取时,只要引入该类,然后用以下方法即可:

//..省略Servlet 相关代码  
//网站根目录  
Stirng rootPath = ConstUtil.ROOT_PATH;  
//web项目上传根目录  
String uploadRoot = ConstUtil.UPLOAD_ROOT  
      
//...  

 

 

分享到:
评论

相关推荐

    用java web实现的在线模拟考试系统

    操作方法:一路点击下一步直至安装结束,在选择安装路径时推荐安装在根目录,例如C:\Tomcat 4.1; (2) 设置环境变量: 操作方法:在我的电脑属性中设置环境变量为:TOMCAT_HOME= C:\Tomcat 4.1; (3) 建立站点: ...

    《程序天下:J2EE整合详解与典型案例》光盘源码

    13.8.11 设定调查子项目实现类SetSurveyChildImpl.java 13.8.12 统计调查结果实现类SetSurveyChildCountImpl.java 13.9 编写网上调查系统的控制器类 13.9.1 登录控制器类LoginAction.java 13.9.2 注册控制器类...

    搞定J2EE:STRUTS+SPRING+HIBERNATE整合详解与典型案例 (2)

    13.8.11 设定调查子项目实现类SetSurveyChildImpl.java 13.8.12 统计调查结果实现类SetSurveyChildCountImpl.java 13.9 编写网上调查系统的控制器类 13.9.1 登录控制器类LoginAction.java 13.9.2 注册控制器类...

    搞定J2EE:STRUTS+SPRING+HIBERNATE整合详解与典型案例 (1)

    13.8.11 设定调查子项目实现类SetSurveyChildImpl.java 13.8.12 统计调查结果实现类SetSurveyChildCountImpl.java 13.9 编写网上调查系统的控制器类 13.9.1 登录控制器类LoginAction.java 13.9.2 注册控制器类...

    搞定J2EE:STRUTS+SPRING+HIBERNATE整合详解与典型案例 (3)

    13.8.11 设定调查子项目实现类SetSurveyChildImpl.java 13.8.12 统计调查结果实现类SetSurveyChildCountImpl.java 13.9 编写网上调查系统的控制器类 13.9.1 登录控制器类LoginAction.java 13.9.2 注册控制器类...

    jspsmart.jar包及帮助文档

    (同File类的saveAs方法的选项之值类似)SAVE_PHYSICAL指示组件将文件保存到以操作系统根目录为文件根目录的目录下,SAVE_VIRTUAL指示组件将文件保存到以Web应用程序根目录为文件根目录的目录下,而SAVE_AUTO则表示...

    精通 Hibernate:Java 对象持久化技术详解(第2版).part2

    第1章 Java应用分层架构及软件模型  1.1 应用程序的分层体系结构  1.1.1 区分物理层和逻辑层  1.1.2 软件层的特征  1.1.3 软件分层的优点  1.1.4 软件分层的缺点  1.1.5 Java应用的持久化层  1.2 软件的模型 ...

    java自动发邮件

    //WEB根目录 MailConfigManager manager = MailConfigManager.getInstance(); public MailSender() { } public void setAddress(String address) { this.address = address; } public void setPassword...

    pop:春天,angularjs 相同的项目

    流行音乐春天,angularjs 相同的项目你需要的东西基本 ... 在项目根目录中。 npm install npm run update-webdriver(启动量角器需要) 在eclipse的情况下,在gradle转换项目facet gradle > refresh All中设置web项目

    精通 Hibernate:Java 对象持久化技术详解(第2版).part4

    第1章 Java应用分层架构及软件模型  1.1 应用程序的分层体系结构  1.1.1 区分物理层和逻辑层  1.1.2 软件层的特征  1.1.3 软件分层的优点  1.1.4 软件分层的缺点  1.1.5 Java应用的持久化层  1.2 软件的模型 ...

    精通 Hibernate:Java 对象持久化技术详解(第2版).part3

    第1章 Java应用分层架构及软件模型  1.1 应用程序的分层体系结构  1.1.1 区分物理层和逻辑层  1.1.2 软件层的特征  1.1.3 软件分层的优点  1.1.4 软件分层的缺点  1.1.5 Java应用的持久化层  1.2 软件的模型 ...

    精通 Hibernate:Java 对象持久化技术详解(第2版).part1.rar

    第1章 Java应用分层架构及软件模型  1.1 应用程序的分层体系结构  1.1.1 区分物理层和逻辑层  1.1.2 软件层的特征  1.1.3 软件分层的优点  1.1.4 软件分层的缺点  1.1.5 Java应用的持久化层  1.2 软件的模型 ...

    ant1.9资源

    同时在antstudy工程的根目录下建立build.xml文件,在该文件中编译src目录下的java文件,并将编译后的class文件放入build/classes目录中,在编译前,需清除classes目录,该文件的内容如下: ...

    Jsp+Oracle 人事管理

    操作方法:一路点击下一步直至安装结束,在选择安装路径时推荐安装在根目录,例如C:\Tomcat 4.1; (2) 设置环境变量: 操作方法:在我的电脑属性中设置环境变量为:TOMCAT_HOME= C:\Tomcat 4.1; (3) 建立站点: ...

    jsp网上书店

    <br/>3、 安装Tomcat4.1.24 <br/>(1) 安装软件: 操作方法:一路点击下一步直至安装结束,在选择安装路径时推荐安装在根目录,例如C:\Tomcat 4.1; <br/>(2) 设置环境变量: 操作方法:在我的...

    IIS6.0 IIS,互联网信息服务

    转到“目录安全性”窗口,单击“IP地址及域名限制”下的“编辑”按钮,点选中“授权访问”以能接受客户端从本机之外的地方对IIS进行管理;最后单击“确定”按钮。 3.则在任意计算机的浏览器中输入如...

    jpivot学习总结.doc

    memberReaderClass 设定一个成员读取器,默认情况下 Hierarchy 都是从关系型数据库里读取的,如果你的数据不在 RDBMS 里面的话,你可以通过自定义一个 member reader 来表现一个 Hierarchy 。 3.5. Level 级别 , ...

    ZendFramework中文文档

    设置文件根目录 7.1.2.3. 创建URL重写规则 7.1.2.4. 创建你的bootstrap文件 7.1.2.5. 创建默认的控制器(Action Controller) 7.1.2.6. 创建你的视图脚本 7.1.2.7. 创建你自己的错误控制器 7.1.2.8. 访问站点...

Global site tag (gtag.js) - Google Analytics