Springboot创建项目、docker安装mysql及mybatis-plus调试
Springboot创建项目及测试
1️⃣ idea构建springboot项目





2️⃣ 测试类 hello


1. 代码
RestController是ResponseBody + controller的组合体,作用就是配合@GetMapping可以把"Hello World"输出到浏览器内,毕竟官网是这样写的Getting Started | Building a RESTful Web Service (spring.io)
@RestController
public class HelloWorld {
@GetMapping("/hello")
public String hello(){
return "hello world";
}
}
3️⃣ 数据库(Mybatis-plus)
1. 安装数据库
工作上数据库都在服务器上面,都是linux,所以在虚拟机上整一个服务器centos7,然后要改一下固定ip去连接nxshell
cd /etc/sysconfig/network-script/
ll
vi ifcfg-ens33
systemctl restart network

如果这样连接不上,要不就是单词打错了,要不就是其他问题,反正是自己操作问题,连接好之后就开始安装docker,使用docker的原因就是简单,方便,而且我比较懒,docker用着快。注意!!!所有操作都是在联网的状态下
安装docker并更换阿里云源,阿里云容器镜像服务加速器容器镜像服务 (aliyun.com)。更换源是必须的,不然下载镜像特别特别的慢,而且有的资源在国外,导致下载失败
sudo yum install -y yum-utils device-mapper-persistent-data lvm2
sudo yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
sudo yum install docker-ce docker-ce-cli containerd.io
cd /etc/docker/
vim daemon.json
sudo systemctl daemon-reload
sudo systemctl restart docker

在docker里面安装mysql
sudo docker pull mysql:5.7
docker images
mkdir /usr/local/mysql
挂载容器 --privileged=true这个很重要,不加的话后面会有一些权限相关问题,包括但不限于:文件夹无权限创建,连接无权限,log文件无权限创建
docker run --privileged=true --name mysql --restart=always -v /usr/local/mysql/conf:/etc/mysql/conf.d -v /usr/local/mysql/logs:/logs -v /usr/local/mysql/data:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=root -d -i -p 3306:3306 mysql:5.7
docker ps
docker exec -it mysql bash
mysql -uroot -proot
show databases;
use mysql;
select * from user;
select Host,user from user;

如果这两条数据没有或不同,使用以下语句inset表中或修改,连接好之后用工具测试下连接(sqlyog,navicat)。注意!!!如果是在虚机上面安的,不是网上服务器(阿里云,腾讯云),关闭了虚机,然后第二天开启虚机连接mysql连接不上,就重启docker(systemctl restart docker)。
alter user 'root'@'%' IDENTIFIED with mysql_native_password by 'root'
flush privileges
2. 使用Mybatis-plus连接数据库
首先是要在pom文件里面加好依赖,这样才能把mp(mybatis-plus)的jar包下载下来。注意!!!springboot的版本要高于2.0以上,mybatis-plus-boot-starter依赖在这里找最新的Maven Repository: Search/Browse/Explore (mvnrepository.com)
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
</dependency>
<dependency>
<groupId>com.baomidou</groupId>
<artifactId>mybatis-plus-boot-starter</artifactId>
<version>3.5.2</version>
</dependency>
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>8.0.29</version>
</dependency>
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
<version>1.18.24</version>
<scope>provided</scope>
</dependency>
<!--使用此依赖是因为springboot3版本SqlsessionDao会报错,因为springboot3移除了一些异常类,
导致无法启动,使用此依赖版本会支持springboot3-->
<dependency>
<groupId>org.mybatis.spring.boot</groupId>
<artifactId>mybatis-spring-boot-starter</artifactId>
<version>3.0.0</version>
</dependency>
在contro层编写业务逻辑代码,通过注入接口去调用接口中的方法selectAll();

在service层编写我们自己定义的接口selectAll();

在实现类里面写具体的代码实现接口selectAll();

在mapper层编写mp接口

在resources下编写mapper接口对应的xml文件

在yml文件下编写配置,没有使用mybatis-plus配置是因为使用了mybatis的依赖
server:
port: 9001
spring:
datasource:
driver-class-name: com.mysql.cj.jdbc.Driver
username: root
password: root
url: jdbc:mysql://192.168.78.100:3306/xinxin_emo?useSSL=false&serverTimezone=UTC
mybatis:
configuration:
log-impl: org.apache.ibatis.logging.stdout.StdOutImpl
mapper-locations: classpath:mapper/*.xml
启动项目后网上随便找个开源软件,测试返回是否正常

至此,springboot配合mp(mybatis-plus)操作数据库至此搭建完成。
Springboot创建项目、docker安装mysql及mybatis-plus调试的更多相关文章
- SpringBoot Docker Mysql安装,Docker安装Mysql
SpringBoot Docker Mysql安装,Docker安装Mysql ================================ ©Copyright 蕃薯耀 2018年4月8日 ht ...
- 使用Docker安装Mysql
最近使用阿里云服务器,学习一下Docker,今天学着使用Docker安装MySQL. 首先,从阿里云的Docker Hub 上pull一个MySQL的image. [centos@loovelj~]$ ...
- Docker学习实践 - Docker安装MySql数据库
Docker安装MySQL数据库 1.Ubuntu安装MySQL安装 (1)安装编译源码需要的包 sudo apt-get install make cmake gcc g++ bison libnc ...
- [转]Docker学习之四:使用docker安装mysql
本文转自:https://blog.csdn.net/qq_19348391/article/details/82998391 Docker学习之一:注册Docker Hub账号 Docker学习之二 ...
- docker 安装mysql mongo
Docker安装Mysql 1.拉取镜像 docker pull mysql/mysql-server 2.运行mysql docker run -d -p : --name [Name] [Imag ...
- 【Linux】【自学笔记】Linux下面docker安装mysql
写在前面: 捣腾继续,之前把一个SpringBoot的程序安装在docker上面,参考链接:https://www.cnblogs.com/aki-stones/p/2019-11-01-note.h ...
- Docker 安装mysql、oracle
来源:唐山网站优化 Docker 安装mysql.oracle 使用ssh工具登录docker docker 的ip一般默认为192.168.99.100可以通过安装docker-machine之后, ...
- CentOS 中利用docker安装MySQL
1.前提条件 centos7 且内核版本高于3.10, 可通过命令: uname -r 查看内核版本 2.利用yum 安装docker 安装一些必要的系统工具: sudo yum install -y ...
- 安装docker并使用docker安装mysql
安装Docker 1. Docker 教程地址:https://www.runoob.com/docker/centos-docker.install.html 2.安装docker 命令:yum i ...
- docker安装mysql主从
docker安装mysql主从 启动主库: 1.docker run --name master -p 3306:3306 -e MYSQL_ROOT_PASSWORD=root -d mysql:5 ...
随机推荐
- 区间DP练习题题解
算法讲解:Here AcWing 282. 石子合并 (模板) 题目链接:Here const int N = 310; int a[N], s[N]; int dp[N][N]; void solv ...
- 【每日一题】7.月月查华华的手机 (枚举 or 序列自动机)
题目链接:Here 题意总结:\(N\) 次查询串 \(B\) 是否是 \(A\) 的子序列. 思路一 个人做法,枚举原字符串的每一位,如果匹配当前字符串的字符则 m++ 直到字符串枚举完毕或者 m ...
- KCD技术分享:以SBOM为基础的云原生应用安全治理
随着越来越多的企业和组织将他们的应用迁移到云上,云原生技术的应用部署和管理正在变得更加灵活和高效,但也相应地引入了一些新的安全风险.2023年4月15日,由云原生计算基金会(CNCF)发起,全球各国当 ...
- (已解决)C·lash 核心崩溃“failed to c·lash core, logs are not available”
问题情况: 解决方案:管理员打开 cmd,输入 netsh winsock reset,重启电脑就可以了! 原经验帖:https://www.oleou.com/soft/715.html 谢谢这位大 ...
- C++数据结构(树)
树是一种递归定义的数据结构,如果树中节点的各子树从左到右是有次序的,不能互换,则称该树为有序树,否则叫无序树. 关于树的节点: 节点拥有的子树的个数叫做节点的度 如果度为0,那么该节点叫做叶节点或终端 ...
- Scan Synthesis Review
Review scan replacement - 将normal DFF替换为mux gate DFF scan stitching - 将DFF连接起来 scan的作用:将测试困难的时序逻辑转变为 ...
- NSSCTF Round#11 Basic 密码个人赛复盘
[NSSRound#11 Basic]ez_enc ABAABBBAABABAABBABABAABBABAAAABBABABABAAABAAABBAABBBBABBABBABBABABABAABBAA ...
- Linux-服务管理-service-checkconfig
- [转帖]解Bug之路-NAT引发的性能瓶颈
https://zhuanlan.zhihu.com/p/286532997 解Bug之路-NAT引发的性能瓶颈 笔者最近解决了一个非常曲折的问题,从抓包开始一路排查到不同内核版本间的细微差异,最后才 ...
- [转帖]Linux进程的Uninterruptible sleep(D)状态
https://cloud.tencent.com/developer/article/1581022 Linux系统进程状态 PROCESS STATE CODES Here are the dif ...