MyBatisPlus快速入门自定义SQL
在MyBatisPlus中,可以通过在Mapper接口中定义方法和使用@Select
等注解来执行自定义SQL。以下是一个简单的例子:
首先,定义一个Mapper接口:
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Select;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.example.entity.User;
@Mapper
public interface UserMapper extends BaseMapper<User> {
@Select("SELECT * FROM user WHERE email = #{email}")
User selectUserByEmail(String email);
}
在这个例子中,UserMapper
继承了BaseMapper<User>
,这是MyBatisPlus提供的通用CRUD操作。然后,我们定义了一个selectUserByEmail
方法,使用@Select
注解来执行一个自定义的SQL查询,用于根据email查询用户。
在User
实体类中,你需要有对应的字段和getter/setter方法。
在application.properties
或application.yml
中配置好MyBatisPlus和数据库连接。
在服务层或控制器中,你可以通过注入UserMapper
来使用自定义的方法:
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import com.example.entity.User;
import com.example.mapper.UserMapper;
@Service
public class UserService {
@Autowired
private UserMapper userMapper;
public User getUserByEmail(String email) {
return userMapper.selectUserByEmail(email);
}
}
在这个例子中,UserService
类中注入了UserMapper
,然后通过调用selectUserByEmail
方法来获取用户信息。
确保你的项目已经配置了MyBatisPlus的自动扫描Mapper接口的路径,通常在Spring Boot的启动类上添加@MapperScan
注解来指定Mapper接口所在的包路径。
import org.mybatis.spring.annotation.MapperScan;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
@SpringBootApplication
@MapperScan("com.example.mapper")
public class MyApp {
public static void main(String[] args) {
SpringApplication.run(MyApp.class, args);
}
}
以上代码展示了如何在MyBatisPlus中定义和使用自定义SQL。
评论已关闭