servlet中获取各种相对地址(服务器、服务器所在本地磁盘、src等)。
【本文简介】
本文将提供javaWeb中经常使用到的相对路径的获取方法,分别有:
- url基本地址
- 带目录的url地址
- 服务器的根路径
- 服务器所在的 本地磁盘路径
- 服务器所在的本地磁盘路径,带文件夹
- SRC目录下的文件的路径,带文件夹
并封装成一个工具类,以便复用。
【java代码】
package com.zjm.www.util; import javax.servlet.http.HttpServletRequest; /**
* @描述 : 获取各种相对路径的工具类
* @作者 :小M
* @博客 : http://www.cnblogs.com/xiaoMzjm/
* @时间 : 2014/07/30
*/
public class PathUtil{ /**
* 获取服务的url基本地址
* @param request 请求
* @return 例如:http://localhost:8080/test/ , 其中test为项目名
*/
public static String getServerPath(HttpServletRequest request){
String path = request.getContextPath();
String basePath = request.getScheme() + "://"+ request.getServerName() + ":" + request.getServerPort()+ path + "/"; return basePath;
}
/**
* 获取带目录的url地址
* @param request 请求
* @param folderName 文件夹名 ,例如:DownLoadFile
* @return 例如:http://localhost:8080/test/DownLoadFile
*/
public static String getServerPath(HttpServletRequest request,String folderName){
String path = request.getContextPath();
String basePath = request.getScheme() + "://"+ request.getServerName() + ":" + request.getServerPort()+ path + "/";
return basePath+folderName;
}
/**
* 获取服务器的根路径
* @param request 请求
* @return 例如:/test , 其中test为项目名
*/
public static String getServerContextPath(HttpServletRequest request){
String path = request.getContextPath();
return path;
} /**
* 获取服务器所在的 本地磁盘路径
* @param request 请求
* @return 例如:D:\D\sofe\apache-tomcat-8.0.5\webapps\test , 其中test为项目名
*/
public static String getDiskPath(HttpServletRequest request){
String path = request.getServletContext().getRealPath("/")+"\\";
return path;
}
/**
* 获取服务器所在的本地磁盘路径,带文件夹
* @param request 请求
* @param folderName 文件夹名 ,例如:DownLoadFile
* @return 例如:D:\D\sofe\apache-tomcat-8.0.5\webapps\test\DownLoadFile
*/
public static String getDiskPath(HttpServletRequest request,String folderName){
String path = request.getServletContext().getRealPath("/")+"\\";
return path+folderName;
} /**
* 获取SRC目录下的文件的路径,带文件夹
* @param folderName
* @return 例如:/F:/myEclipse2013WokeSpace/TestByServlet/WebRoot/WEB-INF/classes/test.txt
*/
public String getSRCPath(String folderName){
String path = this.getClass().getClassLoader().getResource(folderName).getPath();
return path;
}
}
【该工具类附件】
复制在浏览器打开既可下载。
http://files.cnblogs.com/xiaoMzjm/PathUtil.rar
servlet中获取各种相对地址(服务器、服务器所在本地磁盘、src等)。的更多相关文章
- Web版需求征集系统所得1,servlet中获取checkbox复选框的值
servlet中获取checkbox复选框的值 </tr> <tr> <td align="right">研究类型</td> < ...
- jsp内置对象pageContext如何在Servlet中获取值
pageContext javax.servlet.jsp.PageContext 的实例,该对象代表该JSP 页面上下文,使用该对象可以访问页面中的共享数据.常用的方法有getServletCont ...
- 在Servlet中获取Spring注解的bean
最近由于项目中出现了Servlet调用Spring的bean,由于整个项目中所有的bean均是注解方式完成,如@Service,@Repository,@Resource等,但是Spring的容器管理 ...
- 本地Linux虚拟机内网穿透,服务器文件下载到本地磁盘
本地Linux虚拟内网穿透 把服务器文件下载到本地磁盘 https://natapp.cn/ 1.注册账户点击免费隧道
- Servlet中获取JSP内置对象
方便自己查询,嫌低级的勿喷.... 1.request 在servlet的doGet和doPost的参数中就有HttpServletRequest req参数,而JSP内置request对象就是Htt ...
- Servlet中获取Spring管理的bean
描述: 在Servlet中调用Spring管理的接口,可以使Dao/Service/ServiceImpl. 前提是在调用的bean中有注解: @Repository("beanName&q ...
- Servlet中获取POST请求的参数
在servlet.filter等中获取POST请求的参数 form表单形式提交post方式,可以直接从 request 的 getParameterMap 方法中获取到参数 JSON形式提交post方 ...
- web.xml中在Servlet中获取context-param和init-param内的参数
引自:http://blog.csdn.net/yakson/article/details/9203231 web.xml里面可以定义两种参数:1.application范围内的参数,存放在serv ...
- servlet中获取配置文件中的参数.
web.xml (添加init-param) <?xml version="1.0" encoding="UTF-8"?> <web-app ...
随机推荐
- 消息队列ipc的一些设置
Linux IPC 参数设定- 命令方式: echo 80 > /proc/sys/vm/overcommit_ratio, etc MSGMNB 每个消息队列的最大字节限制. MSGMNI 整 ...
- 金典 SQL笔记(9)
page301-354其它解决方式 ---开窗函数 --測试数据及表 USE [NB] GO /****** 对象: Table [dbo].[T_Person2] 脚本日期: 08/14/2015 ...
- HDU2059 龟兔赛跑 【DP】
龟兔赛跑 Time Limit: 1000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others) Total Submi ...
- RegDBGetKeyValueEx函数使用报错error 1 numeric value required
参考:http://evely.blog.51cto.com/1089422/1400965 RegDBGetKeyValueEx函数: InstallSheild Script Code 123 ...
- java项目学习
GitHub地址:https://github.com/zhanglei-workspace/shopping-management-system
- C++ 运算符 [] & *、操作符new 修饰符const inline virtual
1. [] 这让我想到静态分配内存和动态分配内存,与数据名称无关 局部变量和临时变量会储存在静态缓存区,随着程序运行完而消亡(例如在循环体中定义的局部变量随着循环体结束,局部变量也会消亡). 内存泄漏 ...
- HDU4267(2012年长春站)
这道题真的是好题,让我对线段树有了全新的认识,至少让我真正感受到了线段树的神奇. 题意是就是线段树区间更新,单点询问的问题,不过这个题好就好在它的区间更新的点并不连续! adding c to eac ...
- nginx默认访问目录时显示403错误
author :headsen chen date: 2018-04-25 17:17:25 nginx安装完成后默认的http页面里访问目录的话会报403的错误: 和Apache进行比较,Apac ...
- Linux ping不通百度的解决方法
今天在学习DNS的时候遇到了一个问题,我的虚拟机能够ping通ip地址,却ping不通www.baidu.com www.qq.com等域名,先是出现了以下报错: 折腾了几个小时终于找到解决办法 1. ...
- ZOJ 3946 Highway Project(Dijkstra)
Highway Project Time Limit: 2 Seconds Memory Limit: 65536 KB Edward, the emperor of the Marjar ...