JSP를 사용하여 URL에서 파라미터를 취득하는 방법
JSP에서는 URL에서 파라미터를 취득하려면 어떻게 해야 합니까?
예를 들어 URL이 있습니다.www.somesite.com/Transaction_List.jsp?accountID=5
나는 5를 받고 싶다.
요청이 있습니까?getAttribute("계정")ID'는 세션이나 이와 유사한 것을 위해 존재하는 것과 같습니까?
Java EE 5 튜토리얼에서는 Unified Expression Language의 암묵적 객체에 대해 다음과 같이 기술하고 있습니다.
암묵적 객체
JSP 표현 언어는 암묵적인 오브젝트 세트를 정의합니다.
pageContext
: JSP 페이지의 컨텍스트.다음을 포함한 다양한 개체에 대한 액세스를 제공합니다.
servletContext
: JSP 페이지의 서블릿과 같은 응용 프로그램에 포함된 웹 컴포넌트의 컨텍스트.웹 컨텍스트 액세스를 참조하십시오.session
: 클라이언트의 Session 객체.클라이언트 상태 유지 관리를 참조하십시오.request
: JSP 페이지 실행을 트리거하는 요청.요청에서 정보 가져오기를 참조하십시오.response
: JSP 페이지에서 반환되는 응답.자세한 내용은 반응 구성을 참조하십시오.- 또한 다음 개체에 쉽게 액세스할 수 있는 여러 암묵적 개체를 사용할 수 있습니다.
param
: 요청 파라미터 이름을 단일 값에 매핑합니다.paramValues
: 요청 파라미터 이름을 값 배열에 매핑합니다.header
: 요청 헤더 이름을 단일 값에 매핑합니다.headerValues
: 요청 헤더 이름을 값 배열에 매핑합니다.cookie
: 쿠키 이름을 단일 쿠키에 매핑합니다.initParam
: 컨텍스트 초기화 파라미터 이름을 단일 값에 매핑합니다.- 마지막으로 "스코프 개체 사용"에서 설명한 다양한 범위 변수에 액세스할 수 있는 개체가 있습니다.
pageScope
: 페이지 범위 변수 이름을 값에 매핑합니다.requestScope
: 요청 범위 변수 이름을 해당 값에 매핑합니다.sessionScope
: 세션 범위 변수 이름을 해당 값에 매핑합니다.applicationScope
: 응용 프로그램 범위 변수 이름을 해당 값에 매핑합니다.
흥미로운 부분은 굵은 글씨로 표시되어 있습니다.
따라서 질문에 답하려면 다음과 같이 액세스할 수 있어야 합니다(EL 사용).
${param.accountID}
또는 JSP Scriptlet을 사용하는 경우(권장하지 않음):
<%
String accountId = request.getParameter("accountID");
%>
GET 요구에서는 요구 파라미터는 쿼리 문자열(URL 물음표 뒤에 있는 데이터)에서 가져옵니다.예를 들어 URL http://hostname.com?p1=v1&p2=v2에는 p1과 p2의 두 가지 요청 파라미터가 포함되어 있습니다.POST 요구에서는 요구 파라미터는 쿼리 문자열과 요구 본문에 부호화된 투고 데이터 양쪽에서 취득됩니다.
다음으로 생성되는 출력에 요구 파라미터 값을 포함하는 예를 나타냅니다.
Hello <b><%= request.getParameter("name") %></b>!
URL을 사용하여 페이지에 액세스한 경우:
http://hostname.com/mywebapp/mypage.jsp?name=John+Smith
출력은 다음과 같습니다.
Hello <b>John Smith</b>!
쿼리 문자열에 이름이 지정되지 않은 경우 출력은 다음과 같습니다.
Hello <b>null</b>!
다음 예제에서는 스크립트릿의 쿼리 파라미터 값을 사용합니다.
<%
if (request.getParameter("name") == null) {
out.println("Please enter your name.");
} else {
out.println("Hello <b>"+request. getParameter("name")+"</b>!");
}
%>
EL(JSP Expression Language) 사용:
${param.accountID}
여기에 댓글을 달아도 될까요?
<c:out value="${param.accountID}"></c:out>
동작하지 않습니다(0이 출력됩니다).
대신, 다음과 같이 동작합니다.
<c:out value="${param['accountID']}"></c:out>
request.getParameter("accountID")
네가 찾고 있는 거야이것은 Java Servlet API의 일부입니다.상세한 것에 대하여는, http://java.sun.com/j2ee/sdk_1.3/techdocs/api/javax/servlet/ServletRequest.html 를 참조해 주세요.
String accountID = request.getParameter("accountID");
예를 들어 subject_id가 있는 서브젝트레코드를 삭제하려고 합니다.
@RequestMapping(value="subject_setup/delete/{subjectid}",method = RequestMethod.GET)
public ModelAndView delete(@PathVariable int subjectid) {
subjectsDao.delete(subjectid);
return new ModelAndView("redirect:/subject_setup");
}
그리고 파라미터는 당신의 쿼리에서 입력에 사용됩니다.
public int delete(int subjectid) {
String sql = "update tbl_subject set isdeleted= '1' where id = "+subjectid+"";
return template.update(sql);
}
www.somesite.com/Transaction_List.jsp?accountID=5
★★★★★★★★★★★★★★에 대해서URL
이 있어요.request.getParameter
java에서는, 여기의 번호를 「」에 하는 는, 「」로 .int
이 「Cring Value」로 되는 경우도 string
행, 「 」 「 」 「 」 「 」 、 「 。
int accountId =(int)request.getParameter("accountID");
값은 '어느 정도'를 사용해서 수 있습니다.accountId
전체 페이지에.
(여기서)accountId
을 사용하다이것을사용하면여러개의 파라미터를얻을수도있습니다.단,이것이동작하지않습니다.에서만 합니다.GET
(메서드)를합니다.POST
이치노
이게 도움이 됐으면 좋겠네요.
페이지 1 : 상세페이지2 : <% String id = request.getParameter("userid");%> // 이제 hsql 상세제품의 SQL 쿼리에 id를 사용할 수 있게 되었습니다.
언급URL : https://stackoverflow.com/questions/1890438/how-to-get-parameters-from-the-url-with-jsp
'itsource' 카테고리의 다른 글
Java에서 유효한 URL을 확인하려면 어떻게 해야 합니까? (0) | 2022.09.03 |
---|---|
JAX-RS 프로바이더의 의미 (0) | 2022.09.03 |
변수 이름에 댓글을 달 수 있나요? (0) | 2022.09.03 |
Vue.js[vuex] 변환에서 디스패치하는 방법 (0) | 2022.09.03 |
C/C++에서 사람들이 하는 부당한 가정을 설명하기 위한 교육 도구에는 무엇이 있습니까? (0) | 2022.08.31 |