前言
model和session都是存放信息的地方,不同的地方就是他們的生命週期不同,model是request級別的 。
- 1.request的生命週期是request請求域,一個請求結束,則request結束,作用閾只在請求的頁面中~,然後在轉發進入的頁面就可以獲取到你的值,
- 2.session的生命週期是session會話域,打開一個瀏覽器請求一個網站的頁面後,關閉瀏覽器則session結束,作用閾是全局的~
如果在session中保存了數據,那麼在你這個無論你在哪個頁面,在什麼時候都可以獲取到這個值,全局的,只要你的這個程序是啓動的。
比例OderController
/**
* 跳轉到添加客戶
*/
@RequestMapping("/order_add")
public String OrderAdd(Model model) {
modelAddAttribute(model);
return PREFIX + "order_add.html";
}
private Model modelAddAttribute(Model model) {
DictParam dictParam2 = new DictParam();
dictParam2.setDictTypeId(1339386600366989314l);//支付類型
List<Dict> list_pay_type = this.dictService.findListBySpec_my(dictParam2);
model.addAttribute("payTypes", list_pay_type);
dictParam2.setDictTypeId(1339410106504896514L);////發票類型
List<Dict> list_bill_type = this.dictService.findListBySpec_my(dictParam2);
model.addAttribute("billTypes", list_bill_type);
dictParam2.setDictTypeId(1342385901179383810L);////贈送內容
List<Dict> list_gift_content = this.dictService.findListBySpec_my(dictParam2);
model.addAttribute("giftContents", list_gift_content);
dictParam2.setDictTypeId(1339396544399073282L);//訂單進度狀態
List<Dict> orderProcessStatus = this.dictService.findListBySpec_my(dictParam2);
model.addAttribute("orderProcessStatus", orderProcessStatus);
List<Product> products = productService.getProducts();
model.addAttribute("products", products);
return model;
}
order_add.html實現下拉框
<div class="layui-form-item">
<label class="layui-form-label">業務名稱<span style="color: red;">*</span></label>
<div class="layui-input-block">
<select name="productId" lay-verify="required" lay-filter ="productId">
<option value="">請選擇業務</option>
@ for(product in products){
<option value=${product.productId}>${product.name}</option>
@}
<!--<option value="1">短信</option>-->
<!--<option value="2">CRM充值</option>-->
<!--<option value="3">CRM續費</option>-->
<!--<option value="4">歡客訂購</option>-->
<!--<option value="5">走心訂購</option>-->
<!--<option value="6">定製</option>-->
<!--<option value="99">其他</option>-->
</select>
</div>
</div>
參考
SpringBoot Controller接收參數的幾種方式盤點
springmvc的model.addAttribute用法
SpringMVC獲取頁面表單參數的幾種方式,setAttribute,addAttribute,modelAttribute,path