如何从动态表单中获取 json 作为输出

How to get json as output from dynamic form

我想为主题输入标记,没有从数据库生成主题, 所以我有标记对象如下:

class Mark
{
    int subCode;
    int internal;
    int oral;
    int term;

  //....getter and setter method
 }

在 exp 的形式中,我有 6 个主题 所以在我的 jsp 代码中

        <%
        for ( int i =0 ; i<6 ; i++){
        %>
        <input type="hidden"  name="subCode" value="<%=i%>"  >
        Internal : <input type="number" name='internal' >
oral : <input type="number" name='oral' >
term : <input type="number" name='term' >
   <% } %>
  <input type="submit">

那么如何使用 JSON.

将 6 Mark 对象传递到另一个 servlet 进行处理

如果你确定会有6个动态文本框,为什么不这样做:

JSP:

<input type="hidden"  name="noSubject" value="${noSubject}">
<c:forEach var="i" begin="1" end="${noSubject}">
  <input type="hidden"  name="subCode${i}" value="${i}">
  Internal : <input type="number" name="internal${i}" >
  oral : <input type="number" name="oral${i}" >
  term : <input type="number" name="term${i}" >   
</c:forEach>

Servlet

List<Mark> marksList= new ArrayList<Mark>();
int noSubject = Integer.parseInt(request.getParameter("noSubject");
for(int i=1; i< noSubject + 1; i++){
   int subCode=Integer.parseInt(request.getParameter("subCode"+i));
   int internal=Integer.parseInt(request.getParameter("internal"+i));
   int oral=Integer.parseInt(request.getParameter("oral"+i));
   int term=Integer.parseInt(request.getParameter("term"+i));
   Mark mark = new Mark();
   mark.setSubCode(subCode);
   ...//more setters
   marksList.add(mark);
}