天天看點

ModelAndView對象

當控制器處理完請求時,通常會将包含視圖名稱或視圖對象以及一些模型屬性的ModelAndView對象傳回到DispatcherServlet。

是以,經常需要在控制器中構造ModelAndView對象。ModelAndView類提供了幾個重載的構造器和一些友善的方法,

讓你可以根據自己的喜好來構造ModelAndView對象。這些構造器和方法以類似的方式支援視圖名稱和視圖對象。

當你隻有一個模型屬性要傳回時,可以在構造器中指定該屬性來構造ModelAndView對象

建構你的ModelAndView對象

@RequestMapping(value = "/list")

public ModelAndView list(Page page) {

logBefore(logger, "清單Info");

if (Jurisdiction.buttonJurisdiction(menuUrl, "cha") || Jurisdiction.buttonJurisdiction(fczsUrl, "cha")) {

ModelAndView mv = this.getModelAndView();

PageData pd = new PageData();

Subject currentUser = SecurityUtils.getSubject(); // shiro管理的session

Session session = currentUser.getSession();

User user = (User) session.getAttribute(Const.SESSION_USER);

List<PageData> varList = new ArrayList<PageData>();

try {

pd = this.getPageData();

String TITLE = pd.getString("TITLE");

if (null != TITLE && !"".equals(TITLE)) {

pd.put("TITLE", TITLE);

}

String STATE = pd.getString("STATE");

if (null != STATE && !"".equals(STATE)) {

pd.put("STATE", STATE);

}

if (user != null) {

if ("2".equals(user.getRole().getROLE_ID())||"1".equals(user.getUSER_ID())) {

page.setPd(pd);

varList = infoService.list(page); // 列出Info清單

}else{

if("1".equals(user.getMANAGER())){

String KEYW = user.getRole().getROLR_NUMBER();

pd.put("KEYW", KEYW);

page.setPd(pd);

varList = infoService.list(page); // 列出Info清單

}else{

pd.put("USER_ID", user.getUSER_ID());

page.setPd(pd);

varList = infoService.list(page); // 列出Info清單

}

}

mv.setViewName("weixin/info/infoAll");

mv.addObject("varList", varList);

mv.addObject("pd", pd);

mv.addObject(Const.SESSION_QX, this.getHC()); // 按鈕權限

}

} catch (Exception e) {

logger.error(e.toString(), e);

}

return mv;

}else{

return null;

}

}

周遊集合可使用jstl表達式,需在jsp中引入頭檔案

[html]  view plain copy

ModelAndView對象
ModelAndView對象
  1. <%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>  

lib下導入jstl.jar和standard.ja

首先這兩個jar在哪裡可以找到,當然可以在網上下載下傳。

另外在tomcat下面就有,在\webapps\examples\WEB-INF\lib下

前提是你還沒有把webapps下面的一些無用項目删掉。

text.jsp

[html]  v

  1.  <tr>

    <td style="width:70px;text-align: right;padding-top: 13px;">作者:</td>

    <td><input style="width:90%;" type="text" name="AUTHOR" id="AUTHOR" value="${pd.AUTHOR}" maxlength="32" placeholder="這裡輸入作者" title="作者"/></td>

    </tr>

    <tr style="display:none;" id="jiedaoshow">

       <td style="width:70px;text-align: right;padding-top: 13px;">街道:</td>

       <td>

    <select name=jiedaoid id="jiedao" class="input_txt"  title="街道" onChange="seleChange();">

    <option value="">--請選擇--</option>

    <c:forEach items="${jiedaoList}" var="var" varStatus="vs">

                        <option value="${var.id}">${var.name}</option>

                        </c:forEach>

    </select>

      </td>

    </tr>