SpringMVC初级的概念和常用注解(入门案例)

Spring MVC 是一款流行的 Web 应用程序框架,它提供了基于注解的方式来实现 MVC 架构的开发模式。下面是一些 Spring MVC 的初级概念注解:

  1. @Controller:它是一个用于标识应用程序中控制器的注解,它表明一个类是 Spring MVC 控制器。

  2. @RequestMapping:它用于映射请求 URL 和处理方法。它可以设置请求的 HTTP 方法、请求 URL 和响应内容类型。

  3. @Autowired:它是一种依赖注入(DI)注解,用于自动装配 Bean 对象。它可以将一个 Bean 对象注入到另一个 Bean 对象中。

  4. @ResponseBody:它用于标识一个方法的返回值应该直接写入 HTTP 响应正文体中。它通常用于返回 JSON 或 XML 数据。

  5. @PathVariable:它用于将 URL 中的变量绑定到方法参数上。

  6. @RequestParam:它用于将 HTTP 请求参数绑定到方法参数上。

  7. @ModelAttribute:它用于将 HTTP 请求参数绑定到一个 Model 对象中。

  8. @Valid:它用于在控制器方法中校验提交的表单数据是否合法。它使用 Bean 校验框架进行校验。

    xml 复制代码
    <dependencies>
        <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-webmvc</artifactId>
            <version>5.2.6.RELEASE</version>
        </dependency>
    </dependencies>
     
    kotlin 复制代码
    @Controller
    public class HomeController {
    
        @GetMapping("/home")
        public String home() {
            return "home";
        }
    }
     
    xml 复制代码
    <html>
        <head>
            <title>Spring MVC Demo</title>
        </head>
        <body>
            <h1>Welcome to Spring MVC!</h1>
        </body>
    </html>
     
    xml 复制代码
    <servlet>
        <servlet-name>dispatcher-servlet</servlet-name>
        <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
        <init-param>
            <param-name>contextConfigLocation</param-name>
            <param-value>/WEB-INF/dispatcher-servlet.xml</param-value>
        </init-param>
        <load-on-startup>1</load-on-startup>
    </servlet>
    
    <servlet-mapping>
        <servlet-name>dispatcher-servlet</servlet-name>
        <url-pattern>/</url-pattern>
    </servlet-mapping>
     
    xml 复制代码
    <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>
     
相关推荐
燃于AC之乐几秒前
深入解剖STL deque:从源码剖析到容器适配器实现
开发语言·c++·stl·源码剖析·容器实现
kaikaile1995几秒前
基于MATLAB的滑动轴承弹流润滑仿真程序实现
开发语言·matlab
禹凕2 分钟前
Python编程——进阶知识(MYSQL引导入门)
开发语言·python·mysql
MSTcheng.6 分钟前
【C++】C++异常
java·数据库·c++·异常
傻乐u兔1 小时前
C语言进阶————指针4
c语言·开发语言
大模型玩家七七1 小时前
基于语义切分 vs 基于结构切分的实际差异
java·开发语言·数据库·安全·batch
历程里程碑1 小时前
Linux22 文件系统
linux·运维·c语言·开发语言·数据结构·c++·算法
Coder_Boy_2 小时前
技术发展的核心规律是「加法打底,减法优化,重构平衡」
人工智能·spring boot·spring·重构
牛奔2 小时前
Go 如何避免频繁抢占?
开发语言·后端·golang