- 执行传参
@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 对象中返回。
- 执行sql语句
@Select 注解中使用了一个 ${sql} 占位符,该占位符将在运行时被替换为方法参数 sql 的值。同时,这里直接使用了 ${sql} 占位符,因此可以将任何 SQL 语句作为方法参数传递进来。
例如,如果要查询所有图书信息,可以调用 getBooks("SELECT * FROM book") 方法,将 SQL 语句作为字符串参数传递进来。Mybatis 框架会根据传递进来的 SQL 语句动态生成 SQL 查询语句,并执行查询操作。
public interface BookMapper { @Select("${sql}") List getBooks(String sql);}
来源地址:https://blog.csdn.net/m0_59799878/article/details/129875650