2013年10月11日星期五

Submit the results of several multiple choice to accept the order of chaos

servelt The six radio 's value reached servlet then traverse out
But the order is not Q1Q2Q3Q4Q5Q6 but Q5Q6Q1Q2Q3Q4
If it increased to 10 radio traversal is Q5Q6Q7Q8Q1Q2Q3Q4Q9Q10 Ask why


<!DOCTYPE html>
<html>
  <head>
    <title>homework.html</title>

    <meta http-equiv="description" content="this is my page">
    <meta http-equiv="content-type" content="text/html; charset=UTF-8">

  </head>
  
  <body>
    <form action="servlet/Check" method="POST">
      <p>
        1.帐户是根据————开设的,用来来系统的记载各项经济业务的一种工具和手段。
        <p></p>
        <input type="radio" name="Q1" value="A">A 资金运动
        <input type="radio" name="Q1" value="B">B 会计对象
        <input type="radio" name="Q1" value="C">C 会计科目
        <input type="radio" name="Q1" value="D">D 财务状况
      </p>
      <hr>
      <p>
        2.我国的会计年度采用:
        <p></p>
        <input type="radio" name="Q2" value="A">A 历年制
        <input type="radio" name="Q2" value="B">B 四月制
        <input type="radio" name="Q2" value="C">C 七月制
        <input type="radio" name="Q2" value="D">D 特殊制
      </p>
      <hr>
      <p>
        3.总分类帐户对其所属的明细分类帐户起着____作用。
        <p></p>
        <input type="radio" name="Q3" value="A">A 平行核算
        <input type="radio" name="Q3" value="B">B 补充说明
        <input type="radio" name="Q3" value="C">C 统奴、控制
        <input type="radio" name="Q3" value="D">D 相互补充
      </p>
      <hr>
      <p>
        4.借贷记帐法的双重性质帐户,其性质要根据————来决定 
        <p></p>
        <input type="radio" name="Q4" value="A">A 借贷发生额
        <input type="radio" name="Q4" value="B">B 借方发生额
        <input type="radio" name="Q4" value="C">C 贷方发生额
        <input type="radio" name="Q4" value="D">D 期末余额
      </p>
      <hr>
      <p>
        5.下列凭证中不能作为编制记帐凭证依据的是:
        <p></p>
        <input type="radio" name="Q5" value="A">A 货单
        <input type="radio" name="Q5" value="B">B 发票
        <input type="radio" name="Q5" value="C">C 发货单
        <input type="radio" name="Q5" value="D">D 购销合同
      </p>
      <hr>
      <p>
        6.会计科目是对____的内容构成及其具体内容进行分类核算的项目和标志。
        <p></p>
        <input type="radio" name="Q6" value="A">A 会计对象
        <input type="radio" name="Q6" value="B">B 会计要素
        <input type="radio" name="Q6" value="C">C 会计主体
        <input type="radio" name="Q6" value="D">D 会计方法
      </p>
      <hr>
      <input type="submit" value="完成提交" />
    </form>
  </body>
</html>


package com;

import java.io.IOException;
import java.io.PrintWriter;
import java.util.Collection;
import java.util.Iterator;
import java.util.Map;
import java.util.Set;

import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

public class Check extends HttpServlet {

@Override
protected void doGet(HttpServletRequest req, HttpServletResponse resp)
throws ServletException, IOException {
doPost(req, resp);
}

@Override
protected void doPost(HttpServletRequest request,
HttpServletResponse response) throws ServletException, IOException {
response.setContentType("text/html;charset=utf-8");
PrintWriter out = response.getWriter();

Map<String, String[]> map = request.getParameterMap();

Set keySet = map.keySet();
Iterator it = keySet.iterator();
while (it.hasNext()) {             //遍历输出的name是Q5Q6Q1Q2Q3Q4
String key = (String) it.next();
out.write(key);
}
}

}


------ Solution ------------------------------------ --------
Set is an unordered collection , the corresponding order is treeset, but I have not tried it, you can find some relevant information
------ Solution - ------------------------------------------
request.getParameterValue (" ; " ) that are ordered. .
------ Solution ---------------------------------------- ----
HTTP protocol does not define in browser implementations must act in order to obtain form in the form that appears . To fend for themselves in accordance with the form name defined in the order you want . such as a1 a2 a3. way . Then take their own name when sorting obtain .



SortedSet temp = new SortedSet();
Enumeration enumeration = request.getParameterNames();
while (enumeration.hasMoreElements()) 
{
        temp.add((String)enumeration.nextElement());
}


------ For reference only ---------------------------------- -----

good I try
------ For reference only --------------------- ------------------


just know getParameterNames () to get the disorderly
------ For reference only ---------------------------------------
your parameters not there in the back corresponding attribute to receive it , or you can also in accordance with the corresponding property name obtained .
------ For reference only -------------------------------------- -

SortedSet temp = new TreeSet ();
It seems only the first and then took the custom sort the
------ For reference only ----------------------- ----------------

Adar , too many parameters will egg pain

没有评论:

发表评论