成人在线亚洲_国产日韩视频一区二区三区_久久久国产精品_99国内精品久久久久久久

您的位置:首頁技術(shù)文章
文章詳情頁

springboot返回modelandview頁面的實例

瀏覽:8日期:2023-04-15 14:33:25

1、添加依賴

這個應(yīng)該是web項目相關(guān)的jar

<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> </dependency>

<!-- jstl JSP標準標簽庫 --> <dependency> <groupId>javax.servlet</groupId> <artifactId>jstl</artifactId> <version>1.2</version> </dependency> <!-- 返回jsp頁面還需要這個依賴 --> <dependency> <groupId>org.apache.tomcat.embed</groupId> <artifactId>tomcat-embed-jasper</artifactId> <scope>provided</scope> </dependency>

2、application.properties

<parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId> <version>1.5.10.RELEASE</version> <relativePath/> <!-- lookup parent from repository --> </parent>

我這里是parent是1.5.10,所以jsp的配置應(yīng)該如下

#jsp pathspring.mvc.view.prefix=/WEB-INF/jsp/spring.mvc.view.suffix=.jsp老版本的應(yīng)該是這個spring.view.prefix=/WEB-INF/jsp/spring.view.suffix=.jsp

3、控制器

因為是返回頁面,所以不能用@RestController返回json格式

package com.example.demo.controller; import javax.servlet.http.HttpServletRequest;import javax.servlet.http.HttpServletResponse; import org.slf4j.Logger;import org.slf4j.LoggerFactory;import org.springframework.context.annotation.ComponentScan;import org.springframework.stereotype.Controller;import org.springframework.web.bind.annotation.RequestMapping;import org.springframework.web.bind.annotation.RequestMethod;import org.springframework.web.bind.annotation.ResponseBody;import org.springframework.web.bind.annotation.RestController;import org.springframework.web.servlet.ModelAndView; @Controller/*@ComponentScan*/@RequestMapping('/test')public class TestController { private final Logger log = LoggerFactory.getLogger(this.getClass()); @RequestMapping(value = 'queryMaterialType', method = RequestMethod.POST) public Object test(){ log.info('--------------->>打印日志'); return 'hellow world'; } //@RestController,返回json數(shù)據(jù) //@Controller,返回login.jsp頁面 @RequestMapping(value = '/login', method = RequestMethod.GET) public String login(HttpServletRequest request,HttpServletResponse response){ return 'login'; } //無論是@RestController還是@Controller都不影響返回頁面 @RequestMapping(value = '/loginPage', method = RequestMethod.GET) public ModelAndView loginPage(HttpServletRequest request,HttpServletResponse response){ ModelAndView mav = new ModelAndView(); mav.setViewName('login'); return mav; }}

補充知識:springBoot前后分離項目,通過ModelAndView返回給app或前臺靜態(tài)頁面

1.先做靜態(tài)頁模板aaa.html,放到springboot項目的根目錄下,如下如中,新建一個templates的文件夾,將靜態(tài)頁放到這里面就可以了

springboot返回modelandview頁面的實例

靜態(tài)頁代碼為

<!DOCTYPE html SYSTEM 'http://www.thymeleaf.org/dtd/xhtml1-strict-thymeleaf-spring4-4.dtd'><html xmlns='http://www.w3.org/1999/xhtml' xmlns:th='http://www.thymeleaf.org'><head> <meta http-equiv='Content-Type' content='text/html; charset=utf-8'/> <meta http-equiv='X-UA-Compatible' content='IE=EmulateIE7'> <meta name='viewport' content='width=device-width, initial-scale=0.0, user-scalable=no, minimum-scale=1.0, maximum-scale=1.0'> <meta content='yes' name='apple-mobile-web-app-capable'> <meta content='black' name='apple-mobile-web-app-status-bar-style'> <meta content='telephone=no' name='format-detection'> <title>標題</title> <style type='text/css'> body { margin-left: 0px; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; background: #f3f3f3; font-family: 'Microsoft YaHei ', '微軟雅黑', 'arial'; } h1 { height: 1px; width: 100%; margin: 10px 0; background: #f1f1f1; } img { width: 100%; height: auto; } .bodys { width: 100%; height: auto; overflow: Hidden; padding-top: 10px; padding-bottom: 50px; background: #fff; } .head { width: 96%; min-height: 30px; padding: 18px 2% 2px 2%; line-height: 25px; text-align: left; font-size: 20px; font-weight: bold; color: #111; } .time { width: 96%; height: 20px; line-height: 20px; font-size: 11px; text-align: left; padding: 0 2%; color: #999; } .info { width: 96%; height: auto; padding: 10px 2%; line-height: 25px; text-align: left; font-size: 15px; } </style></head> <body><div class='bodys'> <div th:text='${itle}'>未知</div> <div th:text='${addDate}'>未知</div> <h1></h1> <div th:utext='${content}'>未知</div></div></body></html>

2.然后主要是 controller層,業(yè)務(wù)邏輯根據(jù)自己的需求來

@RequestMapping('/html')@Controllerpublic class AppCommonHtmlController { @RequestMapping(value = '/ceshi', method = RequestMethod.GET) public ModelAndView getCeishi(“根據(jù)自己業(yè)務(wù)傳入需要的參數(shù)”) { ModelAndView modelAndView=new ModelAndView(); //根據(jù)自己的業(yè)務(wù),和靜態(tài)頁中的參數(shù)對應(yīng)上就行,也可以放入實體類,和靜態(tài)頁面對應(yīng)就行了 modelAndView.addObject('title',“標題”); modelAndView.addObject('addDate',“添加時間”); modelAndView.addObject('content',“內(nèi)容”); //存入靜態(tài)頁的名稱,就可以把處理好的靜態(tài)頁返回給app或前臺 modelAndView.setViewName('aaa'); return modelAndView; }}

然后瀏覽器輸入:http://localhost:8888/項目名/html/ceshi

該方法多適用于app端,需要根據(jù)不同的情況得到不一樣內(nèi)容的靜態(tài)頁展示到手機上,就可以通過這種方法,做一個靜態(tài)頁的模板,通過el表達式給模板不同的內(nèi)容,然后app端可以通過訪問的ip直接獲取到靜態(tài)頁

下面的方法也可以,效果同上面一樣

靜態(tài)頁代碼

<!DOCTYPE html SYSTEM 'http://www.thymeleaf.org/dtd/xhtml1-strict-thymeleaf-spring4-4.dtd'><html xmlns='http://www.w3.org/1999/xhtml' xmlns:th='http://www.thymeleaf.org'><head> <meta http-equiv='Content-Type' content='text/html; charset=utf-8'/> <meta http-equiv='X-UA-Compatible' content='IE=EmulateIE7'> <meta name='viewport' content='width=device-width, initial-scale=0.0, user-scalable=no, minimum-scale=1.0, maximum-scale=1.0'> <meta content='yes' name='apple-mobile-web-app-capable'> <meta content='black' name='apple-mobile-web-app-status-bar-style'> <meta content='telephone=no' name='format-detection'> <title>靜態(tài)頁</title> <style type='text/css'> body { margin-left: 0px; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; background: #f3f3f3; font-family: 'Microsoft YaHei ', '微軟雅黑', 'arial'; } h1 { height: 1px; width: 100%; margin: 10px 0; background: #f1f1f1; } img { width: 100%; height: auto; } .bodys { width: 100%; height: auto; overflow: Hidden; padding-top: 10px; padding-bottom: 50px; background: #fff; } .head { width: 96%; min-height: 30px; padding: 18px 2% 2px 2%; line-height: 25px; text-align: left; font-size: 20px; font-weight: bold; color: #111; } .time { width: 96%; height: 20px; line-height: 20px; font-size: 11px; text-align: left; padding: 0 2%; color: #999; } .info { width: 96%; height: auto; padding: 10px 2%; line-height: 25px; text-align: left; font-size: 15px; } </style></head> <body><div class='bodys'> <div th:text='${bbb.noticeTitle}'>未知</div> <div th:text='${bbb.publishDate}'>未知</div> <h1></h1> <div th:utext='${bbb.noticeContent}'>未知</div></div></body></html>

controller代碼

@RequestMapping(value = '/ceshi', method = RequestMethod.GET) public String getCeishi(“業(yè)務(wù)邏輯需要的入?yún)ⅰ? Model model) { SimpleDateFormat sdf = new SimpleDateFormat('yyyy-MM-dd HH:mm:ss'); JSONObject jsonObject = JSONObject.fromObject(“需要傳到靜態(tài)頁的動態(tài)數(shù)據(jù)”); jsonObject.remove('publishDate');//時間,具體作用不清楚,個人猜測是原本數(shù)據(jù)格式不支持,需要轉(zhuǎn)換一下,所以要先刪除后重新賦值 jsonObject.put('publishDate', sdf.format(notice.getPublishDate()));//時間重新賦值 model.addAttribute('bbb', jsonObject);//將轉(zhuǎn)換好的數(shù)據(jù)存入model中 return 'aaa'; //對應(yīng)好靜態(tài)頁的名稱return出去就可以了 }

以上這篇springboot返回modelandview頁面的實例就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持好吧啦網(wǎng)。

標簽: Spring
相關(guān)文章:
成人在线亚洲_国产日韩视频一区二区三区_久久久国产精品_99国内精品久久久久久久
精品视频全国免费看| 岛国一区二区在线观看| 国产成人在线免费观看| 在线观看亚洲一区| 亚洲777理论| 一本色道88久久加勒比精品| 国产夜色精品一区二区av| 成人黄页在线观看| 欧美一区二区三区视频免费| 国产一区二区三区精品视频| 日韩三级视频在线看| 国产高清亚洲一区| 日韩一区二区免费在线观看| 国产精品影音先锋| 欧美肥妇毛茸茸| 国产另类ts人妖一区二区| 欧美日韩国产首页| 九色|91porny| 欧美麻豆精品久久久久久| 韩国精品主播一区二区在线观看| 欧美性感一类影片在线播放| 三级精品在线观看| 欧美中文字幕一区二区三区| 蜜臀av性久久久久蜜臀aⅴ流畅| 久久久夜精品| 美女网站视频久久| 欧美二区乱c少妇| 成人av在线播放网址| 久久在线观看免费| 欧美日韩 国产精品| 专区另类欧美日韩| 香蕉久久夜色| 蜜臀av性久久久久蜜臀av麻豆| 欧美挠脚心视频网站| 成人激情校园春色| 日本一区二区三区在线观看| 国产精品分类| 日韩毛片精品高清免费| 国产亚洲午夜| 调教+趴+乳夹+国产+精品| 在线观看欧美黄色| 国产寡妇亲子伦一区二区| 2023国产一二三区日本精品2022| 欧美连裤袜在线视频| 亚洲视频一区二区在线观看| 国产日韩欧美一区| 日韩福利电影在线观看| 3751色影院一区二区三区| 97精品国产97久久久久久久久久久久 | 欧美精品色一区二区三区| 丰满岳乱妇一区二区三区| 久久综合99re88久久爱| 极品尤物久久久av免费看| 亚洲第一av色| 欧美精品v日韩精品v韩国精品v| av中文字幕亚洲| 亚洲欧美日韩一区二区| 91国产丝袜在线播放| 成人黄色软件下载| 亚洲天堂免费看| 老司机午夜精品视频| 国产黄色成人av| 国产精品久久久久久久久搜平片 | 欧美人与禽猛交乱配视频| 一区2区3区在线看| 欧美三级资源在线| 91丨九色丨蝌蚪富婆spa| 亚洲专区一二三| 欧美一区午夜视频在线观看 | 91麻豆精品视频| 亚洲自拍偷拍麻豆| 欧美伦理影视网| 欧美日韩一区二区三区在线视频| 亚洲成人av电影在线| 91精品久久久久久蜜臀| 激情欧美日韩一区| 蜜臀av性久久久久蜜臀aⅴ四虎| 久久综合色婷婷| 国产日韩欧美三区| 国产高清无密码一区二区三区| 国产精品激情偷乱一区二区∴| 在线中文字幕不卡| 欧美+日本+国产+在线a∨观看| 午夜激情一区二区三区| 久久五月婷婷丁香社区| 欧美资源在线| eeuss鲁一区二区三区| 亚洲老司机在线| 91精品国产综合久久久久久久 | 99av国产精品欲麻豆| 精品中文字幕一区二区| 欧美国产欧美亚州国产日韩mv天天看完整 | 日韩精品电影在线| 国产午夜久久久久| 久久亚洲视频| 欧美日韩亚洲三区| 精品一二线国产| 国产精品不卡一区二区三区| 欧美日韩国产一区二区三区地区| 亚洲激情成人| 成人激情图片网| 日韩电影在线观看电影| 国产午夜精品美女毛片视频| 色婷婷av一区二区三区大白胸| 欧美日韩伊人| 国产精品自拍在线| 亚洲综合精品久久| 久久久.com| 激情欧美日韩| aaa亚洲精品| 激情综合色综合久久| 亚洲精品成人在线| 精品国产一区二区三区久久久蜜月 | 欧美日韩视频专区在线播放| 亚洲国产精品毛片| 成人性生交大片免费| 午夜精品视频一区| 中文字幕一区二区三区在线播放| 91精品国产免费久久综合| 国产区欧美区日韩区| 91麻豆福利精品推荐| 国产精品99久| 免费观看成人av| 一区二区国产视频| 国产女人水真多18毛片18精品视频 | 欧美成人艳星乳罩| 色婷婷久久综合| 亚洲高清视频一区二区| 成人福利视频网站| 免费亚洲电影在线| 一区二区欧美视频| 国产精品伦一区二区三级视频| 精品国产污网站| 欧美日本视频在线| 色综合久久久久| 国产伦精品一区二区| 136国产福利精品导航网址| av激情综合网| 国产精品自拍网站| 麻豆精品一区二区综合av| 亚洲成人www| 亚洲一区二三区| 亚洲精品水蜜桃| 亚洲视频一二三| 中文字幕人成不卡一区| 亚洲精品一区二区三区蜜桃下载 | 亚洲欧美一级二级三级| 成人性生交大片免费看中文 | 久久久久国产精品一区二区| 99精品国产在热久久下载| 欧美午夜视频| 欧美片第1页综合| 99国产精品99久久久久久| 成人成人成人在线视频| 国产精品一区二区三区99| 蜜桃免费网站一区二区三区| 日韩成人伦理电影在线观看| 亚洲福利一区二区三区| 夜夜嗨av一区二区三区中文字幕| 国产精品区一区二区三区| 国产精品a级| 亚洲国产激情av| 国产精品77777竹菊影视小说| 99在线精品免费| 成人听书哪个软件好| 国产成人综合网站| 精品制服美女丁香| 免费成人在线观看视频| 日本vs亚洲vs韩国一区三区| 天使萌一区二区三区免费观看| 日韩美女视频一区| 最新日韩在线视频| 国产欧美在线观看一区| 26uuu欧美| 国产情人综合久久777777| 国产亚洲欧洲997久久综合| 国产日韩欧美不卡| 国产精品麻豆99久久久久久| 国产精品久久久久天堂| 亚洲色欲色欲www在线观看| 亚洲视频图片小说| 一区二区三区精品在线| 午夜视频在线观看一区二区三区| 天天综合天天综合色| 美国欧美日韩国产在线播放| 日本欧美一区二区| 久久国内精品自在自线400部| 精品一区二区三区影院在线午夜| 国产一区在线精品| 成人av网站免费观看| 91蜜桃视频在线| 亚洲高清视频在线观看| 亚洲一区二区三区免费在线观看| 久久国产主播| 欧美日本一区二区三区| 欧美一区二区三区啪啪| 久久久亚洲高清| 国产精品久久久久久久久搜平片| 亚洲女人的天堂| 日日摸夜夜添夜夜添国产精品|