詳解SpringBoot中Controller接收對象列表實現(xiàn)
如果Spring Boot中對應(yīng)的Controller要接收一個對象,該對象中又存放了一個List列表,那么頁面該如何傳遞相關(guān)應(yīng)的參數(shù)信息呢。
本篇文章給大家一個簡單的示例,提供一種實現(xiàn)方式。
實體類
首先看實體類的結(jié)構(gòu)(注意使用了Lombok):
@Datapublic class Rules { private List<Rule> rules;}
對應(yīng)Rule實體類代碼如下:
@Datapublic class Rule { /** * 類名 */ private String className; /** * 字段名稱 */ private String column; /** * 操作符 */ private String operate; /** * 對應(yīng)值 */ private String value;}
對應(yīng)Controller方法
@Controllerpublic class ManagerRulesController { @PostMapping('/rules/add') public String addDrl(Rules rules) { if (rules != null) { List<Rule> ruleList = rules.getRules(); for (Rule rule : ruleList) { // 具體業(yè)務(wù)處理 } return 'result'; }}
對應(yīng)頁面呈現(xiàn)
<!DOCTYPE html><html><head> <meta charset='UTF-8'> <title>規(guī)則頁面管理頁面</title> <link rel='stylesheet' rel='external nofollow' /></head><body class='container'><h4>頁面拼接模式</h4><form method='post' action='/rules/add'> <#--第一條條件--> <div id='condition-0'> <div class='form-group'> <label>金額:</label> <input type='hidden' name='rules[0].column' value='amount'> 操作屬性操作: <select name='rules[0].operate'><option value='>'>大于</option><option value='<'>小于</option> </select> 屬性值: <input type='text' name='rules[0].value' placeholder='輸入值' value='1'> </div> </div> <div id='condition-1'> <div class='form-group'> <label>金額:</label> <input type='hidden' name='rules[1].column' value='amount'> 操作屬性操作: <select name='rules[1].operate'><option value='<'>小于</option><option value='>'>大于</option> </select> 屬性值: <input type='text' name='rules[1].value' placeholder='輸入值' value='100'> </div> </div> <button type='submit' class='btn btn btn-info'>提交</button></form></body></html>
注意要提交的頁面元素的name值為“rules[1].column”。通過這種形式來指定列表中的第幾個元素的具體屬性值是什么。
到此這篇關(guān)于詳解SpringBoot中Controller接收對象列表實現(xiàn)的文章就介紹到這了,更多相關(guān)SpringBoot中Controller接收對象列表內(nèi)容請搜索好吧啦網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持好吧啦網(wǎng)!
相關(guān)文章:
