最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

SpringMVC通過模型視圖ModelAndView渲染視圖的實現(xiàn)

 更新時間:2020年12月01日 11:21:23   作者:0和1搭建網(wǎng)絡(luò)世界  
這篇文章主要介紹了SpringMVC通過模型視圖ModelAndView渲染視圖的實現(xiàn),文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧

SpringMVC通過模型視圖ModelAndView渲染視圖大致流程

在這里插入圖片描述

代碼樣例

1.準備工作
A.因為文中用到j(luò)sp,所以需要引入jsp標準標簽庫standard.jar和jstl.jar
官方下載地址:http://archive.apache.org/dist/jakarta/taglibs/standard/binaries/
本地下載地址:lib_jb51.rar
B.添加Tomcat依賴如下:

<dependency>
			<groupId>org.springframework.boot</groupId>
			<artifactId>spring-boot-starter-tomcat</artifactId>
			<scope>provided</scope>
		</dependency>
		<dependency>
			<groupId>org.apache.tomcat.embed</groupId>
			<artifactId>tomcat-embed-jasper</artifactId>
			<scope>provided</scope>
		</dependency>

2.Web服務(wù)器發(fā)送請求

http://localhost:8080/user/details?id=12

@Controller
@Slf4j
@RequestMapping("/user")
public class UserController {
	@Autowired
	private UserService userService = null;
	
	@RequestMapping("details")
	public ModelAndView details(Long id){
		User user = userService.getUser(id);
		log.info("獲取到的user對象-->"+user.toString());
		ModelAndView mv = new ModelAndView();//新建一個模型和視圖對象
		mv.setViewName("user/details");//設(shè)置模型視圖名稱
		mv.addObject("user",user);//加入數(shù)據(jù)模型
		return mv;//返回視圖和模型
	}
	
}

A.根據(jù)請求路徑/user/details通過HandlerMapper機制就能找到對應(yīng)的控制器進行響應(yīng)。返回一個HandlerExecutionChain對象,而HandlerExecutionChain對象中的handler(處理器)需要運行,需要處理器適配器HandlerAdapter接口定義的實現(xiàn)類。
B.在處理器調(diào)用控制器(controller)時,先通過模型層得到數(shù)據(jù),再放入數(shù)據(jù)模型中,最后返回模型和視圖對象。這里的模型視圖名稱為user/details,走到視圖解析器(ViewResolver),解析視圖邏輯名稱。

spring.mvc.view.prefix=/WEB-INF/jsp/
spring.mvc.view.suffix=.jsp

C.為了定制InternalResourceViewResolver初始化,可以在配置文件application.properties(或yml文件)中進行配置,代碼如上。
D.它會以前綴(prefix)和后綴(suffix)以及視圖名稱組成全路徑定位視圖。
此例組成的全路徑為:/WEB-INF/jsp/user/details.jsp

在這里插入圖片描述

jsp存放位置如上:

<%@ page pageEncoding="UTF-8"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
<html>
<head>
 <title>用戶詳情</title>
</head>
<body>
	<center>
		<table border="1">
			<tr>
				<td>標簽</td>
				<td>值</td>
			</tr>
			<tr>
				<td>用戶編號</td>
				<td><c:out value="${user.id}"></c:out></td>
			</tr>
			<tr>
				<td>用戶名稱</td>
				<td><c:out value="${user.userName}"></c:out></td>
			</tr>
			<tr>
				<td>用戶備注</td>
				<td><c:out value="${user.note}"></c:out></td>
			</tr>
		</table>
	</center>
</body>
</html>

E.視圖解析器定位到視圖后,視圖的作用就是將數(shù)據(jù)模型渲染。這樣就能看到結(jié)果

到此這篇關(guān)于SpringMVC通過模型視圖ModelAndView渲染視圖的實現(xiàn)的文章就介紹到這了,更多相關(guān)SpringMVC ModelAndView渲染視圖內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Java WeakHashMap案例詳解

    Java WeakHashMap案例詳解

    這篇文章主要介紹了Java WeakHashMap案例詳解,本篇文章通過簡要的案例,講解了該項技術(shù)的了解與使用,以下就是詳細內(nèi)容,需要的朋友可以參考下
    2021-08-08
  • Flask實現(xiàn)異步非阻塞請求功能實例解析

    Flask實現(xiàn)異步非阻塞請求功能實例解析

    這篇文章主要介紹了Flask實現(xiàn)異步非阻塞請求功能實例解析,分享了相關(guān)代碼示例,小編覺得還是挺不錯的,具有一定借鑒價值,需要的朋友可以參考下
    2018-02-02
  • Java socket字節(jié)流傳輸示例解析

    Java socket字節(jié)流傳輸示例解析

    這篇文章主要為大家詳細介紹了Java socket字節(jié)流傳輸示例,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2016-09-09
  • springboot注冊bean的三種方法

    springboot注冊bean的三種方法

    這篇文章主要介紹了springboot注冊bean的三種方法,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2019-02-02
  • Java實現(xiàn)順序棧原理解析

    Java實現(xiàn)順序棧原理解析

    這篇文章主要介紹了Java實現(xiàn)順序棧原理解析,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2019-11-11
  • java this 用法詳解及簡單實例

    java this 用法詳解及簡單實例

    這篇文章主要介紹了java this 用法詳解及簡單實例的相關(guān)資料,需要的朋友可以參考下
    2017-03-03
  • 深入理解Java中線程間的通信

    深入理解Java中線程間的通信

    一般來講,線程內(nèi)部有自己私有的線程上下文,互不干擾。但是當我們需要多個線程之間相互協(xié)作的時候,就需要我們掌握Java線程的通信方式。本文將介紹Java線程之間的幾種通信原理,需要的可以參考一下
    2022-11-11
  • @CacheEvict中的allEntries與beforeInvocation的區(qū)別說明

    @CacheEvict中的allEntries與beforeInvocation的區(qū)別說明

    這篇文章主要介紹了@CacheEvict中的allEntries與beforeInvocation的區(qū)別說明,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2021-12-12
  • java批量下載生成zip壓縮包的思路詳解

    java批量下載生成zip壓縮包的思路詳解

    這篇文章主要介紹了java批量下載生成zip壓縮包的思路詳解,設(shè)計思路大概是本地先創(chuàng)建一個zip文件,將批量下載的文件依次放入zip文件中,將zip文件返回給前端,本文結(jié)合實例代碼講解的非常詳細,需要的朋友可以參考下
    2024-01-01
  • SpringBoot3集成MyBatis詳解

    SpringBoot3集成MyBatis詳解

    MyBatis是一款開源的持久層框架,它極大地簡化了與數(shù)據(jù)庫的交互流程,MyBatis更具靈活性,允許開發(fā)者直接使用SQL語句與數(shù)據(jù)庫進行交互,本文將詳細介紹在Spring Boot項目中如何集成MyBatis,以實現(xiàn)對數(shù)據(jù)庫的輕松訪問和操作,需要的朋友可以參考下
    2023-12-12

最新評論

沛县| 聂拉木县| 诸暨市| 浠水县| 郁南县| 华蓥市| 东方市| 博湖县| 牟定县| 贺州市| 泗洪县| 军事| 长治市| 金昌市| 东丰县| 沙湾县| 双鸭山市| 景东| 新邵县| 涞水县| 井研县| 安阳县| 高雄市| 桃源县| 金山区| 高淳县| 石河子市| 延津县| 罗平县| 衡山县| 尉犁县| 全南县| 突泉县| 巴东县| 昌图县| 广东省| 积石山| 黄梅县| 遵义县| 论坛| 沅江市|