坂田网站建设方案,怎么做一个网站页面,邢台网站建设讯息,口碑营销有哪些1. 引言
在上一篇文章中#xff0c;介绍了如何搭建一个SpringBoot项目#xff1b;本篇文章#xff0c;在上一篇文章的基础上#xff0c;接着介绍下怎样实现SpringBoot和MySQL的整合。在后端开发中#xff0c;数据库开发是绕不开的话题#xff0c;开发中很多的时间都是在…1. 引言
在上一篇文章中介绍了如何搭建一个SpringBoot项目本篇文章在上一篇文章的基础上接着介绍下怎样实现SpringBoot和MySQL的整合。在后端开发中数据库开发是绕不开的话题开发中很多的时间都是在和数据库打交道。比如APP传递的数据需要进行持久化方便下一次来获取存储设备运行日志将设备的执行日志存放到数据库中方便排查错误开放接口方便用户进行自主查询。因此接下来就来搭建一个SpringBoot和MySQL项目并且在结尾的地方会指出新手会触犯的一些规范。
2. Demo搭建
2.1 环境介绍
基本的SpringBoot项目具体可以参考如何搭建一个SpringBoot项目 Maven 进行项目构建和管理JDK 8 以上MySQL 数据库已安装
2.2 在pom.xml文件中填入依赖
dependenciesdependencygroupIdorg.mybatis.spring.boot/groupIdartifactIdmybatis-spring-boot-starter/artifactIdversion2.2.0/version/dependencydependencygroupIdmysql/groupIdartifactIdmysql-connector-java/artifactIdversion8.0.27/version/dependency
/dependencies在pom.xml文件中添加了两个依赖分别是Mybatis和Mysql。Mybatis用户表与类实体之间的转换Mysql用于连接数据库。
2.3 在 src/main/resource目录下的application.properties 添加以下配置
spring.datasource.urljdbc:mysql://localhost:3306/mydatabase?useSSLfalseserverTimezoneUTC
spring.datasource.Devicenameroot
spring.datasource.passwordpassword
spring.datasource.driver-class-namecom.mysql.cj.jdbc.Driver2.4 创建表和实体类该类和数据库表中列进行对应
CREATE DATABASE mydatabase;
USE mydatabase;CREATE TABLE device (id BIGINT(20) NOT NULL AUTO_INCREMENT,name VARCHAR(20) NOT NULL COMMENT 设备name COLLATE utf8mb4_general_ci,PRIMARY KEY (id) USING BTREE
);public class Device {private Long id;private String name;// getters and setters
}2.5 创建 Mybatis mapper接口用于查询数据库设备信息
Mapper
public interface DeviceMapper {Select(SELECT * FROM device)ListDevice getAllDevices();Insert(INSERT INTO device(name) VALUES(#{name}))Options(useGeneratedKeys true, keyProperty id)void save(Device device);
}2.6 创建一个Service层并使用mapper来连接数据库
Service
public class DeviceService {private final DeviceMapper deviceMapper;public UserService(DeviceMapper deviceMapper) {this.deviceMapper deviceMapper;}public ListDevice findAll() {return deviceMapper.findAll();}public void save(Device device) {deviceMapper.save(device);}
}2.7 开放接口操作数据库
RestController
RequestMapping(/devices)
public class DeviceController {private final DeviceService deviceService;public DeviceController(DeviceService deviceService) {this.deviceService deviceService;}GetMappingpublic ListDevice getAllDevices() {return deviceService.findAll();}PostMappingpublic void save(RequestBody Device device) {deviceService.save(device);}
}2.8 在终端中启动项目
mvn spring-boot:run项目启动成功后可以使用PostMan对接口进行测试使用Get请求地址 /devices可以获取所有的devices采用POST时可以在数据库中添加一个Device。
3. 结尾
如上步骤就可以整合SpringBoot、MyBatis、MySQL。流程主要包括 在整个流程中有些规范
controller层这里暴露出接口路径暴露入参因此这里应该要简洁明了业务逻辑切记不要写在这里这样显得代码又臭又长毫无逻辑难于维护。service层这里才是业务逻辑主要实现的地方具体的业务也需要划分模块化切记不要重复写一样的代码。mapper层持久层负责与数据库进行交互存储和检索数据。一般使用MyBatis等持久化框架来实现这一层。