表單裡同時一次性提交多個

2021-09-27 02:00:43 字數 1565 閱讀 6320

4種方法讓springmvc接收多個物件

標籤: 表單提交陣列接收beanlistmolist接收json字串提交

問題背景:

我要在乙個表單裡同時一次性提交多名乘客的個人資訊到springmvc,前端html和springmvc controller裡該如何處理?

第1種方法:表單提交,以欄位陣列接收;

第2種方法:表單提交,以beanlistmodel接收;

第3種方法:將json物件序列化成json字串提交,以list接收;

第4種方法:將表單物件序列化成json字串提交,以list接收;

第4種方法其實是第3種方法的公升級,就是將表單轉成json物件,再轉成json字串提交;

然而,第4種方法還不支援含有多選控制項表單的提交,故應該還有第5種加強版的方法。

以上4種方法都共用同乙個user實體類,**如下:

public class user

list userlist = new arraylist();

for (int i = 0; i < id.length; i++ )

result = this.showuserlist(userlist);

return result;

第3種方法:將json物件序列化成json字串提交,以list接收

html**:

submituserlist_3

function submituserlist_3() );

customerarray.push();

$.ajax(

result = this.showuserlist(users);

return result;

第4種方法:將表單物件序列化成json字串提交,以list接收

html**:

submituserlist_4

//將表單序列化成json格式的資料(但不適用於含有控制項的表單,例如核取方塊、多選的select)

(function($);

var serializearray = this.serializearray();

// 先轉換成這種形式

$(serializearray).each(function () else else ,]的形式

var vcount = 0;

// 計算json內部的陣列最大長度

for(var item in jsondata1);

for(var item in jsondata1) else)(jquery);

function submituserlist_4()

result = this.showuserlist(users);

return result;

總結:第1、2種方法其實都有乙個共同的bug:假如提交三條記錄時,前面兩條記錄的某些欄位不填值的話,在springmvc裡接收不準確了。而且,每2種方法在hmtl中需要給name屬性新增[下標],如果下標有跨度的話(比如第一組控制項下標是0,第二組下標是2),那麼springmvc裡其實的是0到2三個物件的,預設下標是1的那個物件全為null值。

第3、4種方法最實用。

pip一次性安裝多個模組

建立乙個txt檔案,例如 requirements.txt,裡面寫入幾個模組,例如 django 2.1.5 psycopg2 2.7.7 django excel 0.0.10 pyexcel xls 0.5.8 然後需要安裝時,進入 requirements.txt 所在路徑,執行 pip in...

一次性成功

沒有人能隨隨便便成功 最近察覺到自己思維的乙個誤區,希望實現的目標第一次就成功,順順利利跳過失敗。這是大家都想要的結局,美好的期望總被現實的波浪所淹沒,因為失敗是避免不了的。一次性成功的想法導致焦慮,困惑,自我懷疑,這個時候如果放低要求換個角度思考,第一次失敗又如何,如果失敗了倒下了哪有怎樣?只要自...

檔案操作 一次性產生多個檔案

函式原型為 int sprintf char str,const char format,1 根據格式從字串中提取資料。如從字串中取出整數 浮點數和字串等。2 取指定長度的字串 3 取到指定字元為止的字串 4 取僅包含指定字符集的字串 5 取到指定字符集為止的字串 其實說白了,這個函式用法跟prin...