【六:(mock数据)spring boot+mybatis+yml】
目录
- 1.1、代码编写
- Demo类
- User类
- 启动类 APplication
- 1.2、配置类
- 查询语句的配置 mysql.yml
- springboot的配置 application.yml
- 日志的配置 logback.xml
- 数据库的配置 mybatis-config.xml
- 1.3、测试:
- 1.3.1、测试获取用户数
- 1.3.2、添加用户
- 1.3.3、数据的更新
- 1.3.4、数据的删除

1.1、代码编写
Demo类
import com.course.model.User;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import lombok.extern.log4j.Log4j;
import org.mybatis.spring.SqlSessionTemplate;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
@Log4j
@RestController
@Api(value = "v1",tags = "这是我的第一个版本的demo")
@RequestMapping("v1")
public class Demo {//首先获取一个执行sql语句的对象@Autowiredprivate SqlSessionTemplate template;@RequestMapping(value = "/getUserCount",method = RequestMethod.GET)@ApiOperation(value = "可以获取到用户数",httpMethod = "GET")public int getUserCount(){return template.selectOne("getUserCount");}@RequestMapping(value = "/addUser",method = RequestMethod.POST)public int addUser(@RequestBody User user){int result = template.insert("addUser",user);return result;}@RequestMapping(value = "/updateUser",method = RequestMethod.POST)public int updateUser(@RequestBody User user){return template.update("updateUser",user);}@RequestMapping(value = "/deleteUser",method = RequestMethod.GET)public int delUser(@RequestParam int id){return template.delete("deleteUser",id);}}
User类
@Data
public class User {private int id;private String name;private String sex;private int age;}
启动类 APplication
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.context.ConfigurableApplicationContext;
import org.springframework.scheduling.annotation.EnableScheduling;
import javax.annotation.PreDestroy;@EnableScheduling
@SpringBootApplication
public class Application {private static ConfigurableApplicationContext context;public static void main(String[] args) {Application.context = SpringApplication.run(Application.class,args);}@PreDestroypublic void close(){Application.context.close();}}
1.2、配置类
查询语句的配置 mysql.yml
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapperPUBLIC "-//mybatis.org//DTD Mapper 3.0//EN""http://mybatis.org/dtd/mybatis-3-mapper.dtd"><mapper namespace="com.course"><select id="getUserCount" resultType="Integer">select count(*) from user;</select><insert id="addUser" parameterType="com.course.model.User">insert into user(id,name,age,sex)values(#{id},#{name},#{age},#{sex})</insert><update id="updateUser" parameterType="com.course.model.User">update user set name=#{name},age=#{age}where id=#{id}</update><delete id="deleteUser" parameterType="Integer">delete from user where id = #{id}</delete></mapper>
springboot的配置 application.yml
#服务端口配置
server:port: 8888
#日志配置
logging:path: logsfile: mylog.log#报告和数据库的配置
spring:application:name: reportdatasource:driver-class-name: com.mysql.jdbc.Driver #数据库驱动# 数据库的地址url: jdbc:mysql://localhost:3306/course?useSSL=false&useUnicode=true&characterEncoding=utf-8&servetTimeZone=Asia/Shanghaiusername: rootpassword: 123456mybatis:# 做映射的 com.course.model包下的对象type-aliases-package: com.course.model#加载resources/mapper下的文件mapper-locations:- mapper/*
日志的配置 logback.xml
<?xml version="1.0" encoding="UTF-8"?>
<!--
格式化日式的时间,格式,路径等
-->
<configuration><include resource="org/springframework/boot/logging/logback/defaults.xml"/><property name="FILE_LOG_PATTERN" value="%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{80} - %msg%n"/><property name="LOG_PATH" value="${LOG_PATH:-${LOG_TEMP:-${java.io.tmpdir:-/tmp}}}"/><appender name="FILE" class="ch.qos.logback.core.rolling.RollingFileAppender"><file>${LOG_PATH}/${LOG_FILE}</file><rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy"><fileNamePattern>${LOG_PATH}/${LOG_FILE}.%d{yyyy-MM-dd}</fileNamePattern></rollingPolicy><encoder charset="UTF-8"><pattern>${FILE_LOG_PATTERN}</pattern></encoder></appender><appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender"><encoder><pattern>${FILE_LOG_PATTERN}</pattern></encoder></appender><appender name="CRAWLER_LOG" class="ch.qos.logback.core.rolling.RollingFileAppender"><file>${LOG_PATH}/event.log</file><rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy"><fileNamePattern>${LOG_PATH}/event.%d{yyyy-MM-dd}.log</fileNamePattern><maxHistory>30</maxHistory></rollingPolicy><encoder class="ch.qos.logback.classic.encoder.PatternLayoutEncoder"><pattern>%msg%n</pattern></encoder></appender><logger name="com.business.intelligence.util.CrawlerLogger" level="INFO" additivity="false"><appender-ref ref="CRAWLER_LOG"/></logger><root level="INFO"><appender-ref ref="STDOUT"/><appender-ref ref="FILE"/></root></configuration>
数据库的配置 mybatis-config.xml
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE configurationPUBLIC "-//mybatis.org//DTD Config 3.0//EN""http://mybatis.org/dtd/mybatis-3-config.dtd"><configuration><!-- 映射到哪个包里面--><typeAliases><package name="com.course.model"/></typeAliases><!-- 映射到哪个sql文件里面--><mappers><mapper resource="mapper/mysql.xml"/></mappers>
</configuration>
1.3、测试:
1.3.1、测试获取用户数

1.3.2、添加用户



1.3.3、数据的更新



1.3.4、数据的删除


相关文章:
【六:(mock数据)spring boot+mybatis+yml】
目录 1.1、代码编写Demo类User类启动类 APplication 1.2、配置类查询语句的配置 mysql.ymlspringboot的配置 application.yml日志的配置 logback.xml数据库的配置 mybatis-config.xml 1.3、测试:1.3.1、测试获取用户数1.3.2、添加用户1.3.3、数据的更新1.3.4、数据的…...
51单片机KeyWard
eg1: 单片机键盘的分类 键盘分为编码键盘和非编码键盘,键盘上闭合键的识别由专用的硬件编码器实现,并产生键编码号或键值得称为编码键盘,如计算机键盘,而靠软件来识别的称为非编码键盘,在单片机组成的各种…...
【简记】getprop, setprop 命令使用
getprop, setprop 命令使用 1、终端设置、读取系统属性 // 例 adb shell setprop "test" "1" adb shell getprop "test"2、安卓读取系统配置 部分属性需要通过反射 android.os.SystemProperties 的方法获取,参见 android 获取手机…...
Ubuntu22.04安装nvidia-docker
安装docker 参考这篇文章:Ubuntu22.04安装docker - 掘金 安装nvidia-docker 参考这篇文章:Ubuntu 22.04 LTS : NVIDIA Container Toolkit : Install : Server World 流程: curl -s -L https://nvidia.github.io/nvidia-docker/gpgkey | …...
简单的代码优化(后端)
上一篇谈了谈简单的前端的优化,这次就以下几点谈谈后端的优化。 书写时常见的。 循环里面不要走IO流。 走IO,是要对硬盘进读写操作的。就结论而言,硬盘的读写速度是低于内存的,比如说硬盘上读一次数据,需要1秒&#…...
3.Node-事件循环的用法
题记 node.js事件循环的使用方法 Node.js 是单进程单线程应用程序,但是因为 V8 引擎提供的异步执行回调接口,通过这些接口可以处理大量的并发,所以性能非常高。 Node.js 几乎每一个 API 都是支持回调函数的。 Node.js 基本上所有的事件机制都…...
2525.根据规则将箱子分类/并查集/动态规划
2525. 根据规则将箱子分类 - 力扣(LeetCode) 给你四个整数 length ,width ,height 和 mass ,分别表示一个箱子的三个维度和质量,请你返回一个表示箱子 类别 的字符串。 如果满足以下条件,那么…...
2023年10月小程序云开发cms内容管理无法使用,无法同步内容模型到云开发数据库的解决方案
一,问题描述 最近越来越多的同学找石头哥,说cms用不了,其实是小程序官方最近又搞大动作了,偷偷的升级的云开发cms(内容管理)以下都称cms,不升级不要紧,这一升级,就导致我…...
无论有没有按钮,iPhone都可以进行截屏操作!如何在iPhone上截屏
通过简单的按键组合,可以很容易地将iPhone屏幕的图片捕获到图像文件中,并保存到照片库中。以下是操作方法。 什么是屏幕截图 屏幕截图是指通常包含你在设备屏幕上看到的内容的精确副本的图像。在设备内拍摄的数字屏幕截图通常使用相机拍摄物理屏幕的照…...
笔记本平台信号讲解
1、power button:这个信号会引起SMI#或者SCI来表示系统请求进入到睡眠状态。如果系统已经处于睡眠状态,这将导致唤醒事件信号。 如果PWRBTN#键超过4秒,这将导致一个无条件的过渡(电源按钮替代)到S5状态。即使系统是在S1-S4的状态,覆盖也会发生。 这个信号有一个内部上拉…...
什么是Sectigo证书?
Sectigo证书,早前被称为Comodo证书,是一种SSL(安全套接层)证书,用于保护互联网上的数据传输的安全性和隐私性。这些证书由全球领先的SSL证书颁发机构Sectigo颁发,被广泛用于网站、应用程序和服务器上。本文…...
虹科 | 测试方案 | 汽车示波器 通讯网络(LIN/CAN/FlexRay)测试方案
通讯网络(LIN/CAN/FlexRay)测试 虹科CAN总线示波器把你的PC电脑变成一台功能强大的汽车测试工具,用于检测车辆网络各类通讯信号,如CAN Bus、CAN FD、LIN、FlexRay,还可以检测车上所有传感器和执行器的信号 串行译码 …...
ubuntu20.04安装MySQL8、MySQL服务管理、mysql8卸载
ubuntu20.04安装MySQL8 #更新源 sudo apt-get update #安装 sudo apt-get install mysql-serverMySQL服务管理 # 查看服务状态 sudo service mysql status # 启动服务 sudo service mysql start # 停止服务 sudo service mysql stop # 重启服务 sudo service mysql restart登…...
曾仕强老师视频+音频+电子书合集百度网盘资源
需要的扫码添加获取:...
KubeSphere安装mysql8
需要持久化储存数据的,建立有状态服务。 无状态服务是不会持久化的,重启就归零 KubeSphere 创建自建应用后,创建有状态服务,但是自己应用的有状态服务不能外放端口,需要在服务哪里删除pod,在创建负载指定相…...
相似度loss汇总,pytorch code
用于约束图像生成,作为loss。 可梯度优化 pytorch structural similarity (SSIM) loss https://github.com/Po-Hsun-Su/pytorch-ssimhttps://github.com/harveyslash/Facial-Similarity-with-Siamese-Networks-in-Pytorch/blob/master/Siamese-networks-medium.ip…...
python中的yolov5结合PyQt5,使用QT designer设计界面没正确启动的解决方法
python中的yolov5结合PyQt5,使用QT designer设计界面没正确启动的解决方法 一、窗体设计test: 默认你已经设计好了窗体后: 这时你需要的是保存生成的untitle.ui到某个文件夹下,然后在命令行中奖.ui转换为.py(,通过…...
Milk-V Duo移植rt-thread smart
前言 (1)PLCT实验室实习生长期招聘:招聘信息链接 (2)首先,我们拿到Milk-V Duo板子之后,我个人建议先移植大核Linux。因为那个资料相对多一点,也简单很多,现象也容易观察到…...
会声会影2024有哪些新功能?好不好用
比如会声会影视频编辑软件,既加入光影、动态特效的滤镜效果,也提供了与色彩调整相关的LUT配置文件滤镜,可选择性大,运用起来更显灵活。会声会影在用户的陪伴下走过20余载,经过上百个版本的优化迭代,已将操作…...
vue3 + axios 中断取消接口请求
前言 最近开发过程中,总是遇到想把正在请求的axios接口取消,这种情况有很多应用场景,举几个例子: 弹窗中接口请求返回图片,用于前端展示,接口还没返回数据,此时关闭弹窗,需要中断接…...
【STM32】实战3.2—基于TB6600与微步进控制实现42步进电机的平滑驱动
1. 微步进控制的核心价值 第一次用TB6600驱动42步进电机时,电机转动时的"咔哒"声让我印象深刻。这种典型的满步驱动噪音不仅影响使用体验,在需要精密控制的场景更是致命伤。后来接触到微步进技术,才发现原来步进电机可以运行得如此…...
Bodymovin扩展面板完整指南:如何将After Effects动画转化为轻量级JSON动效
Bodymovin扩展面板完整指南:如何将After Effects动画转化为轻量级JSON动效 【免费下载链接】bodymovin-extension Bodymovin UI extension panel 项目地址: https://gitcode.com/gh_mirrors/bod/bodymovin-extension 你是否曾为After Effects中的精美动画无法…...
Node 18 网络导入新特性:从HTTP/HTTPS URL直接加载ES模块
1. Node 18网络导入功能初探 最近在Node.js社区里有个让人兴奋的新消息:Node 18引入了一个实验性功能,允许开发者直接从HTTP/HTTPS URL导入ES模块。这个功能看似简单,但实际上解决了不少开发中的痛点。想象一下,你不再需要把远程的…...
深入解析安路科技PH1系列FPGA的ERAM架构:从BRAM到高效存储方案
1. PH1系列FPGA的ERAM架构概览 第一次拿到安路科技PH1系列FPGA开发板时,我就被它的ERAM(嵌入式随机存取存储器)设计惊艳到了。相比传统FPGA的BRAM(块随机存取存储器),PH1的ERAM在架构上做了很多创新。每个E…...
ComfyUI Impact Pack 安装后报错排查指南:从依赖缺失到解决方案
1. 遇到ComfyUI Impact Pack报错怎么办? 最近有不少朋友反馈,明明已经安装了ComfyUI Impact Pack插件,但运行时还是会出现"节点未找到"的报错提示。这种情况我遇到过好几次,刚开始也是一头雾水,后来慢慢摸索…...
免费开源歌词编辑器终极指南:5分钟掌握专业级LRC歌词制作
免费开源歌词编辑器终极指南:5分钟掌握专业级LRC歌词制作 【免费下载链接】lrc-maker 歌词滚动姬|可能是你所能见到的最好用的歌词制作工具 项目地址: https://gitcode.com/gh_mirrors/lr/lrc-maker 你是否曾经为音乐创作或翻唱作品制作歌词时&am…...
Windhawk终极指南:5分钟打造你的专属Windows系统
Windhawk终极指南:5分钟打造你的专属Windows系统 【免费下载链接】windhawk The customization marketplace for Windows programs: https://windhawk.net/ 项目地址: https://gitcode.com/gh_mirrors/wi/windhawk 你是不是也觉得Windows系统太"死板&qu…...
Kotlin动态生成代码的实践之旅
在开发过程中,经常会遇到需要根据外部模块的类型生成特定代码的情况。今天我们来探讨如何使用Kotlin来实现这种需求,尤其是在模块间缺乏直接依赖的情况下。 背景介绍 假设我们有一个项目结构如下: |- Base | |- interface ContentProvider | |- First | |- interface Fir…...
基于AXI总线的Cortex-M3软核SoC设计与外设集成
1. Cortex-M3软核与AXI总线基础解析 第一次接触Cortex-M3软核是在三年前的一个物联网安全项目,当时需要在FPGA上实现一个轻量级加密处理器。和大多数嵌入式开发者一样,我之前主要使用现成的STM32系列芯片,直到真正动手在Vivado里搭建M3软核&a…...
PvZ Toolkit:植物大战僵尸PC版终极修改指南
PvZ Toolkit:植物大战僵尸PC版终极修改指南 【免费下载链接】pvztoolkit 植物大战僵尸 PC 版综合修改器 项目地址: https://gitcode.com/gh_mirrors/pv/pvztoolkit PvZ Toolkit是一款功能强大的植物大战僵尸PC版综合修改器,专为玩家打造个性化游戏…...
