谷粒商城-全栈-09 快速开发-配置及测试微服务 CRUD 功能
一、配置
1、导入数据库的驱动
在 gulimall-common
的 pom.xml
引入mysql依赖驱动:
<properties>
.
.
.
<mysql.version>8.0.17</mysql.version>
</properties>
<dependencies>
.
.
.
<!-- 导入mysql 驱动-->
<!-- https://mvnrepository.com/artifact/mysql/mysql-connector-java -->
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>${mysql.version}</version>
</dependency>
</dependencies>
2、配置数据源
在gulimall-product 目录下新建 resources/application.yml 文件,并配置数据源相关信息
application.yml
spring:
datasource:
username: root
password: root
url: jdbc:mysql://192.168.10.10:3306/gulimall_pms
driver-class-name: com.mysql.cj.jdbc.Driver
mybatis-plus:
mapper-location: classpath:/mapper/**/*.xml
global-config:
db-config:
id-type: auto # id主键自增
3、配置MyBatis-Plus
1)、使用@MapperScan
作用:指定要变成实现类的接口所在的包,然后包下面的所有接口在编译之后都会生成相应的实现类
添加位置:是在Springboot启动类上面添加
启动类product/GulimallProductApplication.java
引入@MapperScan扫描
@MapperScan("com.atguigu.gulimall.product.dao")
@SpringBootApplication
public class GulimallProductApplication {
public static void main(String[] args) {
SpringApplication.run(GulimallProductApplication.class, args);
}
}
2)、告诉MyBatis-Plus,sql映射文件位置(这个已经在上边application.yml做了配置)
mybatis-plus:
mapper-location: classpath:/mapper/**/*.xml
二、测试
单元测试com.atguigu.gulimall.product.GulimallProductApplicationTests
package com.atguigu.gulimall.product;
import com.atguigu.gulimall.product.entity.BrandEntity;
import com.atguigu.gulimall.product.service.BrandService;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.context.SpringBootTest;
import org.springframework.test.context.junit4.SpringRunner;
import java.util.List;
@RunWith(SpringRunner.class)
@SpringBootTest
public class GulimallProductApplicationTests {
@Autowired
BrandService brandService;
@Test
public void contextLoads() {
BrandEntity brandEntity = new BrandEntity();
// 插入
// brandEntity.setName("苹果");
// brandService.save(brandEntity);
// System.out.println("保存成功...");
// 更新
// brandEntity.setDescript("我要吃苹果");
// brandEntity.setBrandId(1L);
// brandService.updateById(brandEntity);
// System.out.println("更新成功...");
// 查询 QueryWrapper,表示查询条件
List<BrandEntity> list = brandService.list(new QueryWrapper<BrandEntity>().eq("brand_id", 1L));
// for (BrandEntity entity : list) {
//
// }
list.forEach((item)->{
System.out.println(item);
});
// 打印结果:
// BrandEntity(brandId=1, name=苹果, logo=null, descript=我要吃苹果, showStatus=null, firstLetter=null, sort=null)
}
}
为者常成,行者常至
自由转载-非商用-非衍生-保持署名(创意共享3.0许可证)