整合其他框架
SpringBoot
提供了起步依赖,方便导入坐标,因此能够非常方便的去整合其他的第三方框架
整合Junit
SpringBoot
整合Junit
来提供单元测试,基本步骤:
搭建
SpringBoot
工程引入
starter-test
起步依赖(创建SpringBoot
工程会自动的写入该起步依赖)编写测试类
在
src/main/java
文件夹中编写相关的测试类:javapackage com.jlc.springboottest; import org.springframework.stereotype.Service; @Service public class UserService { public void add() { System.out.println("add..."); } }
编写测试方法
添加测试相关的注解
对于测试用例,我们在
src/test/java
文件中进行编写:javapackage com.jlc.test; import com.jlc.springboottest.SpringbootTestApplication; import org.junit.runner.RunWith; import org.springframework.boot.test.context.SpringBootTest; import org.springframework.test.context.junit4.SpringRunner; import com.jlc.springboottest.UserService; // UserService的测试类 @RunWith(SpringRunner.class) @SpringBootTest(classes = SpringbootTestApplication.class) public class UserServiceTest { @Autowired private UserService userService; @Test public void testAdd() { userService.add(); } }
如果当前测试用例所在的包,是其引导类
src/main/java/com.jlc.springboottest.SpringbootTestApplication
所在的包com.jlc.springboottest
的子包(或者包名相同),那么测试用例的代码可以修改为:javapackage com.jlc.springboottest; import org.junit.runner.RunWith; import org.springframework.boot.test.context.SpringBootTest; import org.springframework.test.context.junit4.SpringRunner; import com.jlc.springboottest.UserService; // UserService的测试类 @RunWith(SpringRunner.class) @SpringBootTest public class UserServiceTest { @Autowired private UserService userService; @Test public void testAdd() { userService.add(); } }
整合Redis
SpringBoot
整合Redis
的基本步骤:
搭建
SpringBoot
工程要勾选
NoSQL
中的Spring Data Redis (Access+Driver)
引入
redis
起步依赖(勾选NoSQL
中的Spring Data Redis (Access+Driver)
后会自动引入)具体的引入内容为:
xml<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-data-redis</artifactId> </dependency>
配置
Redis
相关属性(只有本机的Redis
才可以不进行配置(Redis
的连接信息默认的就是本机的Ip
))在实际的开发中,一定时需要外置的
Redis
,因此,我们需要进行相应的配置在配置文件
application.yml
文件中进行如下的配置:yamlspring: redis: host: 127.0.0.1 # redis的主机Ip,后续修改成对应的Ip即可 port: 6379 # redis的端口号,后续修改成对应的即可
注入
RedisTemplate
模板编写测试方法,测试
在
src/test/java
中创建一个测试类:javapackage com.jlc.springbootredis; import org.junit.runner.RunWith; import org.springframework.boot.test.context.SpringBootTest; @RunWith(SpringRunner.class) @SpringBootTest public class SpringbootRedisApplicationTests { @Autowired private RedisTemplate redisTemplate; // 注入RedisTemplate模板 @Test public void testSet() { // 存入数据 redisTemplate.boundValueOps("name").set("jlc"); } @Test public void getSet() { // 获取数据 Object name = redisTemplate.boundValueOps("name").get(); System.out.println(name); } }
整合MyBatis
SpringBoot
整合MyBatis
的基本步骤:
搭建
SpringBoot
工程勾选对应的依赖:
SQL
中的MyBatis Framework
和MySQL Driver
引入
mybatis
起步依赖,添加mysql
驱动(搭建SpringBoot
工程勾选对应的依赖后就会自动创建)mybatis
起步依赖的内容为:xml<dependency> <groupId>org.mybatis.spring.boot</groupId> <artifactId>mybatis-spring-boot-starter</artifactId> <version>2.1.0</version> </dependency>
mysql
的驱动也会自动的添加,其内容为:xml<dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> <scope>runtime</scope> <!--表示驱动在运行时生效,可以注释掉,使编译时也生效--> </dependency>
定义表和实体类
定义一张
User
数据表编写实体类:
javapackage com.jlc.springbootmybatis.domain; public class User { private int id; private String username; private String password; public int getId() { return id; } public void setId(int id) { this.id = id; } public String getUsername() { return username; } public void setUsername(String username) { this.username = username; } public String getPassword() { return password; } public void setPassword(String password) { this.password = password; } }
编写
DataSource
和MyBatis
相关配置(使用注解开发就不需要配置MyBatis
的相关配置)在配置文件
application.yml
文件中进行如下的配置:yaml# DataSource的配置 spring: datasource: # ///表示省略了用户名,Ip和端口,因为是连接的本地的,myMysql表示数据库的名称,后面需要配置时区信息 url: jdbc:mysql:///myMysql?serverTimezone=UTC username: root password: root driver-class-name: com.mysql.cj.jdbc.Driver
编写
dao
/mapper
文件/纯注解开发使用
xml
方式进行开发编写
mapper
层内容(在src/main/java
文件夹下)javapackage com.jlc.springbootmybatis.mapper; import com.jlc.springbootmybatis.domain.User; import org.apache.ibatis.annotations.Mapper; import org.springframework.sterotype.Repository; import java.util.List; @Mapper @Repository public interface UserXmlMapper { public List<User> findAll(); }
在
resources
中创建mapper
文件夹,用于存放我们的映射文件,创建:UserMapper.xml
xml<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> <!--具体的配置--> <mapper namespace="com.jlc.springbootmybatis.mapper.UserXmlMapper"> <select id="findAll" resultType="user"> select * from user </select> </mapper>
使用
xml
方式开发,需要在配置文件中加入MyBatis
的相关配置yaml# MyBatis的配置 mybatis: mapper-location: classpath: classpath:mapper/*Mapper.xml # 指定映射文件路径 type-aliases-package: com.jlc.springbootmybatis.domain.User # 通过包扫描配置别名 # config-Location: # 指定mybatis的核心配置文件
使用注解开发
编写
mapper
层内容(在src/main/java
文件夹下)javapackage com.jlc.springbootmybatis.mapper; import com.jlc.springbootmybatis.domain.User; import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Select; import org.springframework.sterotype.Repository; import java.util.List; @Mapper @Repository public interface UserMapper { @Select("select * from user") public List<User> findAll(); }
测试
注入对应的测试方法:
javapackage com.jlc.springbootmybatis; import org.junit.runner.RunWith; import org.springframework.boot.test.context.SpringBootTest; import org.springframework.test.context.junit4.SpringRunner; import com.jlc.springbootmybatis.mapper.UserMapper; import com.jlc.springbootmybatis.domain.User; import java.util.List; // UserMapper的测试类 @RunWith(SpringRunner.class) @SpringBootTest public class SpringbootMybatisApplicationTests { @Autowired private UserMapper userMapper; @Autowired private UserXmlMapper userXmlMapper; @Test public void testXmlFindAll() { List<User> list = userXmlMapper.findAll(); System.out.println(list); } @Test public void testFindAll() { List<User> list = userMapper.findAll(); System.out.println(list); } }