0

データベースからのデータの挿入、削除、表示を追加したサーブレットファイルを作成しました。

挿入されたデータの更新を追加したいのですが、完了できません。コード全体を単一のファイルに追加したため、追加方法がわかりません。誰でも私を助けることができますか?? 返事を待っています。

        if(req.getParameter("choise")!=null)    {
            nm = req.getParameter("choise");

            idr = "UPDATE student SET rollno = ?, class = ?, mobileno = ? WHERE name ='"+nm+"'";

            try {
                st=con.createStatement();
                int rs1 = st.executeUpdate(idr);
                pwinsert.println(rs1);
            }
            catch (Exception e) {
                e.getMessage();
                System.out.println("Error " +e);
            }

            System.out.println("Data Edited...");

        }
4

3 に答える 3

0

CRUD 操作ごとに異なるサーブレットを作成できます。フラグ変数を使用しても、どの CRUD 操作に従うべきかを認識できますが、これは良い方法ではありません。このリンクを確認してください

于 2013-06-10T04:45:15.067 に答える
0
 if(req.getParameter("choise")!=null)    {
            nm = req.getParameter("choise");
            if(nm.equals("UPDATE")){ idr = "UPDATE student SET rollno = ?, class = ?, mobileno = ? WHERE name ='"+nm+"'";

            try {
                st=con.createStatement();
                int rs1 = st.executeUpdate(idr);
                pwinsert.println(rs1);
            }
            catch (Exception e) {
                e.getMessage();
                System.out.println("Error " +e);
            }

            System.out.println("Data Edited...");



}else if(nm.equals("ADD")){

idr = "<INSERT QUERY>";

            try {
                st=con.createStatement();
                int rs1 = st.executeQuery(idr);
                pwinsert.println(rs1);
            }
            catch (Exception e) {
                e.getMessage();
                System.out.println("Error " +e);
            }

            System.out.println("Data inserted...");


}


        }
于 2013-06-10T06:03:23.667 に答える
0

これはあなたが望むことをするはずです

String nm = req.getParameter("name");
String roll = req.getParameter("roll");
String clas = req.getParameter("clas");
String mono = req.getParameter("mono");

if(req.getParameter("choise")!=null)    {
    nm = req.getParameter("choise");

    idr = "UPDATE student SET rollno = ?, class = ?, mobileno = ? WHERE name = ?";

    try {
        PreparedStatement pst=con.prepareStatement(idr);
        pst.setString(1,roll);
        pst.setString(2,class);
        pst.setString(3,mono);
        pst.setString(4,nm);

        int rs1 = st.executeUpdate(idr);
        pwinsert.println(rs1);
    } catch (Exception e) {
        e.getMessage();
        System.out.println("Error " +e);
    }

    System.out.println("Data Edited...");

}

たとえば、コードをメソッドに分割することをお勧めします。

public void doGet(HttpServletRequest req, HttpServletResponse res)
        throws IOException, ServletException    {

    String nm = req.getParameter("name");
    String roll = req.getParameter("roll");
    String clas = req.getParameter("clas");
    String mono = req.getParameter("mono");

    Connection conn = getDatabaseConnection();
    Statement sql = createSqlStatement(conn, nm ,roll, clas, mono);

    processSqlStatement(conn,sql);

    createOutput(req,res);

}

新しいものを維持したり追加したりするのがずっと簡単になります。

于 2013-06-10T06:09:10.677 に答える