W3Cschool
恭喜您成為首批注冊(cè)用戶
獲得88經(jīng)驗(yàn)值獎(jiǎng)勵(lì)
WebMVC模塊支持多種視圖技術(shù),包括JSP、Freemarker、Velocity、Text、HTML、JSON、Binary、Forward、Redirect、HttpStatus等,也可以通過IView接口擴(kuò)展實(shí)現(xiàn)自定義視圖;
- 通過返回IView接口類型;
- 通過字符串表達(dá)一種視圖類型;
- 無返回值或返回值為空,將使用當(dāng)前RequestMapping路徑對(duì)應(yīng)的JspView視圖;
控制器視圖文件基礎(chǔ)路徑,必須是以 '/' 開始和結(jié)尾,默認(rèn)值為/WEB-INF/templates/;
ymp.configs.webmvc.base_view_path=/WEB-INF/templates/
視圖文件可以省略擴(kuò)展名稱,通過IView接口可以直接設(shè)置請(qǐng)求參數(shù)和內(nèi)容類型;
// 通過View對(duì)象創(chuàng)建視圖對(duì)象 IView _view = View.jspView("/demo/test") .addAttribute("attr1", "value") .addAttribute("attr2", 2) .addHeader("head", "value") .setContentType(Type.ContentType.HTML.getContentType()); // 直接創(chuàng)建視圖對(duì)象 _view = new JspView("/demo/test"); // 下面三種方式的結(jié)果是一樣的,使用請(qǐng)求路徑對(duì)應(yīng)的視圖文件返回 _view = View.jspView(); _view = JspView.bind(); _view = new JspView();
JspView:JSP視圖;
View.jspView("/demo/test.jsp"); // = "jsp:/demo/test"
FreemarkerView:Freemarker視圖;
View.freemarkerView("/demo/test.ftl"); // = "freemarker:/demo/test"
VelocityView:Velocity視圖;
View.velocityView("/demo/test.vm"); // = "velocity:/demo/test"
TextView:文本視圖;
View.textView("Hi, YMPer!"); // = "text:Hi, YMPer!"
HtmlView:HTML文件內(nèi)容視圖;
View.htmlView("<p>Hi, YMPer!</p>"); // = "html:<p>Hi, YMPer!</p>"
JsonView:JSON視圖;
// 直接傳遞對(duì)象 User _user = new User(); user.setId("..."); ... View.jsonView(_user); // 傳遞JSON字符串 View.jsonView("{id:\"...\", ...}"); // = "json:{id:\"...\", ...}"
BinaryView:二進(jìn)制數(shù)據(jù)流視圖;
// 下載文件,并重新指定文件名稱 View.binaryView(new File("/temp/demo.txt")) .useAttachment("測(cè)試文本.txt"); // = "binary:/temp/demo.txt:測(cè)試文本.txt"若不指定文件名稱,則回應(yīng)頭中將不包含 "attachment;filename=xxx"
ForwardView:請(qǐng)求轉(zhuǎn)發(fā)視圖;
View.forwardView("/demo/test"); // = "forward:/demo/test"
RedirectView:重定向視圖;
View.redirectView("/demo/test"); // = "redirect:/demo/test"
HttpStatusView:HTTP狀態(tài)視圖
View.httpStatusView(404); // = "http_status:404" View.httpStatusView(500, "系統(tǒng)忙, 請(qǐng)稍后再試..."); // = "http_status:500:系統(tǒng)忙, 請(qǐng)稍后再試..."
NullView:空視圖;
View.nullView();
Copyright©2021 w3cschool編程獅|閩ICP備15016281號(hào)-3|閩公網(wǎng)安備35020302033924號(hào)
違法和不良信息舉報(bào)電話:173-0602-2364|舉報(bào)郵箱:jubao@eeedong.com
掃描二維碼
下載編程獅App
編程獅公眾號(hào)
聯(lián)系方式:
更多建議: