spring 에서 항목 루트 가 져 오기

6412 단어 웹 개발
spring 중:
방식 1:

<context-param>
  <param-name>webAppRootKeyparam-name>
  <param-value>rootPathparam-value>
context-param>
<listener>
  <listener-class>org.springframework.web.util.WebAppRootListenerlistener-class>
listener>

상기 감청 은 웹. xml 에 추가 되 었 습 니 다. 임의의 자바 클래스 에서 설명 을 통 해 루트 경 로 를 가 져 올 수 있 습 니 다. 더 자주 사용 되 는 장면: 제3자 도구 에 사용 되 는 프로필 에서 ${baobaotao. root} 을 통 해 웹 응용 루트 디 렉 터 리, 예 를 들 어 log 4 j 의 프로필 을 참조 합 니 다.
 log4j.rootLogger=INFO,R 
 log4j.appender.R=org.apache.log4j.RollingFileAppender 
 #          
 log4j.appender.R.File=${baobaotao.root}/WEB-INF/logs/log4j.log 
 log4j.appender.R.MaxFileSize=100KB 
 log4j.appender.R.MaxBackupIndex=1 
 log4j.appender.R.layout.ConversionPattern=%d %5p [%t] (%F:%L) - %m%n 

방식 2: 어, 바로 Servlet 방식 으로 가 져 오 는 것 입 니 다. context 대상 을 통 해 ServletContext 를 가 져 오고 경 로 를 가 져 올 수 있 습 니 다.
여러 가지 경 로 를 가 져 오 는 방법: 첫째, Jsp 로 1 을 가 져 오고 파일 을 가 져 오 는 절대 경로
String file="  ";(  :data.mdb)
String path=application.getRealPath(file);

결과: E: \ \ java웹 \ \ workspace. metadata. plugins \ org. eclipse. wst. core \ \ tmp 0 \ \ wtpwebapps \ \ myWebsite \ \ 파일 2, 파일 을 가 져 오 는 절대 경로
String p2=request.getRequestURI();

결과: E: \ \ java웹 \ \ workspace. metadata. plugins \ org. eclipse. wst. core \ \ tmp 0 \ \ wtpwebapps \ \ myWebsite \ \ 파일 3, 현재 jsp 페이지 를 가 져 오 는 경로
String p3=request.getContextPath(); 

결과: / my Website / index. jsp
4. 현재 항목 의 경로 가 져 오기
String p4=request.getServletPath(); 

결과: / my 웹 사이트
2. 자바 클래스 로 1 가 져 오기, Eclipse 경로 가 져 오기
String a1=System.getProperty("user.dir");

결과: D: \ \ StudySystem \ \ JavaWeb \ \ 3 - eclipse - jee - indigo - win 32 \ \ eclipse
2. 현재 classpath 경로 가 져 오기
String a2=  .class.getResource("").toString();
String a3=DBConnection.class.getResource("/").toString();
String a4=DBConnection.class.getClassLoader().getResource("").toString();
String t=Thread.currentThread().getContextClassLoader().getResource("").getPath();

출력: file: / E: / javaweb/workspace/.metadata/.plugins/org.eclipse.wst.server.core/tmp0/wtpwebapps/myWebsite/WEB-INF/classes/com/site/db/ file:/E:/java_web/workspace/.metadata/.plugins/org.eclipse.wst.server.core/tmp0/wtpwebapps/myWebsite/WEB-INF/classes/ file:/E:/java_web/workspace/.metadata/.plugins/org.eclipse.wst.server.core/tmp0/wtpwebapps/myWebsite/WEB-INF/classes/ /E:/java_web/workspace/.metadata/.plugins/org.eclipse.wst.server.core/tmp0/wtpwebapps/myWebsite/WEB-INF/classes/
3. 파일 을 가 져 오 는 절대 경로 웹 콘 텐 츠 디 렉 터 리 에 있 는 파일 의 절대 경 로 를 가 져 오 려 면 어떻게 합 니까?아래 방법 을 써 도 돼 요.
String t=Thread.currentThread().getContextClassLoader().getResource("").getPath(); 
 int num=t.indexOf(".metadata");
 String path=t.substring(1,num).replace('/', '\\')+"   \\WebContent\\  ";

결 과 는 E: \ java웹 \ \ workspace \ \ 항목 이름 \ \ WebContent \ 파일
3. servlet 로 가 져 오기
1. 프로젝트 의 절대 경로 가 져 오기
request.getSession().getServletContext().getRealPath("")

결과: E: \ \ javaweb\workspace.metadata.plugins\org.eclipse.wst.server.core\tmp0\wtpwebapps\myWebsite
2. 브 라 우 저 주소 가 져 오기
request.getRequestURL()

결과:http://localhost:8080/myWebsite/QuestionServlet
3. 현재 파일 의 절대 경로 가 져 오기
request.getSession().getServletContext().getRealPath(request.getRequestURI())

결과: E: \ \ javaweb\workspace.metadata.plugins\org.eclipse.wst.server.core\tmp0\wtpwebapps\myWebsite\myWebsite\QuestionServlet

좋은 웹페이지 즐겨찾기