首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往
您找到你想要的搜索结果了吗?
是的
没有找到

@Param详解

在编译时,Java编译器会将@Param注解保留在编译后的字节码文件中。MyBatis通过Java的反射机制获取Mapper接口方法的参数列表,并检查是否存在@Param注解。...但是,Java编译器在编译时会将参数名擦除,导致在运行时无法获取参数的名称。而@Param注解可以保留参数的名称,并在运行时通过反射机制获取参数的名称,从而确保参数名与占位符名称一致。...@Param是如何进行映射的当使用@Param注解时,MyBatis会通过反射机制获取Mapper接口方法的参数信息,包括参数的名称和类型。...MyBatis解析Mapper接口方法时,会通过反射获取方法的参数信息,包括参数的名称和类型。这是通过Java的反射机制实现的。...总的来说,@Param注解的工作原理是通过反射机制获取参数信息,并将参数名称与方法的参数列表进行关联,以确保参数名与占位符名称一致。这样可以提高Mapper接口方法的可读性和可维护性。

9810

@Param 注解的作用

一、@Param 注解的作用@Param 注解主要有以下几个作用:为方法参数命名:在 Mapper 接口的方法中,给参数命名,使其在 SQL 映射文件中可以通过该名字引用。...解决参数名称冲突:当方法有多个参数时,使用 @Param 注解可以避免参数名冲突。二、@Param 注解的基本用法1. 单个参数当方法只有一个参数时,可以直接使用 @Param 注解为参数命名。...多个参数当方法有多个参数时,可以使用 @Param 注解为每个参数命名,避免名称冲突。...在这个示例中,我们有两个参数 id 和 name,通过 @Param 注解为每个参数命名,使其在 SQL 中可以分别通过 #{id} 和 #{name} 引用。三、@Param 注解的高级用法1....使用对象作为参数当方法参数是一个对象时,可以直接使用对象的属性,而无需 @Param 注解。

11010

servlet中init-param与context-param的区别「建议收藏」

中 因此可以通过获取servletConfig对象来获取servlet中init-param里配置的属性,作用域 限制在当前的Servlet中 获取方式一 1.声明一个ServletConfig当做成员变量...web.xml中的写法 username 关羽...与context-param的区别 区别一 在context-param中不存在这种获取context-param属性的方法 public class Demo01 extends HttpServlet...,因为系统的内部实现没有init(ServletContext config)这种方法 然而有init(ServletConfig config)这种方法,所有init-param有两种获取方式,而context-param...只有一种获取方式 区别二 作用域不同 init-param写在servlet中,web.xml中可以写多个servlet,而每个servlet中都可以设置一个 init-param,即init-param

47620
领券