码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • Mybatis知识【Mybatis概述】第一章


    目录

    • 💂 个人主页: 爱吃豆的土豆
    • 🌈欢迎加入社区,福利多多哦!土豆社区

    • 🤟数据库专栏更新完毕:数据库知识
    • 🤟JDBC专栏更新完毕:JDBC知识
    • 💬 如果文章对你有帮助、欢迎关注、点赞、收藏(一键三连)和订阅专栏哦
    • 🏆人必有所执,方能有所成!

    1,Mybatis概述

    1.1:Mybatis概念

    1.2:JDBC缺点

    1.3:Mybatis优化


    1,Mybatis概述

    1.1:Mybatis概念

    • MyBatis 是一款优秀的==持久层框架==,用于简化 JDBC 开发

    • MyBatis 本是 Apache 的一个开源项目iBatis, 2010年这个项目由apache software foundation 迁移到了google code,并且改名为MyBatis 。2013年11月迁移到Github

    • 官网:mybatis – MyBatis 3 | 简介

    持久层:

    • 负责将数据到保存到数据库的那一层代码。

      以后开发我们会将操作数据库的Java代码作为持久层。而Mybatis就是对jdbc代码进行了封装。

    • JavaEE三层架构:表现层、业务层、持久层

      三层架构在后期会给大家进行讲解,今天先简单的了解下即可。

    框架:

    • 框架就是一个半成品软件,是一套可重用的、通用的、软件基础代码模型

    • 在框架的基础之上构建软件编写更加高效、规范、通用、可扩展

    举例给大家简单的解释一下什么是半成品软件。大家小时候应该在公园见过给石膏娃娃涂鸦

     

    如下图所示有一个石膏娃娃,这个就是一个半成品。你可以在这个半成品的基础上进行不同颜色的涂鸦  

    了解了什么是Mybatis后,接下来说说以前 JDBC代码 的缺点以及Mybatis又是如何解决的。  

    1.2:JDBC缺点

    下面是 JDBC 代码,我们通过该代码分析都存在什么缺点:

    • 硬编码

      • 注册驱动、获取连接

        上图标1的代码有很多字符串,而这些是连接数据库的四个基本信息,以后如果要将Mysql数据库换成其他的关系型数据库的话,这四个地方都需要修改,如果放在此处就意味着要修改我们的源代码。

      • SQL语句

        上图标2的代码。如果表结构发生变化,SQL语句就要进行更改。这也不方便后期的维护。

    • 操作繁琐

      • 手动设置参数

      • 手动封装结果集

        上图标4的代码是对查询到的数据进行封装,而这部分代码是没有什么技术含量,而且特别耗费时间的。

     

    1.3:Mybatis优化

    • 硬编码可以配置到==配置文件==

    • 操作繁琐的地方mybatis都==自动完成==

    如图所示

    下图是持久层框架的使用占比。  

     

     

  • 相关阅读:
    Ubuntu 20.04 安装 flameshot
    大模型必备算力:CPU&GPU天梯图(2023年最新版)
    大语言模型 (LLM) 红队测试:提前解决模型漏洞
    python中os模块
    服务器安装mysql后无法远程连接
    【JavaEE初阶】 定时器详解与实现
    基于信息检索和深度学习结合的单元测试用例断言自动生成
    如何创建python虚拟环境
    《Linux驱动:I2C驱动看这一篇就够了》
    SpringMVC增删改查(CRUD)的实现
  • 原文地址:https://blog.csdn.net/m0_64550837/article/details/126511499
  • 最新文章
  • 攻防演习之三天拿下官网站群
    数据安全治理学习——前期安全规划和安全管理体系建设
    企业安全 | 企业内一次钓鱼演练准备过程
    内网渗透测试 | Kerberos协议及其部分攻击手法
    0day的产生 | 不懂代码的"代码审计"
    安装scrcpy-client模块av模块异常,环境问题解决方案
    leetcode hot100【LeetCode 279. 完全平方数】java实现
    OpenWrt下安装Mosquitto
    AnatoMask论文汇总
    【AI日记】24.11.01 LangChain、openai api和github copilot
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1
正则表达式工具 cron表达式工具 密码生成工具

京公网安备 11010502049817号