<em>Mac</em>Book项目 2009年学校开始实施<em>Mac</em>Book项目,所有师生配备一本<em>Mac</em>Book,并同步更新了校园无线网络。学校每周进行电脑技术更新,每月发送技术支持资料,极大改变了教学及学习方式。因此2011
2021-06-01 09:32:01
Spring mvc是基於Spring的一個模組,專門做web開發,可以理解為是Servlet的升級
在Spring MVC框架當中,Controller替代Servlet擔負控制器的職能,
**M:**指model:模型層,指工程當中的Java Bean,作用是處理資料
Java Bean分兩類:
一類是實體類Bean:專門儲存業務資料的
一類為業務處理Bean:指Servlet或Dao物件,專門處理業務邏輯和資料
V:View,檢視層指專案當中的html或jsp等頁面,作用是與使用者程序互動,展示資料
C:Contoller,控制層,指工程當中的servlet,作用是接受請求和響應資料
MVC思想不是那個語言所特有的設計模式,也不是web應用所特有的思想,而是一種規範。MVC思想將一個應用分成三個基本部分:Model(模型)、View(檢視)和Controller(控制器),這三個部分以最少的耦合協同工作,從而提高了應用的可延伸性和可維護性。他們三者的關係如下圖所示
<!--版本鎖定--> <properties> <spring.version>5.0.2.RELEASE</spring.version> </properties> <dependencies> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-context</artifactId> <version>${spring.version}</version> </dependency> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-web</artifactId> <version>${spring.version}</version> </dependency> <!--SpringMVC--> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-webmvc</artifactId> <version>${spring.version}</version> </dependency> <!--servlet API--> <dependency> <groupId>javax.servlet</groupId> <artifactId>servlet-api</artifactId> <version>2.5</version> <scope>provided</scope> </dependency> <dependency> <groupId>javax.servlet.jsp</groupId> <artifactId>jsp-api</artifactId> <version>2.0</version> <scope>provided</scope> </dependency> <!--紀錄檔--> <dependency> <groupId>ch.qos.logback</groupId> <artifactId>logback-classic</artifactId> <version>1.2.3</version> </dependency> <dependency> <groupId>org.thymeleaf</groupId> <artifactId>thymeleaf-spring4</artifactId> <version>3.0.9.RELEASE</version> </dependency> </dependencies>
Spring MVC是基於原生的servlet,通過強大的前端控制器DispatcheServlet,對請求和響應進行統一處理。
Spring MVC的本質就是一個servlet,是對原生的servlet進行了封裝。在以前我們瀏覽器的每一次請求都需要我們寫一個對應的servlet,現在我們只需要將瀏覽器的請求和響應交給DispatcheServlet進行統一的處理。
在web.xml組態檔中核心控制器DispatcherServlet
<!--在web.xml中設定Spring提供的過濾器類 --> <filter> <filter-name>encodingFilter</filter-name> <filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class> <async-supported>true</async-supported> <init-param> <param-name>encoding</param-name> <param-value>UTF-8</param-value> </init-param> </filter> <filter-mapping> <filter-name>encodingFilter</filter-name> <url-pattern>/*</url-pattern> </filter-mapping> <!--不攔截所有是html的頁面請求--> <servlet-mapping> <servlet-name>default</servlet-name> <url-pattern>*.html</url-pattern> </servlet-mapping> <!--設定前端控制器,對瀏覽器傳送的請求進行統一處理--> <servlet> <servlet-name>dispatcherServlet</servlet-name> <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class> <!--載入springmvc.xml組態檔的位置和名稱,設定的是Spring設定--> <init-param> <!--contextConfigLocation:上下文設定路徑,固定值--> <param-name>contextConfigLocation</param-name> <!--classpath:類路徑,值得是Java和resources資料夾--> <!--springmvc.xml:指的是組態檔的名稱:需要設定springmvc.xml,在下面--> <param-value>classpath:springmvc.xml</param-value> </init-param> <!--設定啟動載入--> <load-on-startup>1</load-on-startup> </servlet> <servlet-mapping> <servlet-name>dispatcherServlet</servlet-name> <url-pattern>/</url-pattern> </servlet-mapping> <!--開啟專案時開啟的頁面--> <welcome-file-list> <welcome-file>/index.html</welcome-file> </welcome-file-list>
<?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:context="http://www.springframework.org/schema/context" xmlns:mvc="http://www.springframework.org/schema/mvc" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context.xsd http://www.springframework.org/schema/mvc http://www.springframework.org/schema/mvc/spring-mvc.xsd"> <!--設定spring建立容器時要掃描的包--> <context:component-scan base-package="com"></context:component-scan> <!--處理對映器--> <bean class="org.springframework.web.servlet.handler.BeanNameUrlHandlerMapping"/> <!--處理器介面卡--> <bean class="org.springframework.web.servlet.mvc.SimpleControllerHandlerAdapter"/> <!--設定檢視解析器--> <bean id="viewResolver" class="org.thymeleaf.spring4.view.ThymeleafViewResolver"> <property name="order" value="1"/> <property name="characterEncoding" value="UTF-8"/> <property name="templateEngine" ref="templateEngine"/> </bean> <!-- templateEngine --> <bean id="templateEngine" class="org.thymeleaf.spring4.SpringTemplateEngine"> <property name="templateResolver" ref="templateResolver"/> </bean> <bean id="templateResolver" class="org.thymeleaf.spring4.templateresolver.SpringResourceTemplateResolver"> <property name="prefix" value="/html/" /> <property name="suffix" value=".html" /> <property name="templateMode" value="HTML5"/> </bean> <!-- 設定spring開啟註解mvc的支援 預設就是開啟的 ,要想讓其他元件(不包含對映器、介面卡、處理器)生效就必須需要設定了--> <mvc:annotation-driven></mvc:annotation-driven> </beans>
Spring的web框架圍繞DispatcherServlet 【servlet排程】設計
DispatcherServlet的作用是將請求傳送到不同的處理器
執行的具體方法
SpringMVC官方提供圖形
到此這篇關於SpringMVC設定與使用詳細介紹的文章就介紹到這了,更多相關SpringMVC設定與使用內容請搜尋it145.com以前的文章或繼續瀏覽下面的相關文章希望大家以後多多支援it145.com!
相關文章
<em>Mac</em>Book项目 2009年学校开始实施<em>Mac</em>Book项目,所有师生配备一本<em>Mac</em>Book,并同步更新了校园无线网络。学校每周进行电脑技术更新,每月发送技术支持资料,极大改变了教学及学习方式。因此2011
2021-06-01 09:32:01
综合看Anker超能充系列的性价比很高,并且与不仅和iPhone12/苹果<em>Mac</em>Book很配,而且适合多设备充电需求的日常使用或差旅场景,不管是安卓还是Switch同样也能用得上它,希望这次分享能给准备购入充电器的小伙伴们有所
2021-06-01 09:31:42
除了L4WUDU与吴亦凡已经多次共事,成为了明面上的厂牌成员,吴亦凡还曾带领20XXCLUB全队参加2020年的一场音乐节,这也是20XXCLUB首次全员合照,王嗣尧Turbo、陈彦希Regi、<em>Mac</em> Ova Seas、林渝植等人全部出场。然而让
2021-06-01 09:31:34
目前应用IPFS的机构:1 谷歌<em>浏览器</em>支持IPFS分布式协议 2 万维网 (历史档案博物馆)数据库 3 火狐<em>浏览器</em>支持 IPFS分布式协议 4 EOS 等数字货币数据存储 5 美国国会图书馆,历史资料永久保存在 IPFS 6 加
2021-06-01 09:31:24
开拓者的车机是兼容苹果和<em>安卓</em>,虽然我不怎么用,但确实兼顾了我家人的很多需求:副驾的门板还配有解锁开关,有的时候老婆开车,下车的时候偶尔会忘记解锁,我在副驾驶可以自己开门:第二排设计很好,不仅配置了一个很大的
2021-06-01 09:30:48
不仅是<em>安卓</em>手机,苹果手机的降价力度也是前所未有了,iPhone12也“跳水价”了,发布价是6799元,如今已经跌至5308元,降价幅度超过1400元,最新定价确认了。iPhone12是苹果首款5G手机,同时也是全球首款5nm芯片的智能机,它
2021-06-01 09:30:45