当前位置:   article > 正文

MySQl & Mybatis

MySQl & Mybatis

 

一、MySQL

1.1 概述

 1.1.1 MySQL安装

 

1.1.2 数据模型

1.1.3 SQL简介

 

1.2 DDL

1.2.1 数据库操作

 

1.2.2 图形化工具

 

 

1.2.3 表结构操作

 (一)创建

(二)数据类型 

(1)数值类型

age tinyint unsigned——加上unsigned就是不能取负数,将取值范围取正数区间变大。

(2)字符串类型

char(10):最多只能存储10个字符,不足10个字符,占用10个字符空间(性能较高、浪费空间)

varchar(10): 最多只能存储10个字符,不足10个字符,按照实际长度存储(性能较低、节省空间)

 (3)日期类型

(三)查询
 (四)修改

(五)删除

 

1.3 DML

1.3.1 添加数据insert

1.3.2 修改数据update

1.3.3 删除数据delete

1.4 DQL

1.4.1 基本查询

 

 1.4.2 条件查询

 

 

1.4.3 聚合函数

1.4.4 分组查询

1.4.5 排序查询

 

1.4.6 分页查询

 

1.5 多表设计

1.5.1 一对多

 

 

1.5.2 一对一

1.5.3 多对多

1.6 多表查询

1.6.1 概述

 

1.6.2 内连接

1.6.3 外连接

1.7 子查询

1.7.1 标量子查询

 

1.7.2 列子查询

1.7.3 行子查询

1.7.4 表子查询

1.8 事务

1.8.1 介绍与操作

 

1.8.2 四大特性

1.9 索引

1.9.1 介绍

1.9.2 结构

1.9.3 操作语法

2 Mybatis

2.1 入门

2.1.1 介绍

2.1.2 快速入门程序

 

 

 

2.1.3 JDBC介绍

(一)JDBC操作数据库

  1. package com.itheima;
  2. import com.itheima.mapper.UserMapper;
  3. import com.itheima.pojo.User;
  4. import org.junit.jupiter.api.Test;
  5. import org.springframework.beans.factory.annotation.Autowired;
  6. import org.springframework.boot.test.context.SpringBootTest;
  7. import java.sql.*;
  8. import java.util.ArrayList;
  9. import java.util.List;
  10. @SpringBootTest //springboot整合单元测试的注解
  11. class SpringbootMybatisQuickstartApplicationTests {
  12. @Autowired
  13. private UserMapper userMapper;
  14. @Test
  15. public void testListUser(){
  16. List<User> userList = userMapper.list();
  17. userList.stream().forEach(user -> {
  18. System.out.println(user);
  19. });
  20. }
  21. @Test
  22. public void testJdbc() throws Exception {
  23. //1. 注册驱动
  24. Class.forName("com.mysql.cj.jdbc.Driver");
  25. //2. 获取连接对象
  26. String url = "jdbc:mysql://localhost:3306/mybatis";
  27. String username = "root";
  28. String password = "1234";
  29. Connection connection = DriverManager.getConnection(url, username, password);
  30. //3. 获取执行SQL的对象Statement,执行SQL,返回结果
  31. String sql = "select * from user";
  32. Statement statement = connection.createStatement();
  33. ResultSet resultSet = statement.executeQuery(sql);
  34. //4. 封装结果数据
  35. List<User> userList = new ArrayList<>();
  36. while (resultSet.next()){
  37. int id = resultSet.getInt("id");
  38. String name = resultSet.getString("name");
  39. short age = resultSet.getShort("age");
  40. short gender = resultSet.getShort("gender");
  41. String phone = resultSet.getString("phone");
  42. User user = new User(id,name,age,gender,phone);
  43. userList.add(user);
  44. }
  45. //5. 释放资源
  46. statement.close();
  47. connection.close();
  48. }
  49. }

 输出:

 

 

2.1.4 数据库连接池

 

 

 

2.1.5 lombook

 

 

2.2 基础操作

2.2.1 环境准备

 

2.2.2 删除

(一)根据主键删除

 

若想获取删除了几条数据的返回值:

 

输出:0

(二)日志输出

 

 

2.2.3 新增

 

 

2.2.4 更新 

2.2.5 查询

(一)主键查询

 

解决方案一:给字段起别名,让别名与实体类属性一致

解决方案二:通过@Results,注释手动映射封装 

解决方案三:开启mybatis驼峰命令自动映射开关

 直接运行原始代码就可以

总结:

(二)条件查询

 

 

2.3 XML映射文件

 Mapper接口全限定名可以 选中接口名称-copy reference-粘贴到namespace

 

 

2.4 动态SQL 

2.4.1 if

 

 

 

 

 

 

2.4.2 foreach

 

 

2.4.3 sql include

 

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/一键难忘520/article/detail/858259
推荐阅读
相关标签
  

闽ICP备14008679号