2013-01-09 3 views
0

이상한 시나리오가 있습니다.자바 문자열 (쿼리 문자열) 조작

  1. '첫 번째'캡처 및 '초'값
  2. 쿼리 문자열이 '첫번째'가 확인하고 '두 번째': 쿼리 문자열 그래서 내가해야

    String queryString = request.getParameter("first=second=12123423423423432323234") 
    

    first=second=12123423423423432323234 있습니다.

가능한 한 최선을 다해 공유 할 수있는 사람이 있습니까?

정말 고맙습니다.

+4

'first = & second = 12123423423423432323234'와 같이 보이면 안됩니까? – Bohemian

+3

이것은 유효한 쿼리 문자열이 아닙니다 ... – fge

+0

당신은'&'로 분할 한 다음'='로 분할하고 Map 를 사용하여 쿼리 매개 변수 키와 쿼리 매개 변수 값을 매핑합니다. 이것은 Java의 거의 모든 웹 프레임 워크에서 기본적으로 수행됩니다. – Srinivas

답변

0

나는

first=firstvalue&second=secondvalue 

당신은 쿼리 문자열을 쿼리 문자열이

귀하의 경우에,

String firstValue = request.getParameter("first"); 
String secondValue = request.getParameter("second"); 
System.out.println("Query String:first="+firstValue+"second=+"secondValue); 

를 인쇄하는 서블릿이 사용할 수 있습니다처럼 쿼리 문자열이 보일 것입니다 생각

first=second=12123423423423432323234 

할 수 있습니다.

String first = request.getParameter("first"); 
String second = request.getParameter("second"); 
if(first.contains("second=")){ 
    second = first.split("second=")[1]; 
    first = first.split("second=")[0]; 
} 
out.println("[First:"+first+"][Second:"+second+"]"); 
+0

그것은 내 유스 케이스에서 일했습니다. Avinash Nair 감사합니다. – user1635014

0

매개 변수가 & (즉, first=&second=something), 단순히 .getParameter("first").getParameter("second")

그렇지 않으면, 당신은 문자열로 플레이 할 거라고는 - 아마 주위 =을 분할하고, second까지 첫 번째 컷의 값을 발생합니다. first의 값은 first=foosecond=bar 일 때 어떻게 작동할까요?