不定参数入参

简介: 本节介绍非JSON格式参数的处理方式,展示Spring Boot中使用@RequestParam、@RequestBody等注解接收不同类型的请求参数,包括基本类型和对象的绑定方法。

1.非JSON格式入参

  @PostMapping(value = "/init", produces = MediaType.APPLICATION_JSON_VALUE)
    public ResultDTO initDoctorConfig(@Valid User param) {
       do something...
    }
  
  @PostMapping(value = "/init", produces = MediaType.APPLICATION_JSON_VALUE)
    public ResultDTO initDoctorConfig(int id) {
        do something...
    }
  
  @PostMapping(value = "/init", produces = MediaType.APPLICATION_JSON_VALUE)
    public ResultDTO initDoctorConfig(@RequestParam int id) {
        do something...
    }
  
  @PostMapping(value = "/init", produces = MediaType.APPLICATION_JSON_VALUE)
    public ResultDTO initDoctorConfig(@RequestBody int id) {
       do something...
    }
相关文章
|
2月前
|
运维 监控 安全
为什么禁止使用 Executors 创建线程池?
Java并发中,`Executors`快捷方法易导致OOM或系统雪崩,因隐藏关键配置。阿里手册禁止其在生产使用。应显式创建`ThreadPoolExecutor`,设定核心参数与有界队列,结合Guava命名线程,提升系统稳定性与可维护性。
|
2月前
|
SQL 监控 安全
如何做好 SQL 质量监控:从“盲跑查询”到“可观测分析”
本文详解SQL质量监控的五大核心维度:使用概览、性能表现、成功率、成本消耗与行为审计,结合阿里云SLS实践,帮助企业实现从被动排查到主动治理的转变,保障系统稳定、控制成本、满足合规要求,让每一条SQL查询都清晰可控、值得信赖。
|
2月前
|
SQL 缓存 安全
SimpleDateFormat 线程安全与并发更新加锁实践
在Java开发中,`SimpleDateFormat`非线程安全,禁止声明为`static`。推荐使用`DateTimeFormatter`(JDK8+)、`ThreadLocal`封装或`DateUtils`。并发修改数据时需加锁,低冲突用乐观锁,高冲突用悲观锁,重试不少于3次。保障高并发下系统稳定。
Arrays.asList之后不要调用修改操作
`Arrays.asList()` 返回的列表不可直接修改(如 add/remove),否则抛出 `UnsupportedOperationException`;且其底层基于原数组,共享数据,修改数组会影响列表。
|
2月前
|
存储 安全
3.OAuth2.0四种授权模式
本文详解OAuth2授权码模式流程:A服务客户端通过B服务认证服务,经用户授权获取授权码,再换取访问令牌,从而安全调用B服务资源。该模式安全性高,广泛应用于第三方登录场景。
3.OAuth2.0四种授权模式
|
2月前
|
安全 Java Spring
1-DelegatingFilterProxy
本文解析了Spring Security中DelegatingFilterProxy的源码执行流程。通过web.xml配置,该过滤器根据名称springSecurityFilterChain从容器中获取FilterChainProxy实例,并在doFilter中委托其处理请求,实现安全过滤链的调用。
|
2月前
|
安全 Java Spring
2-FilterChainProxy
本文通过源码分析Spring Security中的FilterChainProxy,揭示其如何将多个过滤器封装进SecurityFilterChain,并逐步调试验证过滤器链的加载与执行过程,最终确认FilterChainProxy正是真正执行的安全过滤器链核心。
2-FilterChainProxy
|
2月前
|
安全 Java 应用服务中间件
2-SpringSecurity核心架构
Spring Security基于过滤器链实现安全控制,通过FilterChainProxy整合多个SecurityFilterChain,结合DelegatingFilterProxy实现与Spring容器集成,完成认证授权及异常处理。
|
2月前
|
存储 Java 开发者
初始化HashMap大小的考量与Guava的最佳实践
在Java中,HashMap初始化容量会自动调整为2的幂次方,影响性能。使用Guava的Maps.newHashMapWithExpectedSize可精准预估容量,避免频繁扩容,提升效率。也可手动按公式`(int)(expectedSize / 0.75) + 1`计算初始容量,优化内存与性能表现。
|
2月前
|
SQL 前端开发 测试技术
如何写好一篇技术方案(精简版)
一份好的技术方案是推动项目落地、对齐认知、降低协作成本的关键。应包含变更记录、背景、功能模块、流程图、接口设计等十大结构,遵循图文结合、聚焦可执行、简洁明了的原则,800–1500字为宜,重在指导行动而非堆砌文字。