MyBatis-Plus通常不会侵入自定义SQL语句,但在某些情况下,可能会进行一些自动化的处理。如果你希望完全掌控自己的SQL语句,可以尝试以下方法: 使用@SelectProvider注解: 你可以使用@SelectProvider注解来指定自己的SQL提供器类,以便完全自定义SQL语句。首先,创建一个SQL提供器类,然后在提供器类中构建你的SQL语句。然后在Mapper接口方法上使用@SelectProvider注解引用提供器类。这样可以避免MyBatis-Plus对SQL的干预。 创建SQL提供器类: public class MyCustomSqlProvider { public String getUserSql(String username) { return "select * from system_users where username = #{username} limit 1"; } } 在Mapper接口中使用@SelectProvider注解: @Mapper public interface MyMapper extends BaseMapperX { @SelectProvider(type = MyCustomSqlProvider.class, method = "getUserSql") List getUser(@Param("username") String username); }