mybatis简单认识(入门)

肖镜泽      2022-05-20     694

关键词:

1.1. 入门准备

  创建个java项目,项目结构

 

 

 

1.2在lib文件中导入相应的jar包(注意添加完后,记得右键文件lib点击选中Add as Library)

 

 

1.3准备相应的表

 

 

 

 

 

1.4.准备相应的domain,在domain文件里创建个Users.java,(创完,就和图1.1图片一样,UserMapper.xml在下面2.2处创建)

 

 

1.5 dao层准备

 

 

 

 

2.1. MyBatis入门实现

一切准备就绪。接下来就是开始使用MyBatis了。但是问题来了,怎么用呢?

该文档虽然只有50多页,但是已经足够咱们学习了。

先来入个门吧:入门开始,除了介绍什么是MyBatis之后,就在说一个核心对象:SqlSessionFactory,接下来,咱们就是要想方设法拿到这个核心对象。

SqlSessionFactory对象怎么拿到:直接找到文档中的从 XML 中构建 SqlSessionFactory这一小节开始即可。

①获取SqlSessionFactory

  1 我们需要准备一个核心的Mybatis-config.xml文件

  2 拿到SqlSessionFactory之前需要读取核心的xml配置文件

  3 需要构造者(SqlSessionFactoryBuilder)来创建它

②映射文件准备

③通过SqlSessionFactory获取SqlSession执行映射SQL

2.2在domain文件里创建UserMapper.xml文件

 

 

 UserMapper.xml

<?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">
<!-- orm框架 sql的映射
namespace:命名空间  namespace路径+ id值
          namespace怎么配置 包名.接口名 + queryAll
-->
<mapper namespace="cn.itsors.dao.IUserDao">
    <!-- 查询 queryAll()
        resultType 返回类型
    -->
    <select id="queryAll" resultType="cn.itsors.domain.Users">
        select * from t_user
    </select>
</mapper>

 

 

 

2.3在resources文件里创建jdbc.properties文件和核心配置文件MyBatis-Config.xml

 

 

 jdbc.properties

jdbc.driverClassName=驱动程序类名称
jdbc.url=数据库地址
jdbc.username=数据库账号
jdbc.password=数据库密码

MyBatis-Config.xml

<?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>
    <!--引入jdbc.propeties文件-->
    <properties resource="jdbc.properties" />
    <!-- 环境们 (很多环境的意思)
        default:默认使用哪一个环境(必需对应一个环境的id)
     -->
    <environments default="development">
        <!--
            一个环境  id:为这个环境取唯一一个id名称
        -->
         <environment id="development">
            <!--
                事务管理   type:JDBC(支持事务)/MANAGED(什么都不做)
            -->
            <transactionManager type="JDBC" />
            <!-- 数据源, 连接池  type(POOLED):MyBatis自带的连接池 -->
            <dataSource type="POOLED">
                <!-- 连接数据库的参数 -->
                <property name="driver" value="${jdbc.driverClassName}" />
                <property name="url" value="${jdbc.url}" />
                <property name="username" value="${jdbc.username}" />
                <property name="password" value="${jdbc.password}" />
            </dataSource>
        </environment>
    </environments>
    <!-- 这个mappers代表的是相应的ORM映射文件 -->
    <mappers>
        <mapper resource="cn/itsors/domain/UserMapper.xml" />
    </mappers>

</configuration>

2.4 给1.5dao层准备的实现类添加代码

 

 

UsersImpl.java
package cn.itsors.dao.impl;
import cn.itsors.dao.IUserDao;
import cn.itsors.domain.Users;
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 java.io.IOException;
import java.io.Reader;
import java.util.List;
public class UsersImpl implements IUserDao {
    /**
     * 查询数据库全部数据
     * @return
     * @throws IOException
     */
    @Override
    public List<Users> querAll() throws IOException {
        //调用mapper.xml的selectList方法
        Reader reader = Resources.getResourceAsReader("MyBatis-Config.xml");
        //得到SqlSessionFactory
        SqlSessionFactory sqlSessionFactory = new SqlSessionFactoryBuilder().build(reader);
        //得到sqlSession
        SqlSession sqlSession = sqlSessionFactory.openSession();
        //调用方法 namespace+id
        List<Users> list = sqlSession.selectList("cn.itsors.dao.IUserDao.queryAll");
        //返回结果集
        return list;
    }
}

2.5测试

 

 UserTest.java

package cn.itsors.test;

import cn.itsors.dao.impl.UsersImpl;

import java.io.IOException;
import java.util.List;

import cn.itsors.domain.Users;
import org.junit.Test;

public class UsersTest{

    @Test
    public void querAll() throws IOException {
        //获取实现类
        UsersImpl users = new UsersImpl();
        //调用querAll方法
        List<Users> list = users.querAll();
        //遍历打印所有数据
        for (Users users1 : list) {
            System.out.println(users1);
        }
    }
}

 

 

 

 

 

 

 

mybatis简单入门

 1、Mybatis概述    MyBatis是支持普通SQL查询(相比较于Hibernate的封装,Mybatis是半自动化的JDBC封装,一个特点就是Mybatis执行的SQL查询语句需要自己在配置文件中写),存储过程和高级映射的优秀持久层框架。MyBatis消除了... 查看详情

mybatis简单入门

 1、Mybatis概述    MyBatis是支持普通SQL查询(相比较于Hibernate的封装,Mybatis是半自动化的JDBC封装,一个特点就是Mybatis执行的SQL查询语句需要自己在配置文件中写),存储过程和高级映射的优秀持久层框架。MyBatis消除了... 查看详情

mybatis简单入门

1、Mybatis简介什么是MyBatisMyBatis是一款优秀的持久层框架MyBatis避免了几乎所有的JDBC代码和手动设置参数以及获取结果集的过程MyBatis可以使用简单的XML或注解来配置和映射原生信息,将接口和Java的实体类【PlainOldJavaObjects,普通的Ja... 查看详情

mybatis简单入门

1.MyBatis架构(简单介绍MyBatis的流程)  接下来简单介绍一下这张图:首先明确我们的目的就是要创建sqlsession然后利用这个对象去执行sql完成CRUD。创建sqlsession的前提就是用session工厂去创建,利用工厂创建需要原材料啊,所以... 查看详情

mybatis快速入门,mybatis简单实例,如何使用mybatis

目录结构:  1.导入所需要的包2.创建数据库createdatabasemybatis;usemybatis;CREATETABLEusers(idINTPRIMARYKEYAUTO_INCREMENT,NAMEVARCHAR(20),ageINT);INSERTINTOusers(NAME,age)VALUES(‘Tom‘,12);INSERTINTOusers(NAME, 查看详情

mybatis入门以及简单案例

  这两天学习了mybatis框架,实现了简单的curd功能.有好多技术这里没有用到,在这里我用的开发工具为idea,jdk版本为1.8.   mybatis分析大概如下:MyBatis有两类配置文件:a)mybatis-condig.xml,是MyBatis的全局配置文件,包含全局配置... 查看详情

从零开始认识并操纵mybatis

目录业务介绍版本声明认识Mybatis是什么历史传统JDBC存在的问题与完整的ORM框架Hibernate的区别Mybatis架构入门程序操作步骤下载和导包准备数据库和JavaBean配置Mybatis编写sql映射文件关于模糊查询的补充书写Dao类测试类返回id的save原... 查看详情

mybatis简单入门--插入数据

1.开发环境IDE:IDEA构建工具:maven4.0.0MySQL版本:8.0.11、记得创建好数据库Mybatis版本:3.5.7MySQL不同版本的注意事项驱动类driver-class-nameMySQL5版本使用jdbc5驱动,驱动类使用:com.mysql.jdbc. 查看详情

mybatis简单入门

转载:首先是环境的配置,我使用maven创建项目,pom.xml文件如下<projectxmlns="http://maven.apache.org/POM/4.0.0"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation 查看详情

mybatis的初步认识

1、MyBatis简介:    - MyBatis是支持定制化SQL、存储过程以及高级映射的优秀的持久层框架。    - MyBatis避免了几乎所有的JDBC代码和手动设置参数以及获取结果集。    - MyBatis可... 查看详情

java--mybatisplus入门;与mybatis区别;简单使用(代码片段)

阅读前可先参考Java--MyBatis入门_MinggeQingchun的博客-CSDN博客_javamybatis一、MyBatis-PlusMyBatis-Plus(简称MP)是一个 Mybatis的增强工具,在MyBatis的基础上只做增强不做改变,为简化开发、提高效率而生MyBatis-Plus在MyBatis之上... 查看详情

hibernate和mybatis的简单入门

HibernateHibernate是开发者社区比较流行的持久化框架它不仅提供了基本的对象关系映射,还提供了作为ORM工具所应有的复杂功能比如:缓存、延迟加载、预先抓取和分布式缓存使用Hibernate的主要接口是org.hibernate.SessionSession接口提... 查看详情

mybatis入门要素

...代码,可以比较完全的掌握它的设计思路和实现。灵活:mybatis不会对应用程序或者数据库的现有设计强加任何影响。sql写在xml里,便于统一管理和优化。通过sql语句可以满足操作数据库的所有需求。解除sql与程序代码的耦合:... 查看详情

ssm框架mybatis的基本使用(代码片段)

Mybatis的基本使用目录Mybatis的基本使用学习目标一、认识Mybatis1.简介2.原理3.为什么使用Mybatis原生jdbc连接4.Mybatis的优点5.Mybatis的核心6.如何获取mybatis二、Mybatis入门1.环境搭建2.创建一个模块,编写MyBatis核心配置文件3.编写MyBati... 查看详情

mybatis入门步骤

mybatis就是解决原来用jdbc需要写对象里的多个属性的费时操作,导入一堆配置文件让增删改查代码变简单  查看详情

mybatis入门

MyBatis学习总结(一)——MyBatis快速入门一、Mybatis介绍    MyBatis是一个支持普通SQL查询,存储过程和高级映射的优秀持久层框架。MyBatis消除了几乎所有的JDBC代码和参数的手工设置以及对结果集的检索封装。MyBatis可以使用简单... 查看详情

mybatis入门

MyBatis入门1.MyBatis前身是iBatis,是Apache的一个开源项目,2010年这个项目迁移到了GoogleCode,改名为MyBatis,2013年迁移到GitHub。是一个基于DAO层处理的ORM框架ORM:ObjectRelationalMapping对象关系映射在mybatis中指的是sql语句与实体类之间的映... 查看详情

mybatis入门

1.mybatis简单介绍1.1mybatis本是apache的一个开源项目iBatis,2010年这个项目由apachesoftwarefoundation迁移到了googlecode,并且改名为MyBatis。2013年11月迁移到Github。mybatis是一个基于Java的持久层框架(半自动),主要包括SQLMaps和DataAccessObjects(DAO... 查看详情