W JSP jak uzyskać parametry z adresu URL?
Na przykład mam adres URL, www.somesite.com/Transaction_List.jsp?accountID=5
który chcę uzyskać 5.
Czy istnieje request.getAttribute („accountID”), taki jak w przypadku sesji lub coś podobnego?
źródło
W JSP jak uzyskać parametry z adresu URL?
Na przykład mam adres URL, www.somesite.com/Transaction_List.jsp?accountID=5
który chcę uzyskać 5.
Czy istnieje request.getAttribute („accountID”), taki jak w przypadku sesji lub coś podobnego?
W żądaniu GET parametry żądania są pobierane z ciągu zapytania (dane następujące po znaku zapytania w adresie URL). Na przykład adres URL http://hostname.com?p1=v1&p2=v2 zawiera dwa parametry żądania - - p1 i p2. W żądaniu POST parametry żądania są pobierane zarówno z ciągu zapytania, jak i z wysłanych danych, które są zakodowane w treści żądania.
W tym przykładzie pokazano, jak uwzględnić wartość parametru żądania w wygenerowanym wyniku:
Hello <b><%= request.getParameter("name") %></b>!
Jeśli strona była otwierana za pomocą adresu URL:
http://hostname.com/mywebapp/mypage.jsp?name=John+Smith
wynikowy wynik byłby:
Hello <b>John Smith</b>!
Jeśli nazwa nie zostanie podana w ciągu zapytania, wynikiem będzie:
Hello <b>null</b>!
W tym przykładzie użyto wartości parametru zapytania w skrypcie:
<%
if (request.getParameter("name") == null) {
out.println("Please enter your name.");
} else {
out.println("Hello <b>"+request. getParameter("name")+"</b>!");
}
%>
O dorozumiane obiektów o Unified Expression Language The Java EE 5 Tutorial pisze:
Interesujące części są pogrubione :)
Tak więc, aby odpowiedzieć na twoje pytanie, powinieneś mieć do niego dostęp w następujący sposób (używając EL):
Lub używając skryptów JSP (niezalecane):
źródło
Użyj EL (JSP Expression Language):
${param.accountID}
źródło
<c:out value="${param.accountID}" />
Aby to zrobić, użyj JSTL .Jeśli mogę tu dodać komentarz ...
<c:out value="${param.accountID}"></c:out>
nie działa dla mnie (drukuje 0).
Zamiast tego działa:
<c:out value="${param['accountID']}"></c:out>
źródło
request.getParameter("accountID")
jest tym, czego szukasz. Jest to część interfejsu API serwletów Java. Więcej informacji można znaleźć na stronie http://java.sun.com/j2ee/sdk_1.3/techdocs/api/javax/servlet/ServletRequest.html .źródło
źródło
przykład chciałeś usunąć rekord podmiotu z jego identyfikatorem podmiotu
a parametr zostanie wykorzystany do wprowadzenia zapytania
źródło
www.somesite.com/Transaction_List.jsp?accountID=5
W tym celu
URL
istnieje wywołanie metodyrequest.getParameter
w Javie, jeśli chcesz tu rzucić liczbęint
, podobnie dla wartości ciągustring
. więc na swoje życzenie po prostu skopiuj przeszłość poniżej linii na stronie,możesz teraz nazwać tę wartość, używając
accountId
całej strony.tutaj
accountId
jest nazwa parametru, można również uzyskać więcej niż jeden parametr za pomocą tego, ale to nie działa. Będzie działać tylko zGET
metodą, jeśli trafisz naPOST
żądanie, wtedy będzie to błąd.Mam nadzieję, że to jest pomocne.
źródło
strona 1: Szczegół strona 2: <% String id = request.getParameter ("userid");%> // teraz możesz używać id do zapytania SQL o szczegóły produktu hsql
źródło