有以下的收获:
- 项目的层级构建
- Bean的注入使用
- 数据库框架mybatis-plus基本的使用
- Postman软件接口的测试
SpringBoot简介:
SpringBoot是基于 Spring 开发的一种轻量级的全新框架,不仅继承了 Spring 框架原有的优秀特性,而且还通过简化配置来进一步简化了 Spring 应用的整个搭建和开发过程。通过 Spring Boot,可以轻松地创建独立的,基于生产级别的基于 Spring 的应用程序。
官网地址:https://spring.io/
基本的创建:
这里创建的是一个web的应用
基本的项目层级
controller层 : 主要是编写前端访问的方法,当前端发送请求时,通过对应的路径访问到对应的方 法,从而调用对应业务逻辑的接口,完成业务逻辑功能
mapper层:里面是定义一些业务的接口方法,也就是增删改查的操作方法。
domain:这里主要是存放一下业务的实体类,也就是数据库对应每个表对应的类,每个属性对应 的字段
**************************************************************************************************************
Bean的自动注入使用,这里主要记录 @Autowired 和 @Resource
@Autowired | 先根据类型,而后再根据名字 进行自动注入 |
@Resource | 先根据名字,而后再根据类型 进行自动注入 |
@Autowired注解 使用示例:
@Autowired UsersMapper getUsersMapper;
@Test
public void saveWritings() {
System.out.println("Autowired 注入");
//查询全部
System.out.println(getUsersMapper.selectList(null));
}
.@Resource注解 使用示例:
@Resource UsersMapper getUsersMapper;
@Test
public void saveWritings() {
System.out.println("Autowired 注入");
//查询全部
System.out.println(getUsersMapper.selectList(null));
}
由上可见,两种方法都可进行使用,但是有时候使用@Autowired的时候会出现下这样的情况这里的意思是建议使用构造器的方式注入,如下
private final AnnouncementServiceImpl announcementService;
@Autowired
public AnnouncementController(AnnouncementServiceImpl announcementService){
this.announcementService = announcementService;
}
*************************************************************************************************************
mybatis-plus框架的使用
简介:
mybatis-plus(简称MP)是一个mybatis 的增强工具,在 Mybatis 的基础上只做增强不做改变,可以极大的提高的开发的效率,降低开发的成本。
官网地址:MyBatis-Plus
需要导入mybatis-plus的依赖
<dependency>
<groupId>com.baomidou</groupId>
<artifactId>mybatis-plus-boot-starter</artifactId>
<version>3.5.3</version>
</dependency>
连接数据库的yml文件配置
spring:
datasource:
driver-class-name: com.mysql.cj.jdbc.Driver
url: jdbc:mysql:///数据库名称?serverTimezone=UTC
username: root
password: 数据库密码
然后是mapper层的定义使用
@Mapper
public interface WritingsMapper extends BaseMapper<Writings> {
}
简单的测试用例:
@Autowired
WritingsMapper writingsMapper;
@Test
void contextLoads() {
//查询全部文章
System.out.println(writingsMapper.selectList(null));
}
结果显示:
**************************************************************************************************************
Postman软件接口测试的使用
官网软件下载:Postman
1.项目中controller层的定义示例:
package com.example.demo.controller;
import com.example.demo.domain.Writings;
import com.example.demo.mapper.WritingsMapper;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import java.util.List;
@RestController
@RequestMapping("/writings")
public class WritingsController{
private final WritingsMapper writingsMapper;
@Autowired
public WritingsController(WritingsMapper writingsMapper) {
this.writingsMapper=writingsMapper;
}
@GetMapping("/getAll")
public List<Writings> getAll() {
//获取所有文章的信息,
return writingsMapper.selectList(null);
}
}
@GetMapping:表明该请求方式为get 路径访问为“/getAll”
@RestController:该注解是@Controller 的衍生注解,表明该类下的返回数据为JSON格式,这只 是一个接口,而不返回页面,适用于前后端分离
@RequestMapping:表明所有的该类下的请求路径前缀为"/writings"
2.Postman接口的定义
(1).点击新建测试用例
(2)在地址栏写上接口的访问路径
(3)点击Send 进行测试 然后下方可以看到结果
以上就是我近期对springboot的学习使用和概括,通过学习springboot让我对整个业务流程的开发有了更深层次的学习。