SpringMVC MVC架構(gòu)原理及實(shí)現(xiàn)方法詳解
SpringMVC
ssm:Mybatis+Spring+SpringMVC MVC三層架構(gòu)
JavaSE:認(rèn)真學(xué)習(xí),老師帶,入門(mén)快
JavaWeb:認(rèn)真學(xué)習(xí),老師帶,入門(mén)快
SSM框架:研究官方文檔,鍛煉自學(xué)能力,筆記能力,項(xiàng)目能力
SpringMVC+Vue+SpringBoot+SpringCloud+Linux
SSM = JavaWeb做項(xiàng)目;
Spring:IOC和AOP
SpringMVC:SpringMVC的執(zhí)行流程!【重點(diǎn)】
SpringMVC:SSM框架整合!
1. 回顧MVC
什么是MVC?
Model+View+Controller=MVC 將業(yè)務(wù)邏輯、數(shù)據(jù)、顯示分離的方法來(lái)組織代碼; 降低了視圖與業(yè)務(wù)邏輯間的雙向耦合 不是設(shè)計(jì)模式,是一種架構(gòu)模式。新建一個(gè)Maven工程當(dāng)作父工程!pom依賴(lài)!
<!--依賴(lài)--><dependencies> <dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> <version>4.12</version> </dependency> <!-- https://mvnrepository.com/artifact/org.springframework/spring-webmvc --> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-webmvc</artifactId> <version>5.1.9.RELEASE</version> </dependency> <!-- https://mvnrepository.com/artifact/javax.servlet/javax.servlet-api --> <dependency> <groupId>javax.servlet</groupId> <artifactId>javax.servlet-api</artifactId> <version>3.1.0</version> </dependency> <!-- https://mvnrepository.com/artifact/javax.servlet.jsp/javax.servlet.jsp-api --> <dependency> <groupId>javax.servlet.jsp</groupId> <artifactId>javax.servlet.jsp-api</artifactId> <version>2.3.1</version> </dependency> <!-- https://mvnrepository.com/artifact/javax.servlet/jstl --> <dependency> <groupId>javax.servlet</groupId> <artifactId>jstl</artifactId> <version>1.2</version> </dependency></dependencies>
建立一個(gè)Moudle:springmvc-01-servlet,添加web app的支持。導(dǎo)入servlet和jsp依賴(lài):已經(jīng)包含在父依賴(lài)編寫(xiě)一個(gè)Servlet類(lèi),用來(lái)處理用戶(hù)的請(qǐng)求
public class HelloServlet extends HttpServlet { @Override protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { //1.獲取前端參數(shù) String method = req.getParameter('method'); if(method.equals('add')){ req.getSession().setAttribute('msg','執(zhí)行了add方法'); } if(method.equals('delete')){ req.getSession().setAttribute('msg','執(zhí)行了delete方法'); } //2.調(diào)用業(yè)務(wù)層 //3.頁(yè)面跳轉(zhuǎn) req.getRequestDispatcher('/WEB-INF/jsp/test.jsp').forward(req,resp); } @Override protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { doGet(req,resp); }}
編寫(xiě)Hello.jsp,在WEB-INF目錄下新建一個(gè)jsp的文件夾,新建hello.jsp
<%@ page contentType='text/html;charset=UTF-8' language='java' %><html><head> <title>Title</title></head><body>#{msg}</body></html>
在web.xml中注冊(cè)servlet
<servlet> <servlet-name>hello</servlet-name> <servlet-class>com.kuang.servlet.HelloServlet</servlet-class></servlet><servlet-mapping> <servlet-name>hello</servlet-name> <url-pattern>/hello</url-pattern></servlet-mapping>
配置Tomcat,并啟動(dòng)測(cè)試!localhost:8080?hello/method=addlocalhost:8080?hello/method=delete
注意點(diǎn):
每個(gè)模塊需要配置到tomcat-deployment,必須部署到服務(wù)器上!!!
MVC框架要做哪些事情?
將url映射到j(luò)ava類(lèi)或類(lèi)中的方法; 封裝用戶(hù)提交的數(shù)據(jù); 處理請(qǐng)求---調(diào)用相關(guān)業(yè)務(wù)處理--封裝響應(yīng)數(shù)據(jù); 將響應(yīng)數(shù)據(jù)進(jìn)行渲染 .jsp/html等顯示層數(shù)據(jù)。以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持好吧啦網(wǎng)。
相關(guān)文章:
1. JSP+Servlet實(shí)現(xiàn)文件上傳到服務(wù)器功能2. CSS可以做的幾個(gè)令你嘆為觀(guān)止的實(shí)例分享3. Xml簡(jiǎn)介_(kāi)動(dòng)力節(jié)點(diǎn)Java學(xué)院整理4. jsp實(shí)現(xiàn)textarea中的文字保存換行空格存到數(shù)據(jù)庫(kù)的方法5. 將properties文件的配置設(shè)置為整個(gè)Web應(yīng)用的全局變量實(shí)現(xiàn)方法6. 低版本IE正常運(yùn)行HTML5+CSS3網(wǎng)站的3種解決方案7. javascript xml xsl取值及數(shù)據(jù)修改第1/2頁(yè)8. jsp文件下載功能實(shí)現(xiàn)代碼9. JSP之表單提交get和post的區(qū)別詳解及實(shí)例10. jsp+servlet實(shí)現(xiàn)猜數(shù)字游戲
