• Spring学习笔记(七)SpringMVC入门


    一.什么是Spring MVC

    1.什么是MVC(一种思想模式)

    M:模型

    V:视图

    C:控制器

    2、Java EE三层架构

    在Java EE开发中,系统经典的三层架构包括表现层、业务层和持久层

    表现层(Web层)负责接收客户端请求,并向客户端响应结果;

    业务层(Service层)负责业务逻辑处理,和项目需求息息相关;

    持久层(Dao层)负责和数据库交互,对数据库表进行增删改查。

    MyBatis:作为持久层

    Spring作为粘合剂处理接口

    Spring MVC 作为表现层

    3、对Spring MVC在表现层作用的分析

    Spring MVC作用于三层架构中的表现层,用于接收客户端的请求并进行响应。Spring MVC中包含了控制器和视图,控制器接收到客户端的请求后对请求数据进行解析和封装,接着将请求交给业务层处理。业务层会对请求进行处理,最后将处理结果返回给表现层。表现层接收到业务层的处理结果后,再由视图对处理结果进行渲染,渲染完成后响应给客户端。

    4、特点

    a.支持多语言

    b.支持多视图

    c.易扩展

    二、第一个SpringMVC程序

    1、新建一个普通的maven工程

    2.在文件中找到项目结构,点击加号添加web

    (或者直接在pom.xml声明当前是一个maven的web工程,语法:war)

    3、引入Maven依赖:项目创建完成后,为保障项目的正常运行,需要导入项目所需的依赖到项目的pom.xml文件中

    1. "1.0" encoding="UTF-8"?>
    2. <project xmlns="http://maven.apache.org/POM/4.0.0"
    3. xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    4. xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
    5. <modelVersion>4.0.0modelVersion>
    6. <groupId>org.examplegroupId>
    7. <artifactId>SpringMVCdemo01artifactId>
    8. <version>1.0-SNAPSHOTversion>
    9. <packaging>warpackaging>
    10. <properties>
    11. <maven.compiler.source>8maven.compiler.source>
    12. <maven.compiler.target>8maven.compiler.target>
    13. properties>
    14. <dependencies>
    15. <dependency>
    16. <groupId>mysqlgroupId>
    17. <artifactId>mysql-connector-javaartifactId>
    18. <version>8.0.27version>
    19. dependency>
    20. <dependency>
    21. <groupId>org.springframeworkgroupId>
    22. <artifactId>spring-contextartifactId>
    23. <version>5.3.26version>
    24. dependency>
    25. <dependency>
    26. <groupId>javax.servletgroupId>
    27. <artifactId>javax.servlet-apiartifactId>
    28. <version>3.1.0version>
    29. <scope>providedscope>
    30. dependency>
    31. <dependency>
    32. <groupId>org.springframeworkgroupId>
    33. <artifactId>spring-jdbcartifactId>
    34. <version>5.3.26version>
    35. dependency>
    36. <dependency>
    37. <groupId>org.springframeworkgroupId>
    38. <artifactId>spring-txartifactId>
    39. <version>5.3.26version>
    40. dependency>
    41. <dependency>
    42. <groupId>org.springframeworkgroupId>
    43. <artifactId>spring-aspectsartifactId>
    44. <version>6.0.9version>
    45. dependency>
    46. <dependency>
    47. <groupId>org.springframeworkgroupId>
    48. <artifactId>spring-aopartifactId>
    49. <version>5.2.8.RELEASEversion>
    50. dependency>
    51. <dependency>
    52. <groupId>org.springframeworkgroupId>
    53. <artifactId>spring-webmvcartifactId>
    54. <version>5.2.8.RELEASEversion>
    55. dependency>
    56. dependencies>
    57. <build>
    58. <plugins>
    59. <plugin>
    60. <groupId>org.apache.tomcat.mavengroupId>
    61. <artifactId>tomcat7-maven-pluginartifactId>
    62. <version>2.2version>
    63. <configuration>
    64. <uriEncoding>utf-8uriEncoding>
    65. <port>8080port>
    66. <path>/SpringMVCdemo01path>
    67. configuration>
    68. plugin>
    69. plugins>
    70. build>
    71. project>

     需要注意的是,要在IDEA中使用插件运行Maven项目,除了需要在pom.xml文件中配置对应的插件外,还需要在IDEA中进行项目运行的相关配置,具体操作如下:

    单击IDEA工具栏中的“Run”(运行)→“Edit Configurations...”(编辑配置)选项,弹出Run/Debug Configurations对话框。

    在Run/Debug Configurations对话框中,单击左上角的“+”按钮,弹出Add New Configurations菜单列表

    在Add New Configurations菜单列表中,单击左侧菜单中的“Maven”选项,进入Maven指令的配置界面。

    4、配置前端控制器:在项目的web.xml文件中进行Spring MVC前端控制器的配置

    1. "1.0" encoding="UTF-8"?>
    2. <web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee"
    3. xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    4. xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_4_0.xsd"
    5. version="4.0">
    6. <servlet> <servlet-name>DispatcherServletservlet-name>
    7. <servlet-class>org.springframework.web.servlet.DispatcherServlet
    8. servlet-class>
    9. <init-param>
    10. <param-name>contextConfigLocationparam-name>
    11. <param-value>classpath:spring-mvc.xmlparam-value>
    12. init-param>
    13. <load-on-startup>1load-on-startup> servlet>
    14. <servlet-mapping>
    15. <servlet-name>DispatcherServletservlet-name>
    16. <url-pattern>/url-pattern>
    17. servlet-mapping>
    18. web-app>

    5、配置处理器映射信息和视图解析器:创建Spring MVC的配置文件spring-mvc.xml,用于配置处理器映射信息和视图解析器。

    1. "1.0" encoding="UTF-8"?>
    2. <beans xmlns="http://www.springframework.org/schema/beans"
    3. xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    4. xmlns:context="http://www.springframework.org/schema/context"
    5. xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd http://www.springframework.org/schema/context https://www.springframework.org/schema/context/spring-context.xsd">
    6. <context:component-scan base-package="com.yx.controller"/>
    7. <bean class="org.springframework.web.servlet.view.InternalResourceViewResolver">
    8. <property name="suffix" value=".jsp"/>
    9. <property name="prefix" value="/WEB-INF/pages/"/>
    10. bean>
    11. beans>

    注意前缀的“/”的用法

    6、创建处理器:创建处理器FirstController类,用于处理客户端的请求并指定响应时转跳的页面。

     

    1. package com.yx.controller;
    2. import org.springframework.stereotype.Controller;
    3. import org.springframework.web.bind.annotation.RequestMapping;
    4. @Controller
    5. public class FirstController {
    6. @RequestMapping("/firstController")
    7. public String sayHello(){
    8. System.out.println("你好!这是访问的第一个controller");
    9. // string返回值,默认返回的是视图的名字(视图解析器的前缀+此处的字符串+视图解析器的后缀)
    10. return "success";
    11. }
    12. }

    7、创建视图(View)页面:创建名称为page的文件夹,并在page文件夹下创建名称为success的jsp文件,用于对客户端请求进行处理后的视图展示、

    1. <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
    2. html>
    3. <html>
    4. <body>
    5. <h1>Hello Spring MVC!!!h1>
    6. <h2>这是你的第一个Spring MVCh2>
    7. body>
    8. html>

    8、启动项目,测试应用:项目启动成功后,在浏览器中对处理器进行请求访问,访问地址为localhost:8080/SpringMVCdemo01/firstController,访问后,IDEA控制台打印信息“访问到FirstController!”,并且浏览器跳转到success.jsp页面中,页面内容如下所示。

    9、整体项目位置

    注意好WEB-INF文件的位置

    10.部署maven的快捷键

    在idea的最右边找到maven点击开后在插件中找到tomcat7:run,然后右键编辑配置

    效果

  • 相关阅读:
    【Redis面试】基础题总结(下)
    HCIP---eth-trunk-链路聚合
    opencv识别一张图片的多个红框,并截取红框的内容
    燃气智能巡检系统-燃气入户安检系统
    在WPF应用程序集中添加新文件时,Page和Window有什么区别
    tkinter显示图片
    halcon 算子shape_trans
    十月杂题选做
    ChatGPT基础使用总结
    【慕课C#学习笔记】第一章: 走进C#
  • 原文地址:https://blog.csdn.net/weixin_72154059/article/details/136434343