web第六次课后作业--使用ApiFox实现请求响应操作

一、实体参数

1.1 简单实体参数

1.2 复杂实体对象

  • 如果请求参数比较多,通过上述的方式一个参数一个参数的接收会比较繁琐。
  • 此时,我们可以考虑将请求参数封装到一个实体类对象中。 要想完成数据封装,需要遵守如下规则:请求参数名与实体类的属性名相同。
  • 在实体类中可以有一个或多个属性,也可以是实体对象类型的。如:
    User类中有一个Address类型的属性(Address是一个实体类)



二、数组集合参数

2.1 数组参数

  • 请求参数名与形参数组名称相同且请求参数为多个,定义 数组类型形参即可接收参数。
cpp 复制代码
@RestController
public class RequestController {
    //数组集合参数
    @RequestMapping("/arrayParam")
    public String arrayParam(String[] hobby){
        System.out.println(Arrays.toString(hobby));
        return "OK";
    }
}

2.2 集合参数

  • 默认情况下,请求中参数名相同的多个值,是封装到数组。如果要封装到集合,要使用@RequestParam绑定参数关系。
cpp 复制代码
@RestController
public class RequestController {
    //数组集合参数
    @RequestMapping("/listParam")
    public String listParam(@RequestParam List<String> hobby){
        System.out.println(hobby);
        return "OK";
    }
}

三、日期参数

  • @DateTimeFormat注解的pattern属性中指定了哪种日期格式,前端的日期参数就必须按照指定的格式传递。
  • 后端controller方法中,需要使用Date类型或LocalDateTime类型,来封装传递的参数。
cpp 复制代码
@RestController
public class RequestController {
    //日期时间参数
   @RequestMapping("/dateParam")
    public String dateParam(
            @RequestParam @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") LocalDateTime updateTime
    ) {
        DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");
        System.out.println(updateTime.format(formatter)); 
        // 输出格式化后的字符串
        return "OK";
    }
}

运行结果

相关推荐
IT_陈寒2 小时前
Redis持久化这个坑,我爬了一整天才出来
前端·人工智能·后端
无风听海2 小时前
多租户系统中的 OIDC:Discovery 端点与联合登录的深度实践
后端·python·flask
小小前端仔LC3 小时前
Node.js + LangChain + React:搭建个人知识库(六)- “吃什么”项目实战:从700+菜谱入库到Taro H5端JSON渲染
前端·后端
程序员黑豆3 小时前
AI全栈开发之Java:怎么配置Java环境变量
前端·后端·ai编程
苍何4 小时前
一手实测 Claude Fable 5,手搓了个 Obsidian 的 Codex 插件
后端
swipe5 小时前
做多轮对话 Agent,为什么我建议把短期记忆放到 Redis
后端·面试·llm
程序员黑豆5 小时前
AI全栈开发之Java:什么是JDK
前端·后端·ai编程
阿明在折腾5 小时前
从Canvas到AI模型:我在线工具站里的图片处理实战
前端·后端
tyung6 小时前
Go 手写 Wait-Free SPSC 无界队列:无 CAS、无锁、泛型节点池
数据结构·后端·go
Lucien3236 小时前
学完 Spring Boot 再看 FastAPI,我破防了
后端