当前位置: 移动技术网 > IT编程>数据库>Mysql > MySQL安装教程并使用springboot2和Mybatis测试

MySQL安装教程并使用springboot2和Mybatis测试

2019年06月22日  | 移动技术网IT编程  | 我要评论

mysql是什么

1561121843986

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位的话;

1561122270595

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

mysql安装1

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

mysql安装2

下一步

mysql安装4mysql安装3

下一步

mysql安装5

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

mysql安装6

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

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

mysql安装8

mysql安装9

选择创建mysql服务

mysql安装10

mysql安装11

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

mysql安装12

mysql安装13

安装成功了

mysql安装14

开始使用一下mysql

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

mysql安装15

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

mysql安装16

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

mysql安装17

用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,在浏览器中输入:

1561127919240

浏览器中即刻显示

1561127983873


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

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

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

如对本文有疑问, 点击进行留言回复!!

相关文章:

  • mysql解决时区相关问题

    前言:在使用 mysql 的过程中,你可能会遇到时区相关问题,比如说时间显示错误、时区不是东八区、程序取得的时间和数据库存储的时间不一致等等问题。其实,这些问题... [阅读全文]
  • MySQL8.0内存相关参数总结

    mysql理论上使用的内存 = 全局共享内存 + max_connections×线程独享内存。也就是:innodb_buffer_pool_size + in... [阅读全文]
  • mysql如何查询日期与时间

    前言: 在项目开发中,一些业务表字段经常使用日期和时间类型,而且后续还会牵涉到这类字段的查询。关于日期及时间的查询等各类需求也很多,本篇文章简单讲讲日期及时间字... [阅读全文]
  • 深入了解mysql长事务

    前言: 本篇文章主要介绍mysql长事务相关内容,比如说我们开启的一个事务,一直没提交或回滚会怎样呢,出现事务等待情况应该如何处理,本篇文章将给你答案。注意:本... [阅读全文]
  • 详解mysql DML语句的使用

    前言: 在上篇文章中,主要为大家介绍的是ddl语句的用法,可能细心的同学已经发现了。本篇文章将主要聚焦于dml语句,为大家讲解表数据相关操作。这里说明下ddl与... [阅读全文]
  • JDBC怎么连接数据库

    JDBC的快速入门(写这个东西是为了自己记一个笔记,或者为了方便别人应付作业)你要连接什么数据库就要下载什么类型... [阅读全文]
  • 高性能Mysql的逻辑架构和常见的存储引擎

    高性能Mysql的逻辑架构和常见的存储引擎

    前言: 为了充分发挥MySQL的性能并顺利地使用,就必须理解其设计。MySQL的灵活性体现在很多方面。例如,... [阅读全文]
  • 如何选择合适的MySQL日期时间类型来存储你的时间

    构建数据库写程序避免不了使用日期和时间,对于数据库来说,有多种日期时间字段可供选择,如 timestamp 和 datetime 以及使用 int 来存储 un... [阅读全文]
  • MySQL数据库使用规范总结

    导读: 关于mysql数据库规范,相信大家多少看过一些文档。本篇文章给大家详细分类总结了数据库相关规范,从库表命名设计规范讲起,到索引设计规范,后面又给出sql... [阅读全文]
  • 详解MySQL 外键约束

    官方文档:1.外键作用:mysql通过外键约束来保证表与表之间的数据的完整性和准确性。2.外键的使用条件 两个表必须是innodb表,myisam表暂时不支持... [阅读全文]
验证码:
移动技术网