많은 클럽의 데이터를 관리하는 Java 웹 애플리케이션이 있습니다. 신청서에 입력 한 URL에 따라 클럽 정보를 표시하고 싶습니다.Java Servlet 필터에서 HTTPServletRequest의 요청 URL을 가로 채고 변경할 수 있습니까?
예 : "localhost : 8080/MyApp/Club1" ...을 입력하면 응용 프로그램은 requst url (Club1)의 끝을 제거하고 데이터베이스에서 데이터베이스를 조회하여 세션에 추가해야합니다. 그런 다음 모든 데이터베이스 요청은 세션에있는 클럽에 따라 데이터를 조회 할 수 있습니다.
를 입력하면 "로컬 호스트 : 8080/MyApp를/Club2"당신이 세션에 등록에 클럽을 얻고, 모든 데이터베이스 요청이 클럽 나는이 작업을 수행 할 수 있습니다 생각하는 방법을 사용하는 것입니다 2.
위한 것입니다을 HTTPServletRequest(). getRequestURL()을 호출하고 요청 URL에서 클럽 이름을 제거하여 데이터베이스에서 클럽을 조회하는 서블릿 필터.
그러나 응용 프로그램이 정상적으로 작동하도록 요청 URL을 http://localhost:8080/MyApp으로 변경하지는 않겠습니다. 그러나, 나는 이것을 할 수 있다고 생각하지 않는다?
누구든지이 작업을 수행하는 방법에 대한 아이디어가 있습니까? 아니면 더 나은 방법이 있습니까?
덕분에 올 볼 수 있습니다. 최선의 방법에 대한 아이디어? –
Ofcourse이지만 이러한 필터는 로깅, 매개 변수 추가 또는 변경, 다른 URL로 리디렉션하지 않는 것과 같은 작업을 수행합니다. 그런 일을 한 필터의 예를 찾을 수 없었습니다. – duffymo
감사합니다. 필터를 사용하여 마크를 벗어난 것처럼 들리므로이 방법을 포기해야합니다. 나는 아직도 이것을하는 가장 좋은 방법이 무엇인지 확실하지 않다. 저는이 문제가 정말로이 문제로 귀결된다고 생각합니다. 나는 easly 클럽 데이터를로드 할 수 있습니다 알고있는 경우에 사용자 유형 : 로컬 호스트 /을 myApp 클럽 = 요청이 다음에서 클럽을 얻는 오면 즉시 요청 매개 변수를 얻기의 단지 사건 나의 클럽 데이터 베이스. 정확히 똑같은 일을하는 방법을 찾지 못했지만 요청 매개 변수가 아닌 경로에서 클럽 이름을 얻습니다. –