在之前的两篇文章与大家简单分享了一下在SpringBoot应用中如何使用JPA操作数据库,但在我们的实际开发中,JPA用的相对较少,虽然其上手异常简单,但想要执行高效的SQL语句还是有一定的学习难度的。今天与大家介绍如何使用Mybatis(使用注解书写SQL语句)。
不多废话!
1、老老的规矩!先看pom文件,如下
<dependencies>
<!-- mybatis -->
<dependency>
<groupId>org.mybatis.spring.boot</groupId>
<artifactId>mybatis-spring-boot-starter</artifactId>
<version>2.0.0</version>
</dependency>
<!-- mysql驱动-->
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>5.1.47</version>
</dependency>
<!-- druid连接池 -->
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>druid</artifactId>
<version>1.0.9</version>
</dependency>
<!-- 测试组件-->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
</dependency>
<!-- lombok -->
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
</dependency>
</dependencies>
2、配置文件application.yml
spring:
datasource:
url: jdbc:mysql://127.0.0.1:3306/mybatis?&characterEncoding=utf-8&useSSL=false #数据库的连接信息
driver-class-name: com.mysql.jdbc.Driver #数据库驱动
username: root #数据库的用户名
password: 123456 #数据库的密码
type: com.alibaba.druid.pool.DruidDataSource #使用druid连接池
mybatis:
configuration:
map-underscore-to-camel-case: true #开启mybatis驼峰转下划线命名规则规则
注释我都写里面啦~
3、创建用于测试的User实体类
@Data
public class User {
private Long id;
private String userName;
}
4、测试用的UserMapper
public interface UserMapper {
@Select("select * from tb_user where id = #{id}")
public User getUserById(long id);
}
可以看到,这个借口里面只有一个方法,方法上注解中的内容相信大家都不陌生,我就不过多描述了。
5、启动类
@SpringBootApplication
@MapperScan("com.xiao.mapper")
public class Application {
public static void main(String[] args) {
SpringApplication.run(Application.class, args);
}
}
注意:启动类上要添加@MapperScan注解,这也是最容易忘记的地方,在这里稍做强调!
6、创建UserMapper的测试类UserMapperTest
@RunWith(SpringRunner.class)
@SpringBootTest
public class UserMapperTest {
@Autowired
private UserMapper userMapper;
@Test
public void getUserById(){
User user = userMapper.getUserById(1L);
System.out.println(user);
Assert.assertNotNull(user);
}
}
不会进行单元测试?传送门
7、最终工程目录如下
8、数据库信息如下
9、启动测试类,观察我们的控制台日志输出
可以看到,数据已经被成功的查询打印出来!
是不是也很简单呢!
源码链接:
https://github.com/devilyang123/SpringBoot-Learning/tree/master/springboot-mybatis-annotation
欢迎关注我的个人公众号“笑笑是一个码农”,第一时间获取最新文章。
您的关注,就是支持我持续写作的最大动力!
还可以免费领取前后端全站学习视频资料呦~
个人微信号,如需添加微信,请备注来源,因为妈妈从小就告诉我不要随便跟陌生人聊天!(嘿嘿~)