无法在servlet / jsp中添加或更新记录

时间:2014-05-19 12:48:12

标签: java jsp servlets

我正在尝试使用post方法提交表单,如:

<form action="/context/controller" method="post">
    <input type="hidden" name="update" value="add_record"/>
        <table>
            <tr>
                <td>Name : </td>
                <td><input type="text" name="u_name" /></td>                        
            </tr>
            <tr>
                <td>Visible :</td>
                <td>
                    <input type="radio" name="visible" value="0"/> No
                    &nbsp;
                    <input type="radio" name="visible" value="1"/> Yes  
                </td>       
            </tr>
            <tr>
                <td>&nbsp;</td>
                <td><input type="submit" value="Add record"/>
                &nbsp;
                <input type="reset" value="Reset"/></td>
            </tr>
        </table>
</form>

我将控制器servlet的doPost()中的表单数据作为:

String updateParam = request.getParameter("update");
System.out.println("Param value : " + updateParam); 
if (updateParam.equals("add_record")) {
        recordDAO = new RecordDAO();
        System.out.println("add if true Param value : " + updateParam);
        Record record = new Record();
        String name = request.getParameter("u_name");
        String visible = request.getParameter("visible");
        record.setName(name);
        subject.setVisible(visible);        
        recordDAO.addRecord(record);
        request.getRequestDispatcher("/view.jsp").forward(
                request, response);
    }

这一行

System.out.println("Param value : " + updateParam); 

在控制台上打印Param value : add_record,但如果条件永远不会变为真,那么我就无法添加记录,请告诉我哪里的错误会阻止执行条件的代码。

1 个答案:

答案 0 :(得分:0)

“add_record”之前有一个空格,这就是为什么你的条件永远不会变成true

所以将条件修改为if (updateParam.equals(" add_record")) {或者我更喜欢修改你的参数以输出没有空格的字符串。