Mybtais框架各配置文件主要内容详解(一)
前言:
Mybatis由ibatis框架演变而来——2010 年,iBATIS 框架正式更名为 MyBatis,并捐赠给 Apache 软件基金会,开启了开源社区驱动的发展之路。
Mybatis处于MVC三层架构的Model层,是一款优秀的半自动orm框架,相较于Hibernate的全映射orming,mybatis有其独特的动态SQL引擎、映射器接口、缓存机制等。常应用于电商平台订单系统、社交平台关系链、金融与银行核心交易、风控系统。ERP、政务系统等。
随着云原生、Serverless 架构的普及,MyBatis 正在向以下方向探索:
- 与云数据库集成:针对 AWS RDS、阿里云 POLARDB 等云数据库,优化连接池管理与自动扩缩容场景下的 SQL 执行策略。
- 智能化 SQL 生成:结合 AI 技术分析业务场景,自动生成优化的 SQL 语句(如基于查询频率推荐索引),减少开发者手动优化成本。
- 多模态数据支持:从传统关系型数据库扩展到 MongoDB、Elasticsearch 等非结构化存储,通过 MyBatis 接口统一数据访问层。
Mybatis的核心配置文件默认名称叫Mybatis-config.xml(后续可以自由更改)
- 首先导入Mybatis的核心包
<!-- Mybatis核心 --><dependency><groupId>org.mybatis</groupId><artifactId>mybatis</artifactId><version>3.5.7</version></dependency>
<environments default="development"><!--environment:配置某个具体的环境属性:id:表示连接数据库的环境的唯一标识,不能重复--><environment id="development"><!--transactionManager:设置事务管理方式属性:type="JDBC|MANAGED"JDBC:表示当前环境中,执行SQL时,使用的是JDBC中原生的事务管理方式,事务的提交或回滚需要手动处理MANAGED:被管理,例如Spring--><transactionManager type="JDBC"/><!--dataSource:配置数据源属性:type:设置数据源的类型type="POOLED|UNPOOLED|JNDI"POOLED:表示使用数据库连接池缓存数据库连接UNPOOLED:表示不使用数据库连接池JNDI:表示使用上下文中的数据源--><dataSource type="POOLED"><!--设置连接数据库的驱动--><property name="driver" value="${jdbc.driver}"/><!--设置连接数据库的连接地址--><property name="url" value="${jdbc.url}"/><!--设置连接数据库的用户名--><property name="username" value="${jdbc.username}"/><!--设置连接数据库的密码--><property name="password" value="${jdbc.password}"/></dataSource></environment><environment id="test"><transactionManager type="JDBC"/><dataSource type="POOLED"><!--设置连接数据库的驱动--><property name="driver" value="${jdbc.driver}"/><!--设置连接数据库的连接地址--><property name="url" value="${jdbc.url}"/><!--设置连接数据库的用户名--><property name="username" value="${jdbc.username}"/><!--设置连接数据库的密码--><property name="password" value="${jdbc.password}"/></dataSource></environment></environments>
- 以上是Mybatis中对于Jdbc数据库的最基本配置
- 设置别名
-
<!--设置类型别名--><typeAliases><!--typeAlias:设置某个类型的别名属性:type:设置需要设置别名的类型alias:设置某个类型的别名,若不设置该属性,那么该类型拥有默认的别名,即类名且不区分大小写--><!--<typeAlias type="com.atguigu.mybatis.pojo.User"></typeAlias>--><!--以包为单位,将包下所有的类型设置默认的类型别名,即类名且不区分大小写--><package name="com.atguigu.mybatis.pojo"/></typeAliases>
-
未完待续。。。