Spring boot整合Junit
阿新 • • 發佈:2019-02-12
一.整合Junit
- 先建立一個數據庫,並加入點資料來進行操作
DROP TABLE IF EXISTS `s_user`; CREATE TABLE `s_user` ( `id` bigint(20) NOT NULL AUTO_INCREMENT, `user_name` varchar(100) DEFAULT NULL COMMENT '使用者名稱', `password` varchar(100) DEFAULT NULL COMMENT '密碼', `name` varchar(100) DEFAULT NULL COMMENT '姓名', PRIMARY KEY (`id`) ) ENGINE=InnoDB AUTO_INCREMENT=7 DEFAULT CHARSET=utf8; INSERT INTO `user` VALUES ('1', 'zhangsan', '123456', '張三'); INSERT INTO `user` VALUES ('2', 'lisi', '123456', '李四'); INSERT INTO `user` VALUES ('3', 'wangwu', '123456', '王五'); INSERT INTO `user` VALUES ('4', 'zhangwei', '123456', '張偉'); INSERT INTO `user` VALUES ('5', 'lina', '123456', '李娜'); INSERT INTO `user` VALUES ('6', 'lilei', '123456', '李磊');
1.加依賴
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> <modelVersion>4.0.0</modelVersion> <groupId>it.playmaker</groupId> <artifactId>SpringBoot-play</artifactId> <version>0.0.1-SNAPSHOT</version> <parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId> <version>2.0.6.RELEASE</version> </parent> <dependencies> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-data-jpa</artifactId> </dependency> <dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> </dependency> <dependency> <groupId>org.mybatis.spring.boot</groupId> <artifactId>mybatis-spring-boot-starter</artifactId> <version>1.1.1</version> </dependency> <!—配置測試啟動器—> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-test</artifactId> </dependency> </dependencies> <build> <plugins> <plugin> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-maven-plugin</artifactId> </plugin> </plugins> </build> </project>
2.加入Spring-Boot配置檔案
#DB Configuration: spring.datasource.driverClassName=com.mysql.jdbc.Driver spring.datasource.url=jdbc:mysql://127.0.0.1:3306/xxxx?characterEncoding=utf8 spring.datasource.username=root spring.datasource.password=xxxxx #JPA Configuration: spring.jpa.database=mysql spring.jpa.show-sql=true spring.jpa.generate-ddl=true #是否自動生成ddl spring.jpa.hibernate.ddl-auto=update #生成ddl的方式 spring.jpa.hibernate.naming_strategy=org.hibernate.cfg.ImprovedNamingStrategy #選擇的命名策略
3.實體類
@Entity
@Table(name="s_user")//對應表
public class User {
@Id
@Column(name="id")
@GeneratedValue(strategy=GenerationType.IDENTITY)//自增長
private Long id;
@Column(name="user_name")//在windows系統下mysql不區分大小寫。在Linux系統下,區分大小寫
private String user_name;
@Column(name="password")
private String password;
@Column(name="name")
private String name;
public Long getId() {
return id;
}
public void setId(Long id) {
this.id = id;
}
public String getUser_name() {
return user_name;
}
public void setUser_name(String user_name) {
this.user_name = user_name;
}
public String getPassword() {
return password;
}
public void setPassword(String password) {
this.password = password;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
@Override
public String toString() {
return "User [id=" + id + ", user_name=" + user_name + ", password=" + password + ", name=" + name + "]";
}
}
4.編寫Mapper類
@Mapper
public interface IUserMapper {
@Select("select * from s_user")
public List<User> findAll();
}
5.使用者業務邏輯
public interface IUserService {
//查詢所有使用者
List<User> findAll();
}
6.使用者業務邏輯實現類
@Service("userService")
public class UserServiceImpl implements IUserService {
@Autowired
private IUserMapper userMapper;
public List<User> findAll() {
return userMapper.findAll();
}
}
7.引導類
@SpringBootApplication
public class Application {
public static void main(String[] args) {
SpringApplication.run(Application.class, args);
}
}
8.建立一個測試類
@RunWith(SpringRunner.class)
@SpringBootTest
@Import(Application.class)//屬性:用於指定引導類
public class SpringBootJunitTest {
@Autowired
private IUserService userService;
public void testFindAll() {
List<User> list=userService.findAll();
System.out.println(list);
}
}
二.讀取Spring Boot核心配置檔案內容
@RunWith(SpringRunner.class)
@SpringBootTest
@Import(Application.class)//屬性:用於指定引導類
public class SpringBootJunitTest {
//@Autowired 欄位型別注入
@Resource
private Environment env;
@Test
public void testReadSpringBootConfig() {
System.out.println(env.getProperty("spring.datasource.url"));
}
}