MyBatis入门

本文涉及的产品
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
云数据库 RDS MySQL,集群系列 2核4GB
推荐场景:
搭建个人博客
云数据库 RDS PostgreSQL,集群系列 2核4GB
简介: 一、简介 持久层框架是 Java 开发的重要部分,但是现在流行的 Hibernate 是一种比较重型的框架,MyBatis作用一种轻量化的开源持久层框架,可以提高开发效率,同时MyBatis也是一种方便掌握与使用的框架。MyBatis 最大的优点就是 SQL 与代码完全分离。提高 Java 开发的规范性与可扩展性。二、准备工作 1、下载地址: https://

一、简介

持久层框架是 Java 开发的重要部分,但是现在流行的 Hibernate 是一种比较重型的框架,MyBatis作用一种轻量化的开源持久层框架,可以提高开发效率,同时MyBatis也是一种方便掌握与使用的框架。MyBatis 最大的优点就是 SQL 与代码完全分离。提高 Java 开发的规范性与可扩展性。

二、准备工作
1、下载地址:
https://github.com/mybatis/mybatis-3/releases/tag/mybatis-3.3.0
2、导入工程所需jar包(连接mysql的jar包也是必须的)
这里写图片描述
3、日志配置
1) 加入log4j.properties配置文件
2) 修改配置文件如下
这里写图片描述

三、MyBatis工作流程
1、概述:读取基本配置文件,生成SqlSessionFactory,建立SqlSession,调用MyBatis的API,查询map配置,返回结果,关闭SqlSession。
2、基本配置文件:MyBatisConfig.xml中引入map配置文件,并且配置数据库的基本信息,如下:

<?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="com.mysql.jdbc.Driver"/>       <!--  使用mysql数据库 -->
<property name="url" value="jdbc:mysql://localhost:3306/book"/>   <!--  自定义url-->
<property name="username" value="root"/>
<property name="password" value=""/>   <!--  使用自己数据库的密码 -->
</dataSource>
</environment>
</environments>
<mappers>
<mapper resource="book/map/User.xml"/>
</mappers>
</configuration>

3、map配置文件:map中包含各种sql语句,如下:

<?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="book.map.User">
<select id="findById" parameterType="int" resultType="book.pojo.User">
select * from User where id = #{id}
</select>
</mapper>

4、SqlSessionFactory:
每一个MyBatis的应用程序都以一个SqlSessionFactory对象的实例为核心。SqlSessionFactory对象的实例可以通过SqlSessionFactoryBuilder对象来获得。SqlSessionFactoryBuilder对象可以从XML配置文件,或从Configuration类的习惯准备的实例中构建SqlSessionFactory对象。

5、SqlSession:
在 MyBatis 中,你可以使用 SqlSessionFactory 来创建 SqlSession。一旦你获得一个 session 之后,你可以使用它来执行映射语句,提交或回滚连接,最后,当不再需要它的时 候, 你可以关闭 session。

  • 代码如下:
package book.test;
import java.io.IOException;
import java.io.Reader;
import org.apache.ibatis.io.Resources;
import org.apache.ibatis.session.SqlSession;
import org.apache.ibatis.session.SqlSessionFactory;
import org.apache.ibatis.session.SqlSessionFactoryBuilder;
import book.pojo.User;
public class Test {
    public static void main(String[] args){
        String resource="book/map/MyBatisConfig.xml";
        Reader reader=null;
        try {
            reader=Resources.getResourceAsReader(resource);
        } catch (IOException e) {
            e.printStackTrace();
        }       
        SqlSessionFactory sqlMapper=new SqlSessionFactoryBuilder().build(reader);
        SqlSession  session=sqlMapper.openSession();    
        User tmp=session.selectOne("findById",1);
        System.out.println("userName=="+tmp.getUserName());
        session.close();     
    }
}

6、建立数据表:如下
这里写图片描述
插入第一个数据:id:1, userName:张山, password:zhangshan。

7、运行程序(注意实例程序建立的是java项目)
结构如下:
这里写图片描述
结果如下:
这里写图片描述

相关实践学习
如何在云端创建MySQL数据库
开始实验后,系统会自动创建一台自建MySQL的 源数据库 ECS 实例和一台 目标数据库 RDS。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助 &nbsp; &nbsp; 相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
目录
相关文章
|
7月前
|
SQL Java 数据库连接
MyBatis 框架入门理论与实践
MyBatis 框架入门理论与实践
81 6
|
2月前
|
前端开发 Java Apache
Springboot整合shiro,带你学会shiro,入门级别教程,由浅入深,完整代码案例,各位项目想加这个模块的人也可以看这个,又或者不会mybatis-plus的也可以看这个
本文详细讲解了如何整合Apache Shiro与Spring Boot项目,包括数据库准备、项目配置、实体类、Mapper、Service、Controller的创建和配置,以及Shiro的配置和使用。
425 1
Springboot整合shiro,带你学会shiro,入门级别教程,由浅入深,完整代码案例,各位项目想加这个模块的人也可以看这个,又或者不会mybatis-plus的也可以看这个
|
6月前
|
XML Java 数据库连接
MyBatis入门——MyBatis XML配置文件(3)
MyBatis入门——MyBatis XML配置文件(3)
82 6
|
6月前
|
Java 关系型数据库 数据库连接
MyBatis入门(1)
MyBatis入门(1)
73 2
|
2月前
|
SQL Java 数据库连接
Mybatis入门(select标签)
这篇文章介绍了Mybatis中`select`标签的基本用法及其相关属性,并通过示例展示了如何配置和执行SQL查询语句。
43 0
Mybatis入门(select标签)
|
4月前
|
Java 数据库连接 Spring
后端框架入门超详细 三部曲 Spring 、SpringMVC、Mybatis、SSM框架整合案例 【爆肝整理五万字】
文章是关于Spring、SpringMVC、Mybatis三个后端框架的超详细入门教程,包括基础知识讲解、代码案例及SSM框架整合的实战应用,旨在帮助读者全面理解并掌握这些框架的使用。
后端框架入门超详细 三部曲 Spring 、SpringMVC、Mybatis、SSM框架整合案例 【爆肝整理五万字】
|
7月前
|
Java 数据库连接 测试技术
MyBatis-Plus入门
MyBatis-Plus入门
|
4月前
|
SQL Java 数据库连接
Spring Boot联手MyBatis,打造开发利器:从入门到精通,实战教程带你飞越编程高峰!
【8月更文挑战第29天】Spring Boot与MyBatis分别是Java快速开发和持久层框架的优秀代表。本文通过整合Spring Boot与MyBatis,展示了如何在项目中添加相关依赖、配置数据源及MyBatis,并通过实战示例介绍了实体类、Mapper接口及Controller的创建过程。通过本文,你将学会如何利用这两款工具提高开发效率,实现数据的增删查改等复杂操作,为实际项目开发提供有力支持。
233 0
|
6月前
|
Java 关系型数据库 数据库连接
技术好文共享:第一讲mybatis入门知识
技术好文共享:第一讲mybatis入门知识
35 6
|
6月前
|
Java 关系型数据库 MySQL
Mybatis入门之在基于Springboot的框架下拿到MySQL中数据
Mybatis入门之在基于Springboot的框架下拿到MySQL中数据
52 4