【Mybatis】学习笔记01:连接数据库,实现增删改 1

本文涉及的产品
云数据库 RDS MySQL,集群系列 2核4GB
推荐场景:
搭建个人博客
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
RDS MySQL Serverless 高可用系列,价值2615元额度,1个月
简介: 【Mybatis】学习笔记01:连接数据库,实现增删改

创建文件

q1.png

q2.png

引入Mybatis和mysql驱动

Maven Repository: org.mybatis » mybatis (mvnrepository.com)

q3.png

q4.png

<!-- https://mvnrepository.com/artifact/org.mybatis/mybatis -->
<dependency>
    <groupId>org.mybatis</groupId>
    <artifactId>mybatis</artifactId>
    <version>3.5.9</version>
</dependency>

q5.png

q6.png

<!-- https://mvnrepository.com/artifact/mysql/mysql-connector-java -->
<dependency>
    <groupId>mysql</groupId>
    <artifactId>mysql-connector-java</artifactId>
    <version>8.0.28</version>
</dependency>

q1.png

创建MyBatis核心配置文件

核心配置文件

常用名(可以不是这个名字):mybatis-config.xml

作用:配置连接数据库的环境以及Mybatis的全局配置信息

存放目录:src/main/resource

其他:整合Spring之后,该核心文件可省略

右击[resources],[New]>>[File],创建mybatis-config.xml

q2.png

去寻找配置文件的模板

q3.png

q4.png

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE configuration
  PUBLIC "-//mybatis.org//DTD Config 3.0//EN"
  "http://mybatis.org/dtd/mybatis-3-config.dtd">
<configuration>
  <environments default="development">
    <environment id="development">
      <transactionManager type="JDBC"/>
      <dataSource type="POOLED">
        <property name="driver" value="${driver}"/>
        <property name="url" value="${url}"/>
        <property name="username" value="${username}"/>
        <property name="password" value="${password}"/>
      </dataSource>
    </environment>
  </environments>
  <mappers>
    <mapper resource="org/mybatis/example/BlogMapper.xml"/>
  </mappers>
</configuration>

内容介绍如下

<?xml version="1.0" encoding="UTF-8" ?><!--XML文件声明,版本号,编码-->
<!DOCTYPE configuration
        PUBLIC "-//mybatis.org//DTD Config 3.0//EN"
        "http://mybatis.org/dtd/mybatis-3-config.dtd"><!--该XML文件约束是dtd文件规则,和Spring中的约束不一样,但是功能一样-->
<configuration><!--跟标签-->
    <environments default="development">
<!--    接数据库环境-->
        <environment id="development"><!--在该标签内设置具体环境-->
<!--        事务管理器 transactionManager 类型为JDBC-->
            <transactionManager type="JDBC"/><!--事务管理方式为JDBC-->
<!--        dataSource:数据源 | POOLED:数据库连接池-->
            <dataSource type="POOLED">
<!--                驱动名称--><!--欢迎关注哔哩哔哩 萌狼蓝天-->
                <property name="driver" value="${driver}"/>
<!--                数据库地址---><!--欢迎关注哔哩哔哩 萌狼蓝天-->
                <property name="url" value="${url}"/>
<!--                数据库用户名--><!--欢迎关注哔哩哔哩 萌狼蓝天-->
                <property name="username" value="${username}"/>
<!--                数据库密码--><!--欢迎关注哔哩哔哩 萌狼蓝天-->
                <property name="password" value="${password}"/>
            </dataSource>
        </environment>
    </environments>
<!--引入映射文件-->
    <mappers>
        <mapper resource="org/mybatis/example/BlogMapper.xml"/>
    </mappers>
</configuration>

将相关的信息修改为自己的

<?xml version="1.0" encoding="UTF-8" ?><!--XML文件声明,版本号,编码-->
<!DOCTYPE configuration
        PUBLIC "-//mybatis.org//DTD Config 3.0//EN"
        "http://mybatis.org/dtd/mybatis-3-config.dtd"><!--该XML文件约束是dtd文件规则,和Spring中的约束不一样,但是功能一样-->
<configuration><!--跟标签-->
    <environments default="development">
<!--    接数据库环境-->
        <environment id="development"><!--在该标签内设置具体环境-->
<!--        事务管理器 transactionManager 类型为JDBC-->
            <transactionManager type="JDBC"/><!--事务管理方式为JDBC-->
<!--        dataSource:数据源 | POOLED:数据库连接池-->
            <dataSource type="POOLED">
<!--                驱动名称--><!--欢迎关注哔哩哔哩 萌狼蓝天-->
                <property name="driver" value="com.mysql.jdbc.Driver"/>
<!--                数据库地址--><!--欢迎关注哔哩哔哩 萌狼蓝天-->
                <property name="url" value="jdbc:mysql://mllt.cc:3306/edu_smbms"/>
<!--                数据库用户名--><!--欢迎关注哔哩哔哩 萌狼蓝天-->
                <property name="username" value="root"/>
<!--                数据库密码--><!--欢迎关注哔哩哔哩 萌狼蓝天-->
                <property name="password" value="mllt9920"/>
            </dataSource>
        </environment>
    </environments>
<!--引入映射文件 | 下面这个暂时不修改,后面创建了映射文件之后再回来修改-->
    <mappers>
        <mapper resource="org/mybatis/example/BlogMapper.xml"/>
    </mappers>
</configuration>

创建实体类

q5.png

q6.png

private Integer id;//id
    private String userCode;//用户编码
    private String userName;//用户姓名
    private String userPassword;//用户密码
    private Integer gender;//性别
    private Date birthday;//出生日期
    private String phone;//电话号码
    private String address;//地址
    private Integer userRole;//用户角色
    private Integer createdBy;//创建者
    private Date creationDate;//创建时间
    private Integer modifyBy;//更新者
    private Date modifyDate;//更新时间
    private Integer age;//年龄
    private String userRoleName;//用户角色名称

q1.png

生成getter and setter

q2.png

q3.png

按下Ctrl+A全选,然后点击OK

q4.png

q5.png

创建mapper接口

这个mapper接口相当于原来的DAO

mapper仅仅是接口,不需要提供实现类

q6.png

q1.png

q2.png

q3.png

package cc.mllt.edumybatisclass01.jdbc.mapper;
public interface UserMapper {
    int selectUser(); 
}

q4.png

创建MyBatis映射文件

映射文件

命名规则:表所对应的实体类的类名+Mapper.xml

例如:表t_user,映射的实体类为User,对应的映射文件名为UserMapper.xml

作用:编写SQL语句,访问以及操作表中的数据

存放位置:src/main/resources/mappers

q5.png

q6.png

q1.png

q2.png

别忘了写扩展名.xml

q3.png

在刚才的网站上找到这一段,将代码复制过来

q4.png

q5.png

MyBatis中可以面向接口操作数据,要保证两个一致:

  • mapper接口的全类名和映射文件的命名空间(namespace)保持一致
  • mapper接口中方法的方法名和映射文件中编写SQL的标签的id属性保持一致

q6.png

<?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="cc.mllt.edumybatisclass01.jdbc.mapper.UserMapper">
    <select id="selectUser" resultType="int">
        select count(1) as count from smbms_user
    </select>
</mapper>
相关实践学习
如何快速连接云数据库RDS MySQL
本场景介绍如何通过阿里云数据管理服务DMS快速连接云数据库RDS MySQL,然后进行数据表的CRUD操作。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助 &nbsp; &nbsp; 相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
相关文章
|
2月前
|
存储 SQL 关系型数据库
Mysql学习笔记(二):数据库命令行代码总结
这篇文章是关于MySQL数据库命令行操作的总结,包括登录、退出、查看时间与版本、数据库和数据表的基本操作(如创建、删除、查看)、数据的增删改查等。它还涉及了如何通过SQL语句进行条件查询、模糊查询、范围查询和限制查询,以及如何进行表结构的修改。这些内容对于初学者来说非常实用,是学习MySQL数据库管理的基础。
139 6
|
1月前
|
关系型数据库 MySQL 数据库连接
python脚本:连接数据库,检查直播流是否可用
【10月更文挑战第13天】本脚本使用 `mysql-connector-python` 连接MySQL数据库,检查 `live_streams` 表中每个直播流URL的可用性。通过 `requests` 库发送HTTP请求,输出每个URL的检查结果。需安装 `mysql-connector-python` 和 `requests` 库,并配置数据库连接参数。
132 68
|
1月前
|
SQL Java 数据库连接
深入 MyBatis-Plus 插件:解锁高级数据库功能
Mybatis-Plus 提供了丰富的插件机制,这些插件可以帮助开发者更方便地扩展 Mybatis 的功能,提升开发效率、优化性能和实现一些常用的功能。
233 26
深入 MyBatis-Plus 插件:解锁高级数据库功能
|
29天前
|
数据库 C# 开发者
ADO.NET连接到南大通用GBase 8s数据库
ADO.NET连接到南大通用GBase 8s数据库
|
28天前
|
数据库连接 Linux Shell
Linux下ODBC与 南大通用GBase 8s数据库的无缝连接配置指南
本文详细介绍在Linux系统下配置GBase 8s数据库ODBC的过程,涵盖环境变量设置、ODBC配置文件编辑及连接测试等步骤。首先配置数据库环境变量如GBASEDBTDIR、PATH等,接着修改odbcinst.ini和odbc.ini文件,指定驱动路径、数据库名称等信息,最后通过catalog.c工具或isql命令验证ODBC连接是否成功。
|
1月前
|
SQL 安全 Java
MyBatis-Plus条件构造器:构建安全、高效的数据库查询
MyBatis-Plus 提供了一套强大的条件构造器(Wrapper),用于构建复杂的数据库查询条件。Wrapper 类允许开发者以链式调用的方式构造查询条件,无需编写繁琐的 SQL 语句,从而提高开发效率并减少 SQL 注入的风险。
33 1
MyBatis-Plus条件构造器:构建安全、高效的数据库查询
|
2月前
|
SQL Ubuntu 关系型数据库
Mysql学习笔记(一):数据库详细介绍以及Navicat简单使用
本文为MySQL学习笔记,介绍了数据库的基本概念,包括行、列、主键等,并解释了C/S和B/S架构以及SQL语言的分类。接着,指导如何在Windows和Ubuntu系统上安装MySQL,并提供了启动、停止和重启服务的命令。文章还涵盖了Navicat的使用,包括安装、登录和新建表格等步骤。最后,介绍了MySQL中的数据类型和字段约束,如主键、外键、非空和唯一等。
79 3
Mysql学习笔记(一):数据库详细介绍以及Navicat简单使用
|
1月前
|
SQL Java 数据库连接
在Java应用中,数据库访问常成为性能瓶颈。连接池技术通过预建立并复用数据库连接,有效减少连接开销,提升访问效率
在Java应用中,数据库访问常成为性能瓶颈。连接池技术通过预建立并复用数据库连接,有效减少连接开销,提升访问效率。本文介绍了连接池的工作原理、优势及实现方法,并提供了HikariCP的示例代码。
55 3
|
27天前
|
JSON JavaScript 关系型数据库
node.js连接GBase 8a 数据库 并进行查询代码示例
node.js连接GBase 8a 数据库 并进行查询代码示例
|
2月前
|
关系型数据库 MySQL 数据库连接
DBeaver如何连接一个数据库
【10月更文挑战第27天】DBeaver 是一款功能强大的通用数据库管理工具,支持多种主流数据库。本文介绍了使用 DBeaver 连接数据库的基本步骤,包括下载安装、创建新连接、选择数据库类型、配置连接参数、测试连接以及最终连接到数据库。详细的操作指南帮助用户轻松管理和操作数据库。
412 9