欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

SpringMVC MVC架構原理及實現(xiàn)方法詳解

 更新時間:2020年09月03日 09:17:59   作者:CodeHuba  
這篇文章主要介紹了SpringMVC MVC架構原理及實現(xiàn)方法詳解,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下

SpringMVC

ssm:Mybatis+Spring+SpringMVC MVC三層架構

JavaSE:認真學習,老師帶,入門快

JavaWeb:認真學習,老師帶,入門快

SSM框架:研究官方文檔,鍛煉自學能力,筆記能力,項目能力

SpringMVC+Vue+SpringBoot+SpringCloud+Linux

SSM = JavaWeb做項目;

Spring:IOC和AOP

SpringMVC:SpringMVC的執(zhí)行流程!【重點】

SpringMVC:SSM框架整合!

1. 回顧MVC

什么是MVC?

  • Model+View+Controller=MVC
  • 將業(yè)務邏輯、數(shù)據(jù)、顯示分離的方法來組織代碼;
  • 降低了視圖與業(yè)務邏輯間的雙向耦合
  • 不是設計模式,是一種架構模式。

新建一個Maven工程當作父工程!pom依賴!

<!--依賴-->
<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>

建立一個Moudle:springmvc-01-servlet,添加web app的支持。
導入servlet和jsp依賴:已經包含在父依賴
編寫一個Servlet類,用來處理用戶的請求

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.調用業(yè)務層

    //3.頁面跳轉
    req.getRequestDispatcher("/WEB-INF/jsp/test.jsp").forward(req,resp);
  }

  @Override
  protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
    doGet(req,resp);
  }
}

編寫Hello.jsp,在WEB-INF目錄下新建一個jsp的文件夾,新建hello.jsp

<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
  <title>Title</title>
</head>
<body>
#{msg}
</body>
</html>

在web.xml中注冊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,并啟動測試!localhost:8080?hello/method=addlocalhost:8080?hello/method=delete

注意點:

每個模塊需要配置到tomcat-deployment,必須部署到服務器上?。?!

MVC框架要做哪些事情?

  • 將url映射到java類或類中的方法;
  • 封裝用戶提交的數(shù)據(jù);
  • 處理請求---調用相關業(yè)務處理--封裝響應數(shù)據(jù);
  • 將響應數(shù)據(jù)進行渲染 .jsp/html等顯示層數(shù)據(jù)。

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。

相關文章

  • springboot項目整合druid數(shù)據(jù)庫連接池的實現(xiàn)

    springboot項目整合druid數(shù)據(jù)庫連接池的實現(xiàn)

    這篇文章主要介紹了springboot項目整合druid數(shù)據(jù)庫連接池的實現(xiàn),文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2021-04-04
  • MyBatis-Plus實現(xiàn)字段自動填充功能的示例

    MyBatis-Plus實現(xiàn)字段自動填充功能的示例

    本文主要介紹了MyBatis-Plus實現(xiàn)字段自動填充功能的示例,文中通過示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2021-11-11
  • Java static(靜態(tài)變量)和私有化功能與用法分析

    Java static(靜態(tài)變量)和私有化功能與用法分析

    這篇文章主要介紹了Java static(靜態(tài)變量)和私有化功能與用法,結合具體實例形式分析了Java static(靜態(tài)變量)和私有化的相關概念、原理、使用方法及操作注意事項,需要的朋友可以參考下
    2019-07-07
  • mybatis resultType自帶數(shù)據(jù)類型別名解讀

    mybatis resultType自帶數(shù)據(jù)類型別名解讀

    MyBatis為了簡化開發(fā),通過org.apache.ibatis.type.TypeAliasRegistry為常見類定義了別名,這些別名包括基本數(shù)據(jù)類型及其數(shù)組、集合類型等,如string對應java.lang.String,int對應java.lang.Integer等,此外,還有特殊前綴的別名如_int對應int類型
    2024-10-10
  • mybatis中mapper代理的生成過程全面分析

    mybatis中mapper代理的生成過程全面分析

    這篇文章主要為大家介紹了mybatis中mapper代理的生成過程全面分析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2023-09-09
  • Java多線程yield心得分享

    Java多線程yield心得分享

    前幾天復習了一下多線程,發(fā)現(xiàn)有許多網(wǎng)上講的都很抽象,所以,自己把網(wǎng)上的一些案例總結了一下
    2013-12-12
  • 詳解Jvm中時區(qū)設置方式

    詳解Jvm中時區(qū)設置方式

    這篇文章主要介紹了詳解Jvm中時區(qū)設置方式,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2020-09-09
  • Mapreduce分布式并行編程

    Mapreduce分布式并行編程

    這篇文章主要為大家介紹了Mapreduce分布式并行編程使用詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2022-08-08
  • 基于Java隨機生成手機短信驗證碼的實例代碼

    基于Java隨機生成手機短信驗證碼的實例代碼

    這篇文章主要介紹了Java隨機生成手機短信驗證碼的實例代碼,代碼分為哦簡單版和復雜版,需要的朋友可以參考下
    2019-04-04
  • SpringCloud Gateway自定義filter獲取body中的數(shù)據(jù)為空的問題

    SpringCloud Gateway自定義filter獲取body中的數(shù)據(jù)為空的問題

    這篇文章主要介紹了SpringCloud Gateway自定義filter獲取body中的數(shù)據(jù)為空,本文給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2020-10-10

最新評論