MySQL是什么

MySQL是一个关系型数据库管理系统,由瑞典MySQL AB 公司开发,目前属于 Oracle 旗下产品。MySQL 是最流行的关系型数据库管理系统之一,在 WEB 应用方面,MySQL是最好的 RDBMS (Relational Database Management System,关系数据库管理系统) 应用软件之一。

MySQL是一种关系数据库管理系统,关系数据库将数据保存在不同的表中,而不是将所有数据放在一个大仓库内,这样就增加了速度并提高了灵活性。

MySQL所使用的 SQL 语言是用于访问数据库的最常用标准化语言。MySQL 软件采用了双授权政策,分为社区版和商业版,由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,一般中小型网站的开发都选择 MySQL 作为网站数据库。

---引用自百度百科

MySQL安装

MySQL的安装可以是直接ZIP解压安装,手动配置后就可以使用,还可以通过安装包安装,本机为win10的操作系统,采用MySQL Installer来安装即可,安装的版本为MySQL Installer 8.0.16,如下,直接下载32bit版本即可,暗转的时候安装导航会自动识别帮助安装64bit,如果你的机器是64位的话;

进入安装界面,选择Custom,用于开发的话,很多东西我们不需要安装;

选择要安装的包,记住勾选workbench,这是MySQL官方出的GUI管理工具

下一步

下一步

开始进行配置选择,单体应用的话选第一个选项

选择开发电脑,端口号默认即可,尽量不改

安全性考虑,选择需要输入账号密码

选择创建Mysql服务

创建成功,输入账号密码check一下

安装成功了

开始使用一下MySQL

打开刚才勾选安装的shell,看看版本信息是否安装成功了,如下,MySQL Shell 的版本为8.0.16

打开workbench,界面很清爽,看起来还不错吧,可以看到已经创建了一个默认的实例MySQL80

打开这个是库里面的,打开world这个shema,随便选一个表来看,就city好了,有name字段/countrycode字段等等

用spring boot2+Mybatis试试MySQL

这里不详细叙述spring boot2或Mybatis怎么用,仅仅是写个小代码测试下MySQL的使用;

创建数据库和表

首先我们要创建一个库,咱给他的编码格式设为utf8的,避免中文乱码,如下

CREATE database mytest01 DEFAULT CHARACTER SET utf8;

use mytest01;

再创建一张测试表,也是utf8的格式,这里创建一张产品表,就定个名称、描述、价格3个字段,简单搞搞

CREATE TABLE product(
id int(11) not null PRIMARY KEY auto_increment,
name varchar(128) DEFAULT null,
description varchar(1000) DEFAULT null,
price DOUBLE DEFAULT null
)DEFAULT charset=utf8;

再插入几条测试数据

INSERT INTO product(name,description,price) VALUES('小苹果','一种熟透了的水果',6.99);
INSERT INTO product(name,description,price) VALUES('orange','yellow fruit',5.99);
INSERT INTO product(name,description,price) VALUES('rice','a kind of food',3.99);
INSERT INTO product(name,description,price) VALUES('樱桃','女朋友非要买的很贵的水果',55.99);

拉通spring boot2+mybatis

先讲下pom.xml,把必要的包依赖进来,我这里用了德鲁伊的数据源,引入fastjson是为了用Object快转json

<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
<groupId>org.mybatis.spring.boot</groupId>
<artifactId>mybatis-spring-boot-starter</artifactId>
<version>2.0.1</version>
</dependency>
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<scope>runtime</scope>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
</dependency>
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>druid</artifactId>
<version>1.1.9</version>
</dependency>
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>fastjson</artifactId>
<version>1.2.30</version>
</dependency>

数据库配置如下,最后mybatis.mapperLocations是指定我mapper的xml位置

# 数据源配置
spring.datasource.type=com.alibaba.druid.pool.DruidDataSource
spring.datasource.url=jdbc:mysql:///mytest01?useUnicode=true&characterEncoding=UTF-8&serverTimezone=UTC
spring.datasource.username=root
spring.datasource.password=123456 mybatis.mapperLocations= classpath:mapper/*.xml

实体类ProductPO

/**
* product实体
*
* @author : spzh
* @since : 2019-06-19 22:59
*/
public class ProductPO implements Serializable {
private Integer id;
private String name;
private String description;
private Double price;
省略set/get
}

Dao层,可以以Dao结尾或者Mapper都可以,@Mapper注解下,不需要写实现类

/**
* product Dao
*
* @author : spzh
* @since : 2019-06-19 23:02
*/
@Mapper
public interface IProductDao {
List<ProductPO> getAllProducts();
}

Service层,为了简单起见,我这里就没有写异常处理了

/**
* product service
*
* @author : spzh
* @since : 2019-06-19 23:13
*/
@Service
public class ProductService { @Autowired
private IProductDao productDao; public List<ProductPO> getAllProducts() {
return productDao.getAllProducts();
} }

Controller层,简单映射到products这个路径下即可

/**
* product controller
*
* @author : spzh
* @since : 2019-06-19 23:14
*/
@RestController
public class ProductController {
@Autowired
private ProductService productService; @RequestMapping("/products")
public String getAllProducts(){
List<ProductPO> allProducts = productService.getAllProducts();
return JSON.toJSONString(allProducts);
}
}

mapper里面的sql很简单,也就是一次性全部查出来,我mapper放在了resouces/mapper下了,需要在properties里面指定位置

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd" > <mapper namespace="com.zhoukk.demo.product.IProductDao">
<select id="getAllProducts" resultType="com.zhoukk.demo.product.ProductPO">
select * from product
</select>
</mapper>

编译运行springboot,在浏览器中输入:http://localhost:8080/products

浏览器中即刻显示


本文由周框框创作, 可自由转载、引用,但需署名作者且注明文章出处。

作者简介:某厂的一枚程序汪,爱生活爱运动爱交流爱写点小代码,欢迎你任何渠道找我聊天交流,来玩哦~

创作不易,如果觉得本文对有你有帮助,可以随便点一下推荐,或者粉一个,或者打个赏呗~

MySQL安装教程并使用springboot2和Mybatis测试的更多相关文章

  1. CentOS下Mysql安装教程

    CentOS下Mysql安装教程 本人学习Linux时使用的是CentOs5.5版本,在该环境中,Mysql的安装方法有很多种,下面我只讲我这次成功了的方法,作为一个记录,供大家参考,同时给自己做一个 ...

  2. Windows之MySQL安装教程

    MySQL安装说明 MySQL是一个关系型数据库管理系统,由瑞典MySQL AB 公司开发,目前属于 Oracle 旗下产品.MySQL 是最流行的关系型数据库管理系统之一,在 WEB 应用方面,My ...

  3. Docker系列之MySQL安装教程

    Docker系列之MySQL安装教程 有了前面的基础教程Docker系列之常用命令操作手册之后,本博客记录一篇mysql的安装教程 mysql镜像查询命令 docker search mysql 几个 ...

  4. windowns环境下mysql 安装教程

    windowns环境下mysql 安装教程 一:这里以绿色版安装为例(解压就可以使用) 下载地址: 下载页面:https://dev.mysql.com/downloads/mysql/  2:点击 ...

  5. 2021 MySQL安装教程(最新教程)- 含网盘下载

    大家好,我是 我玩亚索我会C.最近电脑重装系统了,然后就想着装个MySQL,由于很久没装过了,于是上网搜索了教程,但是发现现在MySQL安装和之前的不一样了,网上都是旧版的安装教程,所以我就做一篇新版 ...

  6. mySql 安装教程

    看了好久别人的文章,今天就开始自己写第一篇.希望给别人能提供帮助,也可以方便自己查阅. 前两天自己安装了mysql,感觉是比oracle好装多了. mysql安装有两种方式,一种是安装包安装方式,一种 ...

  7. Ubuntu server 安装及jdk+mysql安装教程

    Ubuntu server 安装教程 1.查找及下载Ubuntu镜像文件 可以在以下页面下载想要的版本,我这里选择19.04 server版的iso镜像文件: http://mirrors.163.c ...

  8. MySQL-配置环境变量及修改密码(附-mysql安装教程)

    MySQL-配置环境变量和修改密码 mysql的安装教程:链接:https://pan.baidu.com/s/1rrPT2X0yRF58kN8jZZx-Mg 密码:55dh 一. 闪退问题 1.1. ...

  9. mysql 安装教程(详细说明)

    如果你装过,一定要先卸载干净,并且重启重新装.卸载教程(保证成功)https://www.cnblogs.com/qzhc/p/11354678.html 大家都知道MySQL是一款中.小型关系型数据 ...

随机推荐

  1. Version Controlling with Git in Visual Studio Code and Azure DevOps

    Overview Azure DevOps supports two types of version control, Git and Team Foundation Version Control ...

  2. 《快学scala》读书笔记(1)

    第一章 基础 1.安装scala解释器 (1)scala-2.12.1.msi (2)配置环境变量:SCALA_HOME = D:\Program Files\scala Path= %SCALA_H ...

  3. CSS利用border绘制图性

    绘制梯形 width:10px; border-top:10px solid red; border-right:10px solid transparent; border-left:10px so ...

  4. js中跳出forEach循环

    缘由:近期在项目中使用lodash.js中的_.foreach方法处理数据,需要在满足条件时结束循环并不执行后面的js代码. 因为foreach中默认没有break方法.在尝试中使用了return f ...

  5. 学Python的第四天

    第四天啦,今天依旧代码少的啃树皮.... 但是作业留的有了幼儿园的水准!!!让小编我看到了希望.... #!/usr/bin/env python # -*- coding:utf8 -*- impo ...

  6. Jupyter配置工作路径

    在修改之前,C:\Users\Administrator\ .jupyter 目录下面只有一个“migrated”文件. 打开命令窗口(运行->cmd),进入python的Script目录下输入 ...

  7. java并发学习--第四章 JDK提供的线程原子性操作工具类

    在了解JDK提供的线程原子性操作工具类之前,我们应该先知道什么是原子性:在多线程并发的条件下,对于变量的操作是线程安全的,不会受到其他线程的干扰.接下来我们就学习JDK中线程的原子性操作. 一.CAS ...

  8. CSS3选择器 :read-only选择器 CSS3选择器 :read-write选择器

    CSS3选择器 :read-only选择器 “:read-only”伪类选择器用来指定处于只读状态元素的样式.简单点理解就是,元素中设置了“readonly=’readonly’” 示例演示 通过“: ...

  9. Java初步

    Java的核心优势:跨平台 Java SE:标准版Java EE:企业级Java ME:微型版 源文件(*.java)→编译器→字节码文件(*.class)→(类装载器→字节码校验器→解释器)[JRE ...

  10. TCP TIME_WAIT和CLOSE_WAIT

    原创转载请注明出处:https://www.cnblogs.com/agilestyle/p/11484451.html 使用如下指令查看当前Server的TCP状态 netstat -n | awk ...