SpringMVC-01

发布时间:2024年01月09日
Spring MVC是一种基于Java的MVC(Model-View-Controller)架构的Web应用程序开发框架。它是Spring框架的一部分,用于构建灵活和高效的Web应用程序。
Spring MVC的核心思想是将应用程序的逻辑分成模型(Model)、视图(View)和控制器(Controller)。模型表示应用程序的数据和业务逻辑,视图负责呈现数据给用户,控制器接收用户的请求并根据请求选择合适的模型和视图。
Spring MVC提供了一组丰富的功能和特性,使开发人员可以轻松地构建可扩展的Web应用程序。它具有以下特点:
  1. 支持灵活的URL映射:Spring MVC通过使用控制器处理器映射URL到适当的控制器方法。
  2. 强大的数据绑定和验证:Spring MVC提供了数据绑定功能,可以将用户提交的数据绑定到模型中。它还支持验证机制,可以验证并处理用户输入的数据。
  3. 灵活的视图解析:Spring MVC支持多种视图技术,包括JSP、FreeMarker、Thymeleaf等。开发人员可以根据需求选择合适的视图技术。
  4. 强大的拦截器支持:Spring MVC提供了拦截器机制,可以在请求处理的不同阶段添加拦截器来执行特定的操作,例如身份验证、日志记录等。
  5. 易于测试:Spring MVC的松耦合架构使得对控制器进行单元测试变得简单。开发人员可以使用JUnit等测试框架来编写测试用例。
    Spring MVC是一个功能强大且易于使用的Web应用程序开发框架,使开发人员能够高效地构建可扩展和可维护的Web应用程序。它是Java开发人员在构建Web应用程序时的首选框架之一。

调用流程:(图片来自尚硅谷)
licheng 在这里插入图片描述
@RequestMapping

    @RequestMapping(value = "/user/login",method = RequestMethod.GET)
    //1.进准地址[一个|多个]     {"地址1","地址2"}
    //2.模糊地址                  user/*
    //3.可以用与方法或类
    //4.method = RequestMethod.GET          指定访问方式  不符合会出现405异常
    //5.@RequestMapping(method = RequestMethod.GET) 等同于 @GetMapping

接收参数
1:param参数 param1=value1&param2=value2&param3=value3

    //1.直接接收 属性名要求对应相等
    @RequestMapping("/data")
    @ResponseBody
    public String data(String name,int age){
        return "name="+name+"age="+age;
    }

    //2.注解接收
    @RequestMapping("/data1")
    @ResponseBody
    public String data1(@RequestParam(value="account")String name,
                        @RequestParam(required = false,defaultValue = "18")int page){
        return "name="+name+"page="+page;
    }

    //3.实体对象接收			属性名需要等于参数名
    @RequestMapping("/data2")
    @ResponseBody
    public String data2(User user){
        return user.toString();
    }

2:路径传参

    @RequestMapping("{account}/{password}")     //动态路径
    public String login(@PathVariable String account,@PathVariable String password){
        return "account:"+account+" password:"+password;
    }

3:json参数 { “name”: “John”, “age”: 25, “email”: “john@example.com”}

@EnableWebMvc       //配置json转化器 (使用postman)

    @PostMapping("/data")
    public String data( Person person){
        return person.toString();
    }

在这里插入图片描述

文章来源:https://blog.csdn.net/qq_53568730/article/details/135466927
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。