Java 字符串到数组列表

Java 字符串到数组列表,java,spring,jsp,spring-mvc,Java,Spring,Jsp,Spring Mvc,我正在实现SpringMVC。jsp页面上会显示不同的字符串值 请帮助我将这些字符串值移动到ArrayList以减少庞大的代码 @Controller("Control") Public Class Controller{ ... @RequestMapping() public String init(RenderRequest request, RenderResponse response, Model model) { try { Stri

我正在实现SpringMVC。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;
}
您可以使用request.getParameterMap-它将为您提供一个映射,然后您可以在JSP中进行迭代:

<c:forEach items="${paramValues}" var="mapEntry">
    <td>${mapEntry.key}</td>
    <td>${mapEntry.value}</td>
</c:forEach>
上面的paramValues是包含映射的隐式变量


使用forward时,您不需要在控制器中执行其他操作。您可以使用:model.addAttributeparamsMap、request.getParameterMap,但这不是必需的。

在您提到的JSp更改之后。我是否需要在控制器中只添加一行来添加该属性。我不需要将所有这些字符串变量添加到ParameterMap中吗。如果是,怎么做?@oneoflions地图由您的容器填充。你什么都不用做
model.addAttribute("paramsMap", request.getParameterMap()); 
<c:forEach items="${paramValues}" var="mapEntry">
    <td>${mapEntry.key}</td>
    <td>${mapEntry.value}</td>
</c:forEach>