SystemgetProperty("catalinahome") ,Tomcat 安装目录,一般是用来查找库 jar 的。
SystemgetProperty("catalinabase"),服务器配置目录,所有配置文件都在这里,你可以用一个catalinahome 来启动两个命令行来运行两个不同的 catalinabase 配置(前提你已经修改了配置文件保证它们的端口不会冲突);
当在 eclipse 里面运行时,多数情况下 catalinehome 还是 tomcat 目录,而 catalinabase 是 eclipse workspace 里面的一个目录,你现在需要拿到的应该是工作时的配置目录下的子目录,所以你应该用 catalinabase 当成根目录;比如,我想读取 tomcat user 文件,得到的结果相当于 ${catalinebase}/conf/tomcat-usersxml
文件从本地到服务器的功能,其实是为了解决目前浏览器不支持获取本地文件全路径。不得已而想到上传到服务器的固定目录,从而方便项目获取文件,进而使程序支持EXCEL批量导入数据。
java中文件上传到服务器的指定路径的代码:
在前台界面中输入:
<form method="post" enctype="multipart/form-data" action="/manage/excelImportdo">
请选文件:<input type="file" name="excelFile">
<input type="submit" value="导入" onclick="return impExcel();"/>
</form>
action中获取前台传来数据并保存
/
excel 导入文件
@return
@throws IOException
/
@RequestMapping("/usermanager/excelImportdo")
public String excelImport(
String filePath,
MultipartFile excelFile,>
loginfo("<<<<<<action:{} Method:{} start>>>>>>","usermanager","excelImport" );
if (excelFile != null){
String filename=excelFilegetOriginalFilename();
String a=requestgetRealPath("u/cms/>
SaveFileFromInputStream(excelFilegetInputStream(),requestgetRealPath("u/cms/>
}
loginfo("<<<<<<action:{} Method:{} end>>>>>>","usermanager","excelImport" );
return "";
}
/
将MultipartFile转化为file并保存到服务器上的某地
/
public void SaveFileFromInputStream(InputStream stream,String path,String savefile) throws IOException
{
FileOutputStream fs=new FileOutputStream( path + "/"+ savefile);
Systemoutprintln("------------"+path + "/"+ savefile);
byte[] buffer =new byte[10241024];
int bytesum = 0;
int byteread = 0;
while ((byteread=streamread(buffer))!=-1)
{
bytesum+=byteread;
fswrite(buffer,0,byteread);
fsflush();
}
fsclose();
streamclose();
}
以工程名为TEST为例:
(1)得到包含工程名的当前页面全路径:requestgetRequestURI()
结果:/TEST/testjsp
(2)得到工程名:requestgetContextPath()
结果:/TEST
(3)得到当前页面所在目录下全名称:requestgetServletPath()
结果:如果页面在jsp目录下 /TEST/jsp/testjsp
(4)得到页面所在服务器的全路径:applicationgetRealPath("页面jsp")
结果:D:/resin/webapps/TEST/testjsp
(5)得到页面所在服务器的绝对路径:absPath=new javaioFile(applicationgetRealPath(requestgetRequestURI()))getParent();
结果:D:/resin/webapps/TEST
2在类中取得路径:
(1)类的绝对路径:String u=ClassclassgetClass()getResource("/")getPath()
结果:/D:/TEST/WebRoot/WEB-INF/classes/pack/
(2)得到工程的路径:SystemgetProperty("userdir")
结果:D:/TEST
3在Servlet中取得路径:
(1)得到工程目录:requestgetSession()getServletContext()getRealPath("") 参数可具体到包名。
结果:E:/Tomcat/webapps/TEST
(2)得到IE地址栏地址:requestgetRequestURL()
结果:>
以上就是关于Java如何获取tomcat的根目录的路径全部的内容,包括:Java如何获取tomcat的根目录的路径、java中怎么把文件上传到服务器的指定路径、java 怎么获取web根目录等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)