Доступ к параметру Get с помощью скриплета
Вопрос
У меня есть URL-адрес, такой как search.do?offset=20
Смещениеиногда есть в URL, иногда нет. Когда его нет в URL, я хочу, чтобы он был равен 0.
я безуспешно пытаюсь получить значение с помощью скриптлета следующим образом:
<% Integer offset = (pageContext.findAttribute("offset")==null) ? new Integer("0") : new Integer((String) pageContext.findAttribute("offset")); %>
Кто-нибудь знает, что я делаю не так?
Решение
Вы должны использовать это вместо этого.
<% Integer offset = request.getParameter("offset") != null && request.getParameter("offset").length() > 0 ? new Integer(request.getParameter("offset")) : new Integer(0); %>
Будьте осторожны, потому что если " смещение " Параметр имеет неверное целочисленное представление, будет вызвано NumberFormatException.
Это базовая JSP. Вы можете использовать Struts или другую инфраструктуру J2EE, которая сделает эти преобразования более безопасными для вас.
Не связан с StackOverflow