Mybatis注解开发@Select执行参数和执行sql语句的方式(最新详解)
作者:晓小邰
1.执行传参
@Select 是 Mybatis 框架中的一个注解,用于执行 SQL 查询语句,并把查询结果映射到指定的 Java 对象中。具体来说,@Select 注解会将注解中的 SQL 查询语句交给 Mybatis 框架进行解析和执行。在解析过程中,Mybatis 会通过 #{} 占位符获取查询语句中的参数,并将这些参数传递给底层的 JDBC 驱动程序,最终执行 SQL 查询并返回查询结果。例如,以下是一个简单的使用 @Select 注解查询用户信息的示例:
public interface UserMapper { @Select("SELECT id, name, age FROM user WHERE id = #{userId}") User getUserById(int userId); }
在上面的示例中,@Select 注解指定了一个 SELECT 查询语句,其中包含一个占位符 #{userId},该占位符将在执行查询时被替换为方法参数 userId 的值。同时,@Param 注解指定了该方法参数的名称,使得 Mybatis 能够正确地解析查询语句中的参数。当调用 getUserById 方法时,Mybatis 框架会自动解析并执行查询语句,并将查询结果映射到 User 对象中返回。
2.执行sql语句
@Select 注解中使用了一个 ${sql} 占位符,该占位符将在运行时被替换为方法参数 sql 的值。同时,这里直接使用了 ${sql} 占位符,因此可以将任何 SQL 语句作为方法参数传递进来。例如,如果要查询所有图书信息,可以调用 getBooks("SELECT * FROM book") 方法,将 SQL 语句作为字符串参数传递进来。Mybatis 框架会根据传递进来的 SQL 语句动态生成 SQL 查询语句,并执行查询操作。
public interface BookMapper { @Select("${sql}") List<Book> getBooks(String sql); }
到此这篇关于Mybatis注解开发@Select执行参数和执行sql语句的方式的文章就介绍到这了,更多相关Mybatis注解开发内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!