MyBatis的入门级环境搭建及增删改查,详细易懂

目录

一.mybatis的简介

二.MyBatis的环境搭建

        2.1 导入pom依赖

        2.2 数据库文件导入连接

         2.3 修改web.xml文件

        2.4 安装插件

        2.5 配置文件

                2.5.1 mybatis.cfg.xml文件

                2.5.2 generatorConfig.xml文件

 2.6 最后测试生成代码

三.MyBatis的增删改查

         3.1    写service类,

3.2 工具类

3.3 模拟数据测试结果


一.mybatis的简介

  •         MyBatis是一种持久层框架(orm框架),用于将Java对象映射到数据库表中。它提供了一种简单的方式来执行数据库操作,例如查询、插入、更新和删除

  • MyBatis通过将SQL语句和Java代码分离来实现数据访问层的解耦。它使用XML或注解来描述数据库操作,并提供了丰富的API来执行这些操作。

  • MyBatis的核心原理是通过配置文件或注解将Java对象和数据库表进行映射。它还支持事务管理、缓存机制和动态SQL等高级功能,使得开发者能够更加方便地进行数据库操作。

  • 它能够简化数据库访问的开发工作,提高代码的可读性和可维护性。无论是小型项目还是大型企业级应用,MyBatis都是一个值得考虑的选择。

    优点介绍:

1. 简单易用:MyBatis使用简单直观的API和配置文件,使得开发人员能够快速上手并进行数据库操作。

2. 灵活性:MyBatis允许开发人员编写自定义的SQL语句,以满足各种复杂的查询需求。同时,它也支持动态SQL,可以根据不同的条件生成不同的SQL语句。

3. 易于调试:MyBatis可以将执行的SQL语句输出到日志中,方便开发人员进行调试和性能优化。 4. 缓存支持:MyBatis支持一级缓存和二级缓存,可以提高数据库访问的性能。

5. 支持多种数据库:MyBatis支持多种主流数据库,包括MySQL、Oracle、SQL Server等,方便开发人员在不同的项目中使用。

6. 与Java对象的映射:MyBatis使用XML或注解来描述Java对象与数据库表的映射关系,使得开发人员可以通过简单的配置实现对象与表之间的转换。



二.MyBatis的环境搭建

        使用框架的步骤:导入pom依赖,配置xml文件,

        2.1 导入pom依赖

        这里所有完整版的,去maven官网下载即可




  4.0.0

  com.zking
  mybatis01
  1.0-SNAPSHOT
  war

  mybatis01 Maven Webapp
  
  http://www.example.com

    
        1.8
        1.8
    

    
        
        
            junit
            junit
            4.12
            test
        

        
        
            javax.servlet
            javax.servlet-api
            4.0.0
            provided
        

        
        
            org.mybatis
            mybatis
            3.4.5
        

        
        
            mysql
            mysql-connector-java
            5.1.44
        

        
        
        
        
        
            org.apache.logging.log4j
            log4j-core
            2.9.1
        
        
            org.apache.logging.log4j
            log4j-api
            2.9.1
        
        
        
            org.apache.logging.log4j
            log4j-web
            2.9.1
        
    

  
    mybatis01
      
          
          
              src/main/java
              
                  **/*.xml
              
          
          
          
              src/main/resources
              
                  jdbc.properties
                  *.xml
              
          
      
      
          
              org.mybatis.generator
              mybatis-generator-maven-plugin
              1.3.2
              
                  
                  
                      mysql
                      mysql-connector-java
                      5.1.44
                  
              
              
                  true
              
          
        
          maven-clean-plugin
          3.1.0
        
        
        
          maven-resources-plugin
          3.0.2
        
        
          maven-compiler-plugin
          3.8.0
        
        
          maven-surefire-plugin
          2.22.1
        
        
          maven-war-plugin
          3.2.2
        
        
          maven-install-plugin
          2.5.2
        
        
          maven-deploy-plugin
          2.8.2
        
      
  

        2.2 数据库文件导入连接

MyBatis的入门级环境搭建及增删改查,详细易懂_第1张图片

         2.3 修改web.xml文件

MyBatis的入门级环境搭建及增删改查,详细易懂_第2张图片

 

        2.4 安装插件

        安装以下插件

                Free mybatis plugin:

                        有以下作用:  1.注解支持 

                                                2.XML映射文件支持 

                                                3. SQL语句智能提示  

                                                4. 代码生成器 

                                                5. 数据库连接和查询

Free MyBatis Plugin通过提供丰富的功能和工具,简化了  MyBatis开发过程中的各种操作,提高了开发效率和代码质量。

                Mybatis generator:

                      有以下作用:1. 自动生成实体类

                                            2. 自动生成Mapper接口(包含了常用的增删改查方法)

                                            3. 生成XML映射文件(包含SQL语句的定义和参数映射关系)

                                            4. 生成的代码可自定义

MyBatis Generator可以根据数据库表结构自动生成CRUD代码,减少手动编写重复代码的工作量,提高开发效率和代码质量。同时,生成的代码可根据需求进行自定义修改和扩展,以满足具体的业务需求

                mybatis tools:

                            有以下作用:1. 代码生成(生成对应的实体类、Mapper接口和XML映射)

                                                  2. SQL语句编辑和调试

                                                  3. SQL语句执行和结果查看

                                                  4. 自动生成SQL语句

MyBatis Tools是一个集成在IDE中的插件,提供了一系列辅助开发的功能,如代码生成、SQL语句编辑和调试、SQL语句执行和结果查看等

                maven helper :

                           有以下作用:1. 依赖架包分析

                                                 2. 快速搜索依赖

                                                 3. 优化依赖

                                                 4. 自动导入依赖

                帮助开发人员更方便地管理和调试 Maven 项目。

点击File--->点击setting--->点击Plugins---->搜索框输入下载

MyBatis的入门级环境搭建及增删改查,详细易懂_第3张图片

 下载之后重写启动软件

MyBatis的入门级环境搭建及增删改查,详细易懂_第4张图片

重启之后,就变成这样,已下载即可

MyBatis的入门级环境搭建及增删改查,详细易懂_第5张图片 

        2.5 配置文件

                2.5.1 mybatis.cfg.xml文件

      关于数据库的连接 




    
    

    
        
    

    
    
        
    


    
    
        
            
            

            
            
            
            
            
                
                
                
                
            
        
    

    
        
    

2.5.2 generatorConfig.xml文件




    
    
    
    
    
    
        
        
            
            
            
            
        
        
        
        
        
            
            
        
        
        
        
        
            
            
            
            
            
            
            
            
        
        
        
            
            
        
        
        
        
        
        
            
            
        
        
        
        
        
        
        
        
        
        
        
        
        
        
        

        但是这里面的一些数据要根据自己情况而定,需要自行更改

jar包的位置

 路径位置

MyBatis的入门级环境搭建及增删改查,详细易懂_第6张图片SQL文件位置                                                                                                                                 

Mapper接口名称                                                                                                                           

     数据库表名 及实体类的名字                                                                                                     

 

 

 2.6 最后测试生成代码

        可以看到,下面报错了,没有生成代码成功,是因为版本原因,因为我的数据库是 8.0的版本,现在要我将版本换成 5.7的版本

MyBatis的入门级环境搭建及增删改查,详细易懂_第7张图片

 换完之后,再次测试

 MyBatis的入门级环境搭建及增删改查,详细易懂_第8张图片

MyBatis的入门级环境搭建及增删改查,详细易懂_第9张图片

 

 这样,MyBatis的环境搭建就已经完美辣!!!

三.MyBatis的增删改查

           3.1    写service类,

先定义一个接口 BookBiz

package com.zking.biz;

import com.zking.model.Book;

public interface BookBiz {
    int deleteByPrimaryKey(Integer bid);

    int insert(Book record);

    int insertSelective(Book record);

    Book selectByPrimaryKey(Integer bid);

    int updateByPrimaryKeySelective(Book record);

    int updateByPrimaryKey(Book record);
}

接着写一个类实现BookBiz接口

package com.zking.biz;

import com.sun.prism.impl.Disposer;
import com.zking.mapper.BookMapper;
import com.zking.model.Book;

/**
 * @author yinzi
 * @create 2023-08-19 16:13
 */
public class BookBizImpl implements BookBiz{
    private BookMapper bm;
    @Override
    public int deleteByPrimaryKey(Integer bid) {
        return bm.deleteByPrimaryKey(bid);
    }

    @Override
    public int insert(Book record) {
        return bm.insert(record);
    }

    @Override
    public int insertSelective(Book record) {
        return bm.insertSelective(record);
    }

    @Override
    public Book selectByPrimaryKey(Integer bid) {
        return bm.selectByPrimaryKey(bid);
    }

    @Override
    public int updateByPrimaryKeySelective(Book record) {
        return bm.updateByPrimaryKeySelective(record);
    }

    @Override
    public int updateByPrimaryKey(Book record) {
        return bm.updateByPrimaryKey(record);
    }
}

3.2 工具类

        定义一个工厂类生成SqlSession

package com.zking.Utils;

import org.apache.ibatis.session.SqlSession;
import org.apache.ibatis.session.SqlSessionFactory;
import org.apache.ibatis.session.SqlSessionFactoryBuilder;

/**
 * @author yinzi
 * @create 2023-08-19 16:22
 */
public class SessionUtil {
    private static SqlSessionFactory sessionFactory;
    private static ThreadLocal threadLocal = new ThreadLocal();
    static {
        sessionFactory = new SqlSessionFactoryBuilder().build(SessionUtil.class.getResourceAsStream("/mybatis.cfg.xml"));
    }

    public static SqlSession openSession() {
        SqlSession session = threadLocal.get();
        if (null == session) {
            session = sessionFactory.openSession();
            threadLocal.set(session);
        }
        return session;
    }

    public static void main(String[] args) {
        SqlSession session = openSession();
        System.out.println(session.getConnection());
        session.close();
//        System.out.println(session.getConnection());
    }
}

3.3 模拟数据测试结果

        根据ID查询

MyBatis的入门级环境搭建及增删改查,详细易懂_第10张图片

 MyBatis的入门级环境搭建及增删改查,详细易懂_第11张图片

 删除单个

MyBatis的入门级环境搭建及增删改查,详细易懂_第12张图片

 运行结果

MyBatis的入门级环境搭建及增删改查,详细易懂_第13张图片

 

今天介绍的内容就到这啦!!!

你可能感兴趣的:(mybatis,tomcat,oracle,intellij-idea,maven,数据库)