MyBatis-数据库连接池、属性文件config.properties、类名简化、MyBatis的整体架构

server/2024/11/24 21:35:02/

一、数据库连接池

1、概述

存储实现创建好的连接对象的容器

2、优点

避免了频繁创建和销毁连接对象

3、使用

在使用到连接对象时可在数据库连接池中直接获取

4、实现

不需要我们去实现,框架和一些第三方有现成的组件(C3P0、ADCP、德鲁伊(阿里巴巴))

二、属性文件

config.properties

作用:使得配置文件中的属性值可以动态替换

三、类名简化

方式一:给每一个类起一个别名

 <typeAlias type="com.ffyc.mybatispro.model.Admin" alias="Admin"></typeAlias>

方式二:包名+每一个类的类名简称=全类名

<package name="com.ffyc.mybatispro.model"/>  

注意:系统类常用的一些类mybatis框架已经提前为其起好了别名

四、MyBatis框架的整体架构

五、对MyBatis框架的总结

MyBatis是一种优秀的数据持久层框架。

1、MyBatis对jdbc中的接口(如Connection、PreparedStatement)进行了封装,并提供了一些自己的类,如封装了MyBatis配置文件的SqlSessionFactory和可用于接收SqlSessionFactory创建的SqlSession对象的SqlSession类

2、SqlSession对象是为实现一次与数据库交互创建的对象,具有管理事务、管理缓存的功能,每一次与数据库进行的会话都需要一个新的SqlSession对象

3、MyBatis不只将数据库连接配置提取到了XML文件中,还将SQL语句也提取到了XML文件中,将SQL语句与java语句进行了分离,为动态SQL的实现奠定了基础。

4、MyBatis可以将数据库中的记录映射java对象中,这种映射方式是orm(Object Relational Mapping)对象关系映射。

5、MyBatis不但支持动态SQL,即可以在SQL语句内部进行逻辑处理,还支持对数据进行缓存


http://www.ppmy.cn/server/144641.html

相关文章

Leetcode 每日一题 11. 盛最多水的容器

目录 引言 问题背景 输入输出规范 示例解析 示例 1 示例 2 算法策略 Java代码实现 复杂度分析 结语 引言 在算法的世界里&#xff0c;有些问题虽然简单&#xff0c;但却是锻炼算法思维的绝佳练习。今天&#xff0c;我们将深入探讨一个在面试中经常出现的问题——“接…

SpringBoot中小企业人事管理系统:设计模式

摘 要 随着科学技术的飞速发展&#xff0c;社会的方方面面、各行各业都在努力与现代的先进技术接轨&#xff0c;通过科技手段来提高自身的优势&#xff0c;中小企业人事管理系统当然也不能排除在外。中小企业人事管理系统是以实际运用为开发背景&#xff0c;运用软件工程原理和…

使用minio cllient(mc)完成不同服务器的minio的数据迁移和mc基本操作

前言 最近需要将一个服务器上的minio桶的数据迁移到新服务器上,所以学习了一下,使用的是minio client。 MinIO Client (mc) 是一个用于与 MinIO 和其他兼容 Amazon S3 的云存储服务交互的命令行工具。MinIO 是一个高性能的对象存储服务器,mc 提供了一个丰富的命令集来管理对…

Spring 中的 ProxyFactory 创建代理对象

一、jdk 动态代理 和 cglib动态代理 简单介绍 1.jdk动态代理 public interface AService {public String serviceA(String param);public String serviceAA(String param); } public interface BService {public String serviceB(String param);public String serviceBB(Str…

C语言-11-18笔记

1.C语言数据类型 类型存储大小值范围char1 字节-128 到 127 或 0 到 255unsigned char1 字节0 到 255signed char1 字节-128 到 127int2 或 4 字节-32,768 到 32,767 或 -2,147,483,648 到 2,147,483,647unsigned int2 或 4 字节0 到 65,535 或 0 到 4,294,967,295short2 字节…

Android 基于Camera2 API进行摄像机图像预览

前言 近期博主准备编写一个基于Android Camera2的图像采集并编码为h.264的应用&#xff0c;准备分为三个阶段来完成&#xff0c;第一阶段实现Camera2的摄像机预览&#xff0c;第二阶段完成基于MediaCodec H.264编码&#xff0c;第三阶段完成基于MediaCodec H.264解码,针对不同…

python探测脚本

编写一个脚本test_ip.py实现指定参数的远程主机网络探测 python test_ip.py 192.168.0.10 192.168.0.100 针对192.168.0.10~192.168.0.100范围内所有主机进行网络探测 import sys import time获取命令行参数&#xff1a;python test_ip.py 192.168.0.10 192.168.0.100 initial_…

纯HTMLCSS实现3D旋转地球

效果演示 这段 HTML 和 CSS 代码创建了一个带有动画效果的星空背景&#xff0c;其中包含闪烁的星星和一个旋转的地球图案。 HTML <div class"section-banner"><div id"star-1"><div class"curved-corner-star"><div id…