Day25SSMのSpringMVC一括削除操作

学習目標

  • (1)バッチ操作
  • (2)戻り値タイプ
  • (3)インターセプター

バッチ操作

  • (1)フォアグラウンドページはいつアレイをバックグラウンドに渡しますか?
    チェックボックスラベル
    を受け取る方法は2つあります

配列パラメータのバインド

》》配列
》》 QueryOVオブジェクト

  • (2)フロントエンドコード
    複数のチェックボックスが形成され、チェックボックスのチェックされた内容がサーバーのバックエンドに送信され、サーバーは受信します
  • (3)バックグラウンドコード
    ページが送信されたチェックボックスデータの場合、配列が返されます。受信するには配列を使用する必要があります。
  • (4)注:
    ここでのパラメーターグループの名前は、フォームチェックボックスのname属性の値と一致している必要があります

demo01_array.jsp

<%--           页面会将选中的复选框的值,需要让复选框使用同一个name
               程序认为需要将多个值 放到数组中,提交到后台
--%>
        <form method="post" action="${pageContext.request.contextPath}/delete1.action">
            <input type="checkbox" value="1" name="ids"/> 第 1条记录<br/>
            <input type="checkbox" value="2" name="ids"/> 第 2条记录<br/>
            <input type="checkbox" value="3" name="ids"/> 第 3条记录<br/>
            <input type="submit" value="提交数据到后台" > <br/>
        </form>

Demo01Controller

@Controller
public class Demo01Controller {
    
    
    @RequestMapping("delete1.action")
    public ModelAndView test01(Integer[] ids){
    
    //参数只需要写数组
        System.out.println(Arrays.toString(ids));
        return null;
    }
}

QueryOVオブジェクトバインディング

  • (1)新しいクラスを定義し、クラス内の配列メンバー変数を定義します
public class A{
    
    
     private 数据类型[] 变量名;
}
  • (2)フロントエンドコード
    フォームにはチェックボックスがあり、チェックボックスは同じ名前を使用します
  • (3)バックグラウンドコード
    メソッドパラメータは新しく定義されたクラスです

MyQueryOV

public class MyQueryOv {
    
    
    private Integer[] ids;

    public Integer[] getIds() {
    
    
        return ids;
    }

    public void setIds(Integer[] ids) {
    
    
        this.ids = ids;
    }
}

Demo01Controller

    @RequestMapping("delete2.action")
    public ModelAndView test02(MyQueryOv ov){
    
    //参数只需要写QueryOV类
        System.out.println(Arrays.toString(ov.getIds()));
        return null;
    }

おすすめ

転載: blog.csdn.net/u013621398/article/details/109066193