1.JSP获取服务器路径
System.out.println("d1="+request.getRealPath("subsite.xml"));
System.out.println("d2="+application.getRealPath(request.getRequestURI()));
System.out.println("d3="+request.getRealPath(""));
System.out.println("d4="+request.getRealPath("."));
System.out.println("d5="+request.getRealPath("/"));
System.out.println("d6="+application.getRealPath(""));
System.out.println("d7="+request.getSession().getServletContext().getRealPath(""));
结果:
d1=/opt/resin3.1.10/webapps/easyDigTH20101005/WebRoot/subsite.xml
d2=/opt/resin3.1.10/webapps/easyDigTH20101005/easyDigTH20101005/WebRoot/Default.jsp
d3=/opt/resin3.1.10/webapps/easyDigTH20101005/WebRoot/
d4=/opt/resin3.1.10/webapps/easyDigTH20101005/WebRoot/
d5=/opt/resin3.1.10/webapps/easyDigTH20101005/
d6=/opt/resin3.1.10/webapps/easyDigTH20101005/
d7=/opt/resin3.1.10/webapps/easyDigTH20101005/
2.Java获取服务器路径
System.out.println("1="+Dom.class.getResource(""));
System.out.println("2="+System.getProperty("user.dir"));
System.out.println("3="+new File("/").getAbsolutePath());
System.out.println("4="+Dom.class.getResource("/"));
结果:
1=file:/opt/resin3.1.10/webapps/easyDigTH20101005/WEB-INF/classes/com/huilan/config
2=/opt/resin3.1.10
3=/
4=file:/opt/resin3.1.10/webapps/easyDigTH20101005/WEB-INF/classes/
4=貌似对我最实用
URL url=Dom.class.getResource("/");
String str1=url.getPath();//获取url路径部分
String xmlpath=str1+"subsite.xml";
System.out.println("url_str1="+str1);
System.out.println("xmlpath="+xmlpath);
结果:
url_str1=/opt/resin3.1.10/webapps/easyDigTH20101005/WEB-INF/classes/
xmlpath=/opt/resin3.1.10/webapps/easyDigTH20101005/WEB-INF/classes/subsite.xml
*********************************************
InputStream is=d.getClass().getClassLoader.getResourceAsStream("subsite.xml");//这个更安全
String path=d.getClass().getClassLoader.getResource("subsite.xml").getPath();
这俩输出结果一样,但上面以输入流获得的更安全
/opt/resin3.1.10/webapps/easyDigTH20101005/WEB-INF/classes/subsite.xml