SpringMVC+JSP:將ModelMap/Model中的資料填充到填充到jsp
阿新 • • 發佈:2019-01-06
我們來了解下使用jsp讀取ModelMap/Model中的資料。
1、ModelMap/Model中存放一個物件Role
Role r = new Role();
r.setRolecode("ADMIN");
r.setRolename("管理者");
r.setRoleid(UniqueSeq.shortUUID());
model.addAttribute("roles", r);
return "zpl/testview/test";
那麼在jsp中我們引用該物件的值應該為:
<h1>角色資訊02</h1>
<div id="roleid">${roles.getRoleid()} </div>
<div id="roldcode">${roles.getRolecode()}</div>
<div id="rolename">${roles.getRolename()}</div>
2、ModelMap/Model中存放一個物件使用addAttribute(object o)
Role r = new Role();
r.setRolecode("ADMIN");
r.setRolename("管理者");
r.setRoleid(UniqueSeq.shortUUID());
// model.addAttribute("roles", r);
// 我們如果使用ReturnMsg返回一個json字串,那麼就沒辦法顯示到jsp頁面使用${}.
ReturnMsg msg = new ReturnMsg();
msg.getDatatable().put("roles", r);
model.addAttribute(r);
model.addAttribute("你好");
return return2page(response, msg, "zpl/testview/test");
在jsp中值為:
<h1>角色資訊02</h1>
<div id="roleid">${role.getRoleid()}</div>
<div id="roldcode">${role.getRolecode()}</div>
<div id="rolename">${role.getRolename()}</div>
3、在ModelMap/Model中存放一個list物件時,
List<Role> list=new ArrayList<Role>();
Role r = new Role();
r.setRolecode("ADMIN");
r.setRolename("管理者");
r.setRoleid(UniqueSeq.shortUUID());
Role r1 = new Role();
r1.setRolecode("user");
r1.setRolename("使用者");
r1.setRoleid(UniqueSeq.shortUUID());
list.add(r1);
list.add(r);
// model.addAttribute("roles", r);
// 我們如果使用ReturnMsg返回一個json字串,那麼就沒辦法顯示到jsp頁面使用${}.
ReturnMsg msg = new ReturnMsg();
msg.getDatatable().put("roles", r);
model.addAttribute(list);
/**
* 下面這種model中的可以值為string,但是後面的會覆蓋前面的
*/
model.addAttribute("你好");
model.addAttribute("你buhao好");
return return2page(response, msg, "zpl/testview/test");
在jsp中我們獲取方式:
<h1>角色資訊03</h1>
<div id="roleid">${roleList.get(1).getRoleid()}</div>
<div id="roldcode">${roleList.get(1).getRolecode()}</div>
<div id="rolename">${roleList.get(1).getRolename()}</div>
<div id="str">${string}</div>
還有一種就是使用<c:forEach>標籤
其實我們上述方法主要是看我們的資料在ModelMap/Model中存放的key值,使用${key.}獲取到我們想要的資料
如圖: