引言
在Spring开发中,请求参数处理、统一响应格式、分层架构设计以及依赖管理是构建可维护应用的核心要素。然而,许多开发者在实践中常面临以下问题:
-
如何规范接收不同格式的请求参数?
-
为何要引入分层架构?
-
什么是控制反转(IoC)和依赖注入(DI)?
-
Spring的注解如
@RestController
、@RequestBody
等有何区别?
本文将通过一个完整的案例演进,从基础请求处理出发,逐步引入分层架构与IoC容器,结合注解的深度解析,最终实现高内聚、低耦合的代码结构。过程中会详细讲解Bean对象管理、组件扫描机制,以及常用注解的核心用法。
一、请求参数处理与统一响应
1. 请求参数接收方式
这里用Postman作为测试工具
(1) 简单参数:@RequestParam

简单post请求
//保证参数名和请求参数名一致,或者用@RequestParam注解指定参数名
@RequestMapping(value = "/simpleParam")
public String simpleParam(String name, int age) {
System.out.println(name + ": " + age);
return "success";
}
@RequestParam
:绑定请求参数到方法参数,支持:
name
:指定参数名(若省略则默认匹配方法参数名)
defaultValue
:设置默认值测试URL:
http://localhost:8080/user?name=Tom&age=20
(2)简单实体参数
如果传入参数太多,我们可以进行实体化再进行传入,需要注意的是,传递的参数名字和接口方法里的参数名字需要对应,否则就需要用上面提到的@RequestParam进行指定
User类
package com.ffyc.entity;
public class User {
private String name;
private Integer age;
private Address address;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public Address getAddress() {
return address;
}
public void setAddress(Address address) {
this.address = address;
}
public Integer getAge() {
return age;
}
public void setAge(Integer age) {
this.age = age;
}
@Override
public String