spring6中如何不使用@RequestParam注解

@RequestParam的使用场景

@RequestParam注解可以用在GET和POST请求中,用于指定请求路径或请求体的参数,通常请求格式为表单格式

什么情况下可以不使用@RequestParam注解

当Controller方法的参数名与请求中的参数名一致时,可以不用@RequestParam注解。但在spring6中,默认情况下Java编译时,不会保留方法参数的名称。这是为了减小生成的字节码文件的大小
为了可以使用忽略@RequestParam注解的效果,这里需要加上编译选项-parameters
如下所示

xml 复制代码
<build>
  <plugins>
    <plugin>
      <groupId>org.apache.maven.plugins</groupId>
      <artifactId>maven-compiler-plugin</artifactId>
      <version>3.13.0</version>
      <configuration>
        <compilerArgs>
          <arg>-parameters</arg>
        </compilerArgs>
      </configuration>
    </plugin>
  </plugins>
</build>

-parameters 是一个编译器参数,它的作用是在编译 Java 源代码时保留方法参数的名称。这对于反射和某些框架(如 Spring)非常有用,它们需要通过参数名称来进行操作。

总结

在编程时,推荐不要忽略@requestparam注解

相关推荐
吾日三省Java2 小时前
Spring Cloud架构下的日志追踪:传统MDC vs 王炸SkyWalking
java·后端·架构
爱玩泥巴的小t2 小时前
new Thread().start()底层做了什么?
java
码路飞5 小时前
GPT-5.4 Computer Use 实战:3 步让 AI 操控浏览器帮你干活 🖥️
java·javascript
祈安_7 小时前
Java实现循环队列、栈实现队列、队列实现栈
java·数据结构·算法
皮皮林55119 小时前
拒绝写重复代码,试试这套开源的 SpringBoot 组件,效率翻倍~
java·spring boot
顺风尿一寸1 天前
从 Java NIO poll 到 Linux 内核 poll:一次系统调用的完整旅程
java
程途知微1 天前
JVM运行时数据区各区域作用与溢出原理
java
华仔啊1 天前
为啥不用 MP 的 saveOrUpdateBatch?MySQL 一条 SQL 批量增改才是最优解
java·后端
xiaoye20181 天前
Lettuce连接模型、命令执行、Pipeline 浅析
java
beata1 天前
Java基础-18:Java开发中的常用设计模式:深入解析与实战应用
java·后端