Spring Web MVC 快速入门

Spring Web MVC 是 Spring 框架的一部分,它提供了一种灵活和强大的解决方案来开发 Web 应用程序。Spring MVC 基于 Model-View-Controller(MVC)设计模式,它旨在将业务逻辑、用户界面和控制逻辑分离,从而使应用程序更易于管理和扩展。

环境搭建

在开始之前,我们需要确保以下环境已安装:

  • JDK 1.8 或以上
  • Maven 3.5 或以上
  • 一个集成开发环境(IDE),如 IntelliJ IDEA 或 Eclipse

创建 Maven 项目

为了使用 Spring Web MVC,我们首先需要创建一个 Maven 项目,并在 pom.xml 中添加相关依赖:

<project xmlns="http://maven.apache.org/POM/4.0.0"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>
    <groupId>com.example</groupId>
    <artifactId>spring-mvc-demo</artifactId>
    <version>1.0-SNAPSHOT</version>
    <dependencies>
        <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-webmvc</artifactId>
            <version>5.3.10</version>
        </dependency>
        <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-context</artifactId>
            <version>5.3.10</version>
        </dependency>
        <dependency>
            <groupId>javax.servlet</groupId>
            <artifactId>javax.servlet-api</artifactId>
            <version>4.0.1</version>
            <scope>provided</scope>
        </dependency>
        <dependency>
            <groupId>javax.servlet.jsp</groupId>
            <artifactId>javax.servlet.jsp-api</artifactId>
            <version>2.3.1</version>
            <scope>provided</scope>
        </dependency>
        <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-web</artifactId>
            <version>5.3.10</version>
        </dependency>
        <dependency>
            <groupId>org.apache.tomcat.embed</groupId>
            <artifactId>tomcat-embed-core</artifactId>
            <version>9.0.50</version>
        </dependency>
    </dependencies>
</project>

创建配置类

在项目中创建一个配置类来设置 Spring MVC。我们可以使用 Java 配置:

import org.springframework.context.annotation.ComponentScan;
import org.springframework.context.annotation.Configuration;
import org.springframework.web.servlet.config.annotation.EnableWebMvc;

@Configuration
@EnableWebMvc
@ComponentScan(basePackages = "com.example.controller")
public class WebConfig {
}

创建 DispatcherServlet

web.xml 中配置 DispatcherServlet

<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_3_1.xsd"
         version="3.1">

    <servlet>
        <servlet-name>dispatcher</servlet-name>
        <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
        <load-on-startup>1</load-on-startup>
    </servlet>

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

创建控制器

接下来,我们创建一个简单的控制器,以处理 HTTP 请求:

import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.servlet.ModelAndView;

@Controller
@RequestMapping("/hello")
public class HelloController {

    @GetMapping
    public ModelAndView sayHello() {
        ModelAndView modelAndView = new ModelAndView("hello");
        modelAndView.addObject("message", "Hello, Spring MVC!");
        return modelAndView;
    }
}

创建视图

src/main/webapp/WEB-INF/views/ 目录下创建一个 hello.jsp 文件:

<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
    <title>Hello Page</title>
</head>
<body>
<h1>${message}</h1>
</body>
</html>

运行应用

确保你已经配置好服务器(如 Tomcat),然后启动应用。当你访问 http://localhost:8080/spring-mvc-demo/hello 时,你应该能够看到 Hello, Spring MVC! 的消息。

总结

通过以上步骤,我们成功搭建了一个简单的 Spring Web MVC 应用。Spring MVC 提供了强大的功能,包括数据绑定、验证、国际化等功能,适合构建复杂的 Web 应用。在实际开发中,你可以根据业务需求扩展控制器、服务和数据访问层,从而构建一个完整的 Web 应用。

点赞(0) 打赏

微信小程序

微信扫一扫体验

微信公众账号

微信扫一扫加关注

发表
评论
返回
顶部