加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Java > 正文

java – 将映射或对象从jsp传递到servlet

发布时间:2020-12-15 08:50:18 所属栏目:Java 来源:网络整理
导读:我有一个应用程序将映射从servlet传递给jsp.在jsp中,我显示地图并提供删除或编辑地图值的选项.但是,在更改值之后,如何将地图发送回另一个servlet,在那里它接收地图. 假设,我有一个服务“servletA”,它将地图传递给jsp,如下所示: public int Id=22222;MapStr
我有一个应用程序将映射从servlet传递给jsp.在jsp中,我显示地图并提供删除或编辑地图值的选项.但是,在更改值之后,如何将地图发送回另一个servlet,在那里它接收地图.

假设,我有一个服务“servletA”,它将地图传递给jsp,如下所示:

public int Id=22222;
Map<String,String> configParamsMap=new HashMap<String,String>(size);
    configParamsMap.put("1","arg1");
    configParamsMap.put("2","arg2");
    configParamsMap.put("3","arg3");
    configParamsMap.put("4","arg4");
    //
    System.out.println("parameters passing to the jsp:: appId"+appId+"::configId"+configId);
    request.setAttribute("configParamsMap",configParamsMap);
    request.setAttribute("Id",Id);


    RequestDispatcher rd = request.getRequestDispatcher("/JSP/display.jsp");
    rd.forward(request,response);

在jsp中,我可以删除或编辑值.我正在做删除如下并传递参数

<c:forEach var="configParams" items="${configParamsMap}">
    <!--  KEY: ${configParams.key}  - VALUE: ${configParams.value} -->

    <tr>
        <td>
        <c:out value="${configParams.key}" />
        </td>
        <td><input type="text" name="" value="${configParams.value}" /></td>

    </tr>
</c:forEach>
</table>
<form action="sevletB?action=Delete" method="post"><input
type="submit" value="Delete"></input>
<input type="hidden" name="Id" value="${Id}"></input>   
</form>

我的问题是如何将映射传递回另一个servlet“servletB”,就像我对参数“id”所做的那样.该映射应该是用户已经编辑了一些值的映射,即jsp中映射的当前状态.

解决方法

在表单标记内写下您的所有代码.

使用此代码:

<c:forEach var="configParams" items="${configParamsMap}" varStatus="itemsRow">
   <tr>
        <td>
        <c:out value="${configParams.key}" />
        </td>
        <td><input type="text" name="" value="${configParams.value}" /></td>
  </tr>
</c:forEach>

使用包含${configParams.key}值的隐藏字段.使用循环迭代器${itemsRow.index}来创建可分辨的参数名称

< input type =“text”name =“configParam.${itemsRow.index}”value =“${configParams.value}”/>

当提交表单时,您可以通过在getParameter(”)方法中给出名称来从请求中访问所有这些值.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读