Строка в ArrayList <String> - PullRequest
       10

Строка в ArrayList <String>

0 голосов
/ 09 февраля 2011

Я реализую Spring MVC. Различные значения String отображаются на странице JSP.

Помогите мне переместить эти строковые значения в ArrayList, чтобы уменьшить объемный код.

 @Controller("Control")
 Public Class Controller{
 ...
 @RequestMapping()
public String init(RenderRequest request, RenderResponse response,
        Model model) {
    try {
        String auth = request.getAuthType();  //All these Strings to be moved to ArrayList<String>
        String context = request.getContextPath();
        String ETags = request.getETag();
        String remoteuser = request.getRemoteUser();
        String sessionID = request.getRequestedSessionId();
        String resContent = request.getResponseContentType();
        String scheme = request.getScheme();
        String getServerName = request.getServerName();
        String getWindowID = request.getWindowID();

        PortletMode getPortletMode = request.getPortletMode();  //If these different types could also be moved <?>
        PortalContext Pcontext = request.getPortalContext();

        model.addAttribute("Name", "Sallu");
        model.addAttribute("auth",auth);
        model.addAttribute("context", context);
        model.addAttribute("ETags",ETags);
        model.addAttribute("remoteuser", remoteuser);
        model.addAttribute("sessionID",sessionID);
        model.addAttribute("resContent",resContent);
        model.addAttribute("scheme", scheme);
        model.addAttribute("getServerName",getServerName);
        model.addAttribute("getWindowID", getWindowID);
        model.addAttribute("getPortletMode",getPortletMode);
        model.addAttribute("Pcontext",Pcontext);
    } catch (Exception ex) {
        LOG.error(ErrorUtil.convertStackTraceToString(ex));
    }
    return JSP_Page;
}

Также помогите мне изменить JSP тоже, используя

   <%My JSP%>
   <tr>
    <td>Pcontexts------${Pcontext}</td>
</tr>
<tr>
    <td>auths------${auth}</td>
</tr>
    ...

    //To be changed to something using <c:ForEach or some Loop>

Обновление:

Когда я добавляю это в контроллер и делаю, как Божо показал в JSP, оно все равно не работает:

model.addAttribute("paramsMap", request.getParameterMap()); 

1 Ответ

0 голосов
/ 09 февраля 2011

Вы можете использовать request.getParameterMap() - это даст вам Map, который вы можете затем выполнить в JSP:.

<c:forEach items="${paramValues}" var="mapEntry">
    <td>${mapEntry.key}</td>
    <td>${mapEntry.value}</td>
</c:forEach>

paramValues выше - неявная переменная, которая содержит карту.

При использовании forward, вам больше ничего не нужно делать в контроллере. Вы можете использовать: model.addAttribute("paramsMap", request.getParameterMap()), но это не обязательно.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...