SpringMVC接收簡單引數建立物件測試

2021-08-28 04:46:10 字數 2358 閱讀 8125

}}得到輸出為

預設構造方法

mark,12

student

可見springmvc會建立物件,卻無法對其賦值。

public class student 

@override

public string tostring() ';

}}

得到輸出為

兩個引數的構造方法

mark,12

student

說明springmvc會通過呼叫有參構造方法來建立物件並賦值

public class student 

@override

public string tostring() ';

}public string getname()

public void setname(string name)

public integer getage()

public void setage(integer age)

}

得到輸出為

預設構造方法

mark,12

student

說明在這種情況下,springmvc會通過呼叫無參構造方法來建立物件,並用getter,setter給物件賦值。

這種情況下springmvc會怎樣給引數物件賦值呢?

public class student 

public student(string name, integer age)

public string getname()

public void setname(string name)

public integer getage()

public void setage(integer age)

@override

public string tostring() ';

}}

輸出為 

預設構造方法

mark,12

student

結果已經很明顯了,springmvc會優先使用測試3的方法給引數物件賦值。

public class student 

public student(string name, integer age)

public string getname()

public void setname(string name)

@override

public string tostring() ';

}}

輸出為

預設構造方法

mark,12

student

springmvc還是會去呼叫預設構造方法。

會報錯還是賦null值呢?

}}輸出為

兩個引數的構造方法

null,null

student

答案是賦null值。

會怎樣呢?

}答案是會報錯

錯誤原因是不能給基本資料型別賦null值。

(本測試基於springmvc 5.0.8)

Spring MVC接收引數

1.和servletapi緊耦方法 使用原生 servletapi 使用原有的request物件進行獲取 只需要在方法內容宣告request形參即可,servlet在呼叫的時候會自動賦值。按照request的使用方式正常使用即可 springmvc引數優點 沒有引數,不賦值,正常執行 有引數,則給引...

SpringMVC接收陣列引數

今天專案中需要批量刪除的功能 首先想的2個解決方案 方案1 將所有需要刪除的資料的id拼接成一串字串,傳到後台再分割字串,然後實現刪除 方案2 前端將需要刪除的id存入陣列物件,然後整個物件傳到後台,後台list接收,然後實現刪除 終上方案的綜合優勢,使用了方案二 首先前端使用jquery的ajax...

SpringMvc接收日期引數

1.controller方法通過 datetimeformat註解來接收引數 requestparam starttime datetimeformat pattern yyyy mm dd hh mm ss date starttime 2.設定initbinder接收引數1 initbinder...