Javaweb之mybits入门

news2025/7/16 15:28:43

2.1 Mybatis概述

2.1.1 Mybatis概念

MyBatis 是一款优秀的持久层框架,用于简化 JDBC 开发
MyBatis 本是 Apache 的一个开源项目iBatis, 2010年这个项目由apache software foundation 迁移到了google
code,并且改名为MyBatis 。2013年11月迁移到Github
官网:https://mybatis.org/mybatis-3/zh/index.html
持久层
负责将数据到保存到数据库的那一层代码。称为持久层
以后开发我们会将操作数据库的Java代码作为持久层。而Mybatis就是对jdbc代码进行了封装。
JavaEE三层架构:表现层、业务层、持久层
三层架构在后期会给大家进行讲解,今天先简单的了解下即可。
框架:
框架就是一个半成品软件,是一套可重用的、通用的、软件基础代码模型
在框架的基础之上构建软件编写更加高效、规范、通用、可扩展
个人理解 也就是框架让我们软件有了一个骨架有了基本的标准模板然后在此之上进行开发研究提供了一套标准模板
在这里插入图片描述
前置知识jdbc
在这里插入图片描述

同时我领悟到一点JDBC模块中的driver类是罪魁祸首帮助我们连接建立驱动 他感觉不完全隶属java蓝色地方 它更属于中间桥接类 也就是3306和javastatement 中间的双向箭头的地方 只是本体在javastatement左边地方 就是网络连接那部分的类通过这个中间类实现双向箭头 因为这样可以帮我们建立连接和操作数据
总结就是drive的connect对象帮我们干了双方互相的事情 一旦加载driver类双方连接就可以有了建立的条件然后成功调用connect方法就算是真正互相连接了剩下就是验证的过程就这么理解把

2.1.2 JDBC 缺点

下面是 JDBC 代码,我们通过该代码分析都存在什么缺点
在这里插入图片描述
1.字符串在代码里面 --》写入配置文件去
3.4操作繁琐东西–》自动完成 3.4一行代码搞定
在这里插入图片描述
MyBatis免除了几乎所有的JDBC代码以及设置参数和获取结果集的工作
来源于mybatis官方
配置项mappers指定当前sql映射文件的路径的
sql映射文件一般有规范的名称 操作user表则命名为userMapper.xml

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/362546.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

挣值管理案例讲解

一、概念1.挣值管理是一种综合了范围、时间、成本绩效测量的方法。通过与计划完成的工作量、实际挣得的收益、实际的成本进行比较,可以确定成本、进度是否按计划进行。挣值管理可以在项目某一特定时间点上,从达到范围、时间、成本三项目标上评价项目所处…

1.2 学习环境准备

文章目录1.MariaDB简介2.MariaDB服务端和客户端安装1.MariaDB简介 因为MariaDB作为MySQL的延申,其包含MySQL所有的有点,并且其包含了更丰富的特性。比如微秒的支持、线程池、子查询优化、组提交、进度报告等; 所以我们接下来将已MariaDB作为…

TCP多线程并发IO阻塞服务模型

1. 多进程并发服务器 在 Linux 环境下多进程的应用很多,其中最主要的就是网络/客户服务器。多进程服务器是当客户有请求时,服务器用一个子进程来处理客户请求。父进程继续等待其它客户的请求。这种方法的优点是当客户有请求时,服务器能及时处理客户,特别是在客户服务器交互…

狂神说:流程控制——顺序选择循环结构

System.out.println(10) // 输出带回车 System.out.print(10) // 输出没有回车一、顺序机构挨个往下写,就是最基本的顺序结构二、选择结构 if、switchif单选择结构虽然简单,但也挺经常用的Scanner scanner new Scanner(System.in); // 和下面的…

毕业后想从事软件测试,现在需要学习哪些内容呢

在你选择学习之前,要先考虑一下这个是不是你喜欢的发展方向,而不是只听别人推荐就直接做了选择先了解下软件测试是做什么的以及未来发展前景,最后才是如何自学 软件测试就是在测试这个软件是不是能够完全按照需求运行。软件测试岗再简单点说…

基于JAVAWEB的出租车管理系统

摘要在Internet高速发展的今天,我们生活的各个领域都涉及到计算机的应用,其中包括出租车管理系统的网络应用,在国外出租车管理已经是很普遍的方式,不过国内的出租车管理可能还处于起步阶段。出租车管理系统具有出租、归还等功能。…

分布式之如何突破raft集群写数据性能瓶颈

写在前面 在分布式之Raft共识算法分析 一文中我们分析了当前比较常用的raft共识算法,通过raft算法我们可以很容易搭建集群并选举leader,然后由leader负责数据的写操作,这样也可以很容易的解决数据一致性的问题,但是只由leader来处…

C# 表达式树

lambda作为实现表达式树的一种方式&#xff0c;在开始学习表达式树之前&#xff0c;需要对lambda进行一些了解 表达式lambda&#xff0c;定义&#xff1a; (input-parameters) > expression 语句lambda&#xff0c;定义&#xff1a; (input-parameters) > { <sequen…

简单一招教你给大量视频添加srt字幕

很多小伙伴们在剪辑视频的同时需要给视频的画面中添加上srt字幕&#xff0c;那在有很多视频都要添加字幕的时候&#xff0c;就非常的费时&#xff0c;今天小编就给大家分享一个可以批量给大量视频添加srt字幕的简单方法&#xff0c;有需要的小伙伴可以进来看看具体步骤哦&#…

highlight.js高亮npm安装常见问题

目录 安装 highlight.js 安装 vue-highlightjs 安装highlightjs/vue-plugin main.js配置 最近在写低代码&#xff0c;有需求类似编辑器功能&#xff0c;实现代码高亮&#xff0c;然后用到了highlight.js&#xff0c;就整理一下。 官网链接直达 highlight.js 中文文档 安装 h…

calico-kube-controllers 启动失败处理

故障描述calico-kube-controllers 异常&#xff0c;不断重启日志信息如下2023-02-21 01:26:47.085 [INFO][1] main.go 92: Loaded configuration from environment config&config.Config{LogLevel:"info", WorkloadEndpointWorkers:1, ProfileWorkers:1, PolicyW…

java在Excel中添加png图片作为页眉(已解决)

1.背景 Excel在打印的时候需要附带水印打出&#xff0c;水印需要在下载Excel文件时就设置好 需要在打印的时候打印出水印&#xff0c;使用添加背景添加的水印在打印的时候不会出现&#xff0c;只有设置页眉&#xff0c;并将页眉设置为一长与打印纸张一样大小的图片&#xff0c…

Objective-C 字符串拼接函数 多个不同类型的参数拼接到一个字符串 类似于Java中 String.format()方法的原生API

总目录 iOS开发笔记目录 从一无所知到入门 文章目录需求ScreenshotCodeOutput需求 我有多个参数(类型也许不同)&#xff0c;需要拼接到一个字符串中。 在Java中有String.format()方法可以做到一次性格式转换。 在Objective-C中呢&#xff1f;也有具有类似功能的API&#xff1a…

从0探索NLP——导航帖

从0探索NLP——导航帖 人工智能是一个定义宽泛、知识组成复杂的领域&#xff0c;而NLP是人工智能领域中的一类任务&#xff0c;他在哪呢&#xff1f;Emmmmm~不能说都有涉猎只能说全都都沾点&#xff1a; 每次想要针对NLP的某一点进行讲解时&#xff0c;不讲那写细枝末节&…

【Git】Git下载安装与使用(一)

目录 1. 前言 1.1 什么是Git 1.2 使用Git能做什么 2. Git概述 2.1 Git简介 2.2 Git下载与安装 3. Git代码托管服务 3.1 常用的Git代码托管服务 3.2 码云代码托管服务 1. 前言 1.1 什么是Git Git是一个分布式版本控制工具&#xff0c;主要用于管理开发过程中的源代码…

多线程知识点

多线程 基本知识 创建线程的常用三种方式&#xff1a; 继承Thread类实现Runnable接口实现Callable接口&#xff08;JDK1.5>&#xff09; public class ThreadTest extends Thread {Overridepublic void run() {System.out.println(this.getName() "..开始.."…

国内动漫绘画培训班盘点

动漫培训机构哪家好&#xff1f;动漫培训班是一种有效的提升动漫水平的方式&#xff0c;可以帮助学生提高绘画技巧和技能&#xff0c;更好地表达自己的艺术想法。 一&#xff1a;动漫培训班排名 1、轻微课&#xff08;五颗星&#xff09; 主打课程有日系插画、游戏原画、古风插…

C语言进阶(二)—— 指针强化

1. 指针是一种数据类型1.1 指针变量指针是一种数据类型&#xff0c;占用内存空间&#xff0c;用来保存内存地址。void test01(){int* p1 0x1234;int*** p2 0x1111;printf("p1 size:%d\n",sizeof(p1));printf("p2 size:%d\n",sizeof(p2));//指针是变量&am…

Python实现贝叶斯优化器(Bayes_opt)优化卷积神经网络分类模型(CNN分类算法)项目实战

说明&#xff1a;这是一个机器学习实战项目&#xff08;附带数据代码文档视频讲解&#xff09;&#xff0c;如需数据代码文档视频讲解可以直接到文章最后获取。1.项目背景贝叶斯优化器(BayesianOptimization) 是一种黑盒子优化器&#xff0c;用来寻找最优参数。贝叶斯优化器是基…

Redis+Caffeine多级(二级)缓存,让访问速度纵享丝滑

目录多级缓存的引入多级缓存的优势CaffeineRedis实现多级缓存V1.0版本V2.0版本V3.0版本多级缓存的引入 在高性能的服务架构设计中&#xff0c;缓存是一个不可或缺的环节。在实际的项目中&#xff0c;我们通常会将一些热点数据存储到Redis或MemCache这类缓存中间件中&#xff0…