0


SpringMVC注解全解析:构建高效Web应用的终极指南 (上)

SpringMVC 是一个强大的 Web 框架,广泛应用于 Java Web 开发中。它通过注解简化了配置,增强了代码的可读性。本文将全面解析 SpringMVC 中常用的注解及其用法,帮助你构建高效的 Web 应用。

一. MVC介绍

MVC 是 Model View Controller 的缩写,它是软件⼯程中的⼀种软件架构设计模式,它把软件系统分 为模型、视图和控制器三个基本部分**.**

不过Spring在实现MVC时, 也结合⾃⾝项⽬的特点, 做了⼀些改变, 相对⽽⾔, 下⾯这个图或许更加合适 ⼀些.

二. Spring 注解介绍

1) @SpringBootApplication

** SpringBoot 项目的启动类 **

Spring Boot 项目的基石,创建 SpringBoot 项目之后会默认在主类加上

@SpringBootApplication
public class SpringSecurityJwtGuideApplication {
      public static void main(java.lang.String[] args) {
        SpringApplication.run(SpringSecurityJwtGuideApplication.class, args);
    }
}

2) @RequestMapping

**

@RequestMapping

注解用于映射 URL 到控制器类或方法。它可以用于类和方法上**,定义请求的路径、方法类型(GET、POST 等)以及其他属性。

通常规范要求 **类路径与方法路径都要写 **规范~

@RequestMapping("/request") //类路径
@RestController()
public class RequestController {

    @RequestMapping("/hello") // 方法路径
    public String say(){
        return "你好呀";
    }
    @RequestMapping 的URL路径也可以是多层路径, 最终访问时, 依然是 类路径 + ⽅法路径 
2.1) @RequestMaping是Get请求 还是 Post请求?
    我们后端程序员可以采用 Postman 软件 模拟发送 Get请求 与 Post请求.

可从官网下载并使用 Postman

以上两种请求发送后均可 收到

说明 @Requestmaping 既⽀持Get请求, ⼜⽀持Post请求. 同理, 也⽀持其他的请求方式.

    **指定请求方式**    @RequestMapping(value = "/getRequest",method= RequestMethod**.POST**)

3) @RequestParam (后端参数映射)

   ** 
@RequestParam

**注解用于绑定请求参数到方法的参数上。它可以设置默认值和是否必需。

    后端参数重命名
@RequestMapping("/m4")
public Object method_4(@RequestParam("time") String createtime) {
 return "接收到参数createtime:" + createtime;
}
  前端传递了一个名为
time

的参数,而后端希望将其映射到

createtime

字段,我们可以使用

@RequestParam

注解来实现这一点。

4) @PathVariable (获取URL中参数)

基本用法
@PathVariable

注解的基本用法是在控制器的方法参数中,通过注解将 URL 中的路径变量绑定到方法参数。

@Controller
@RequestMapping("/products")
public class ProductController {

    @RequestMapping("/{id}")
    public String getProduct(@PathVariable("id") int productId, Model model) {
        // 使用 productId 获取产品信息
        Product product = productService.getProductById(productId);
        model.addAttribute("product", product);
        return "productDetail"; // 返回视图名称
    }
}

在上述例子中:

  • @RequestMapping("/{id}") 指定了 URL 模式,其中 {id} 是一个路径变量。
  • @PathVariable("id") 将 URL 中的 id 部分绑定到 getProduct 方法的 productId 参数。

**通过合理使用

@PathVariable

,可以有效地处理和解析路径中的变量部分,增强应用程序的灵活性和可维护性。**

5) @RequestPart (上传文件)

**

 @RequestPart

注解在 SpringMVC 中用于将请求的一部分(通常是 multipart/form-data 请求中的文件**部分))绑定到方法的参数上。这在处理文件上传时非常有用。

基本用法

**

 @RequestPart

** 注解的基本用法是在控制器的方法参数中,通过注解将请求的一部分绑定到方法参数。

后端代码实现:

 @RequestMapping("/m9")
    public String getfile(@RequestPart("file") MultipartFile file) throws IOException{
        //获取⽂件名称
        String fileName = file.getOriginalFilename();
        //⽂件上传到指定路径
        file.transferTo(new File("D:/" + file.getOriginalFilename()));
        return "接收到⽂件名称为: "+fileName;
    }

总结

在本文中,我们详细介绍了 SpringMVC 中一些常用的注解,包括 **

@SpringBootApplication

@RequestMapping

@RequestParam

@PathVariable

@RequestPart

**。通过这些注解,我们可以简化控制器的开发,增强代码的可读性和维护性。每个注解都有其独特的功能和应用场景,在构建高效的 Web 应用时发挥着重要作用。

这些注解是 SpringMVC 框架的基础,掌握它们将帮助你更好地理解和使用这个强大的 Web 框架。然而,SpringMVC 的注解体系还远不止于此。在下篇文章中,我们将继续探讨其他重要的注解.

敬请期待《SpringMVC注解全解析:构建高效Web应用的终极指南(下)》!


本文转载自: https://blog.csdn.net/2301_79339087/article/details/140448299
版权归原作者 来杯Java提提神 所有, 如有侵权,请联系我们删除。

“SpringMVC注解全解析:构建高效Web应用的终极指南 (上)”的评论:

还没有评论