MyBatis SelectProvider 可以动态生成 SQL 查询语句,适用于需要根据不同条件生成不同查询语句的场景。以下是一个简单的示例,展示了如何使用 SelectProvider 进行动态查询:
@Mapper public interface UserMapper { @SelectProvider(type = UserProvider.class, method = "getUserById") User getUserById(Long id); } public class UserProvider { public String getUserById(Long id) { return "SELECT * FROM user WHERE id = " + id; } } <mappers> <mapper class="com.example.UserMapper"/> </mappers> 通过以上示例,我们可以看到如何使用 SelectProvider 实现动态查询功能。在实际项目中,可以根据具体需求编写更复杂的逻辑,以满足不同的查询条件。