SpringMVC入门

2023-10-17 16:13:54 浏览数 (1)

1.SpringMVC入门

1.1.三层架构

  • 表现层:负责数据的展示
  • 业务层:负责业务的操作
  • 数据层:负责数据的操作

1.2.MVC

MVC:是一种用于设计创建web应用程序表现层的模式

  • Model(模型):数据模型,用于封装数据
  • View(视图):页面视图,用于展示数据
    • jsp
    • html
  • Controller(控制器):处理用户交互的调度器,用于根据用户需求处理程序逻辑
    • servlet
    • SpringMVc

1.3.SpringMVC简介

SpringMVC是一种基于Java实现MVC模型的轻量级web框架

1.4.SpringMVC优点

  • 使用简单
  • 性能突出(相比于现有的框架技术)
  • 灵活性强

2.SpringMVC入门案例

2.1.导入坐标

代码语言:javascript复制
    <dependencies>
        <!--servlet 3.1 规范坐标-->
        <dependency>
            <groupId>javax.servlet</groupId>
            <artifactId>javax.servlet-api</artifactId>
            <version>3.1.0</version>
            <scope>provided</scope>
        </dependency>

        <!--jsp坐标-->
        <dependency>
            <groupId>javax.servlet.jsp</groupId>
            <artifactId>jsp-api</artifactId>
            <version>2.2</version>
            <scope>provided</scope>
        </dependency>

        <!--spring坐标-->
        <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-context</artifactId>
            <version>5.2.0.RELEASE</version>
        </dependency>

        <!--spring的web坐标-->
        <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-web</artifactId>
            <version>5.2.0.RELEASE</version>
        </dependency>

        <!--springMVC-->
        <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-webmvc</artifactId>
            <version>5.2.0.RELEASE</version>
        </dependency>
        
        <!--spring事务管理-->
        <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-tx</artifactId>
            <version>5.2.12.RELEASE</version>
        </dependency>
    </dependencies>
    <!--构建坐标-->
    <build>
        <plugins>
            <!--tomcat插件-->
            <plugin>
                <groupId>org.apache.tomcat.maven</groupId>
                <artifactId>tomcat7-maven-plugin</artifactId>
                <version>2.2</version>
                <configuration>
                    <port>80</port>
                    <path>/</path>
                </configuration>
            </plugin>
        </plugins>
    </build>

2.2.web.xml配置文件

代码语言:javascript复制
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_4_0.xsd"
         version="4.0">

    <!--配置访问路径-->
    <servlet>
        <!--核心控制器-->
        <servlet-name>DispatcherServlet</servlet-name>
        <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
        <!--初始化 ,核心配置文件-->
        <init-param>
            <param-name>contextConfigLocation</param-name>
            <param-value>classpath*:Spring-mvc.xml</param-value>
        </init-param>
    </servlet>

    <servlet-mapping>
        <servlet-name>DispatcherServlet</servlet-name>
        <url-pattern>/</url-pattern>
    </servlet-mapping>
</web-app>

2.3.控制层–Controller

代码语言:javascript复制
@Controller
public class UserController {

    @RequestMapping("/save")
    public String save() {
        System.out.println("你好........");
        return "index.jsp";
    }
}

2.4.SpringMVC配置文件

代码语言:javascript复制
包扫描
组件扫描
<context:component-scan base-package="com.lfs"/>

2.5.SpringMVC的开发步骤

①导入SpringMVC相关坐标

②配置SpringMVC核心控制器DispathcerServlet

③创建Controller类和视图页面

④使用注解配置Controller类中业务方法的映射地址

⑤配置SpringMVC核心文件 spring-mvc.xml

⑥客户端发起请求测试

SpringMVC流程图示:

2.6.总结

在整个案例中需要掌握springmvc的坐标导入,再导入相关坐标,在web.xml中配置SpringMVC文件。

  • 服务器启动
    1. 加载web.xml中DispatcherServlet
    2. 读取spring-mvc.xml中的配置,加载所有com.lfs包中所有标记为bean的类
    3. 读取bean中方法上方标注**@RequestMapping**的内容
  • 处理请求
    1. DispatcherServlet配置拦截所有请求 /
    2. 使用请求路径与所有加载的@RequestMapping的内容进行比对
    3. 执行对应的方法
    4. 根据方法的返回值在webapp目录中查找对应的页面并展示

0 人点赞