Spring MVC 是一款流行的 Web 应用程序框架,它提供了基于注解的方式来实现 MVC 架构的开发模式。下面是一些 Spring MVC 的初级概念注解:
@Controller
:它是一个用于标识应用程序中控制器的注解,它表明一个类是 Spring MVC 控制器。
@RequestMapping
:它用于映射请求 URL 和处理方法。它可以设置请求的 HTTP 方法、请求 URL 和响应内容类型。
@Autowired
:它是一种依赖注入(DI)注解,用于自动装配 Bean 对象。它可以将一个 Bean 对象注入到另一个 Bean 对象中。
@ResponseBody
:它用于标识一个方法的返回值应该直接写入 HTTP 响应正文体中。它通常用于返回 JSON 或 XML 数据。
@PathVariable
:它用于将 URL 中的变量绑定到方法参数上。
@RequestParam
:它用于将 HTTP 请求参数绑定到方法参数上。
@ModelAttribute
:它用于将 HTTP 请求参数绑定到一个 Model 对象中。
@Valid
:它用于在控制器方法中校验提交的表单数据是否合法。它使用 Bean 校验框架进行校验。
- <dependencies>
- <dependency>
- <groupId>org.springframeworkgroupId>
- <artifactId>spring-webmvcartifactId>
- <version>5.2.6.RELEASEversion>
- dependency>
- dependencies>
-
- @Controller
- public class HomeController {
-
- @GetMapping("/home")
- public String home() {
- return "home";
- }
- }
-
- <html>
- <head>
- <title>Spring MVC Demotitle>
- head>
- <body>
- <h1>Welcome to Spring MVC!h1>
- body>
- html>
-
- <servlet>
- <servlet-name>dispatcher-servletservlet-name>
- <servlet-class>org.springframework.web.servlet.DispatcherServletservlet-class>
- <init-param>
- <param-name>contextConfigLocationparam-name>
- <param-value>/WEB-INF/dispatcher-servlet.xmlparam-value>
- init-param>
- <load-on-startup>1load-on-startup>
- servlet>
-
- <servlet-mapping>
- <servlet-name>dispatcher-servletservlet-name>
- <url-pattern>/url-pattern>
- servlet-mapping>
-
- <context:component-scan base-package="com.example.controller"/>
-
- <bean class="org.springframework.web.servlet.view.InternalResourceViewResolver">
- <property name="prefix" value="/WEB-INF/views/"/>
- <property name="suffix" value=".jsp"/>
- bean>
-