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调试的更多相关文章

  1. SpringBoot Docker Mysql安装,Docker安装Mysql

    SpringBoot Docker Mysql安装,Docker安装Mysql ================================ ©Copyright 蕃薯耀 2018年4月8日 ht ...

  2. 使用Docker安装Mysql

    最近使用阿里云服务器,学习一下Docker,今天学着使用Docker安装MySQL. 首先,从阿里云的Docker Hub 上pull一个MySQL的image. [centos@loovelj~]$ ...

  3. Docker学习实践 - Docker安装MySql数据库

    Docker安装MySQL数据库 1.Ubuntu安装MySQL安装 (1)安装编译源码需要的包 sudo apt-get install make cmake gcc g++ bison libnc ...

  4. [转]Docker学习之四:使用docker安装mysql

    本文转自:https://blog.csdn.net/qq_19348391/article/details/82998391 Docker学习之一:注册Docker Hub账号 Docker学习之二 ...

  5. docker 安装mysql mongo

    Docker安装Mysql 1.拉取镜像 docker pull mysql/mysql-server 2.运行mysql docker run -d -p : --name [Name] [Imag ...

  6. 【Linux】【自学笔记】Linux下面docker安装mysql

    写在前面: 捣腾继续,之前把一个SpringBoot的程序安装在docker上面,参考链接:https://www.cnblogs.com/aki-stones/p/2019-11-01-note.h ...

  7. Docker 安装mysql、oracle

    来源:唐山网站优化 Docker 安装mysql.oracle 使用ssh工具登录docker docker 的ip一般默认为192.168.99.100可以通过安装docker-machine之后, ...

  8. CentOS 中利用docker安装MySQL

    1.前提条件 centos7 且内核版本高于3.10, 可通过命令: uname -r 查看内核版本 2.利用yum 安装docker 安装一些必要的系统工具: sudo yum install -y ...

  9. 安装docker并使用docker安装mysql

    安装Docker 1. Docker 教程地址:https://www.runoob.com/docker/centos-docker.install.html 2.安装docker 命令:yum i ...

  10. docker安装mysql主从

    docker安装mysql主从 启动主库: 1.docker run --name master -p 3306:3306 -e MYSQL_ROOT_PASSWORD=root -d mysql:5 ...

随机推荐

  1. AtCoder Beginner Contest 189 Personal Editorial

    第一次参加 AtCoder 的比赛,感觉还挺简单. 比赛链接:https://atcoder.jp/contests/abc189 A - Slot // Author : RioTian // Ti ...

  2. volatile和synchronized和lock的区别

    volatile和synchronized的区别: volatile关键字解决的是变量在多个线程之间的可见性(对于用volatile修饰的变量,JVM虚拟机只是保证从主内存加载到线程工作内存的值是最新 ...

  3. 6、SpringBoot-mybatis分页实现pagehelper

    系列导航 springBoot项目打jar包 1.springboot工程新建(单模块) 2.springboot创建多模块工程 3.springboot连接数据库 4.SpringBoot连接数据库 ...

  4. java项目实战-mybatis-基本用法02接口绑定实现类-day23

    目录 1. 复习 什么是接口 什么是类? 2. mybatis接口绑定实现类 来实现查询 4. 参数的传递 5 插入数据 1. 复习 什么是接口 什么是类? public interface Spea ...

  5. Redis 主从复制架构配置及原理

    本文为博主原创,未经允许不得转载: 目录: 1. Redis 主从复制架构搭建 2. Redis 主从架构原理 3. Redis 断点续传 4. Jedis 连接 redis 主从架构一般配置一主多从 ...

  6. VSCode + GCC编译器(MinGW)开发环境中文字符乱码问题踩坑与解决办法

    .markdown-body { line-height: 1.75; font-weight: 400; font-size: 16px; overflow-x: hidden; color: rg ...

  7. SD Host控制器的系统集成

    控制器集成需求 SD Host可以从外部读取数据存储到SRAM和eFlash或者可以从内部读取数据输出到外部存储 AHB Bus slave接口用于配置 master接口作为主设备,DMA可以控制总线 ...

  8. 【C/C++】sscanf函数和正则表达式

    此文所有的实验都是基于下面的程序:char str[10];for (int i = 0; i < 10; i++) str[i] = '!';执行完后str的值为str = "!!! ...

  9. Python 变量?对象?引用?赋值?一个例子解释清楚

    哈喽大家好,我是咸鱼. 前天有个小伙伴找到我,给了我一段 python 代码: a = [1, 2] a[1] = a print(a[1]) 然后问我为什么结果是 [1, [...]],我一看这个问 ...

  10. [转帖]理解 Linux backlog/somaxconn 内核参数

    引言 在研究IOTDB的时候,启动服务的时候会有个报警. WARN: the value of net.core.somaxconn (=4096) is too small, please set ...