jsp 홈페이지 주소 가져오기 / 서버주소 가져오기

2017. 2. 6. 16:37language/jsp

 

jsp 홈페이지 주소(도메인 까지) 가져오기

 

 

다음과 같은 주소를 가진 웹페이지를 개발중이라고 가정한다.

 

 http://www.test:8080/contextPath/main.do

 

위 주소에서 http://www.test:8080 까지의 주소가 필요했다.

 

HttpServletRequest 를 사용해서 위 주소를 추출해 보자.

 

방법은 여러가지가 있을 수 있다.

 

본 포스팅에서는 2가지 방법만 설명한다.

 



 

1. 각 정보들을 조합하여 만들기

1
request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort();
cs

 

request 에는 서버의 정보들이 담겨있다.

 

그 정보중에서 scheme, server name, server port 를 가지고 주소를 조합할 수 있다.

 

물론 주소 중간에 각 항목을 연결해 주는 부분은 하드코딩으로...

 

request.getScheme() 함수는 http 를 return 하고

request.getServerName() 함수는 www.test 를 return 하고

request.getServerPort() 함수는 8080 을 return 한다.

 

위 정보들을 조합하면 http://www.test:8080 주소를 만들 수 있다.

 



 

2. RequestURL - RequestURI

1
request.getRequestURL().toString().replace(request.getRequestURI(),"");
cs

 

request 에는 reqeustUrl과 reqeustUri 정보가 있다.

requestUrl 은 전체 주소인 http://www.test:8080/contextPath/main.do 를 return 하고

reqeustUri 는 contextPath 부터 주소를 반환하기 때문에 /contextPath/main.do 를 return 한다.

 

그럼 requestUrl 에서 reqeustUri 를 빼주면 내가 필요로 하는 주소를 획득할 수 있다.