Mybatis核心配置文件剖析

文章内容输出:拉勾教育java高薪训练营

Mybatis简介

在开始剖析Mybatis核心配置文件前,大家需要对Mybatis有一定的理解,并且知道Mybatis究竟是干什么的?我们学习任何一款框架都是要解决实际的问题,所以大家在学习框架之前首先都要明确几点:

1、为什么要学习Mybatis框架?
2、Mybatis框架的作用?
3、不用Mybatis框架可以解决现在的问题吗?

Mybaits是一款优秀的基于ORM的半自动轻量级持久层框架,它支持定制sql、存储过程以及高级映射。Mybatis几乎避免了所有JDBC代码和手动设置参数以及获取封装结果集。Mybatis可以使用简单的XML或注解来配置和映射原生类型、接口和JAVA的POJO(Plain Old Java Objects,普通老式Java对象)为数据库中的记录。

Mybatis核心配置文件

对于什么是Mybatis的核心配置文件如果有同学还不知道可以去参考Mybatis之环境搭建这篇文章。对于有过Mybatis使用经验的同学们都知道Mybatis的核心配置文件就是:sqlMapConfig.xml,下面我们将要介绍一下究竟什么是sqlMapConfig.xml

Mybatis之sqlMapConfig.xml

从名称上看我们就知道Mybatis的核心配置文件是一个XML类型的文件。那么既然是XML的文件,必然就存在XML标签。下面我们就从核心配置文件的标签入手,剖析一下Mybatis的核心配置文件。



 
        
            
            
            
            
                
                
                
                
             
        
    
    
    
    
        
        
        
        
    


一般标签

sqlMapConfig.xml配置文件中我们首先关注标签:
    // 这里需要注意的是,标签中的default指定的名称必须在当前环境中存在,否则执行报错
  (1)标签:从英文单词上说他就代表你的一个环境,并且可以通过default属性来指定默认的环境名称。
  (2)  标签:是指定当前环境的名称,并且可以通过ID来指定你的环境名称
  (3)标签:指定事务管理类型,例如:JDBC,MANAGED
      a、JDBC: 这个配置就是直接使用了JDBC的提交和回滚设置,它依赖于从数据源得到的连接来管理事务作用域。
      b、MANAGED:这个配置几乎没做什么。它从来不提交或回滚一个连接,而是让容器管理事务的整个生命周期(比如JEE应用服务器上下文)。默认情况下他会关闭连接,然而一些容器并不希望这样,因此需要将closeConnection属性设置为false来阻止默认关闭的行为
  (4)标签:指定当前数据源类型,例如:POOLED,UNPOOLED,JNDI 
      a、POOLED:这种数据源的实现利用池的概念将JDBC连接对象组织起来
      b、UNPOOLED:这个数据源的实现只是每次请求时打开和关闭连接
      c、JNDI:这个数据源的实现是为了能在如EJB或应用服务器这类容器中使用,容器可以集中或在外部配置数据源,然后当值一个JNDI上下文的引用。
  (5)标签:该标签的作用是加载映射的,加载的方式有以下几种:
      a、使用相对路径加载资源的引用
      b、使用完全限定资源定位符(URL)
      c、使用映射器接口实现类的完全限定类名
      d、将包内的映射器接口实现全部注册为映射器

Properties标签

我们平常开发中习惯将数据源的信息单独抽取成一个properties文件,该标签可以加载额外的properties配置文件。

  

typeAliases标签

该标签可以配置java的别名,当配置了这个别名时,在mapper映射文件中方法的返回值使用别名即可。

 
        
            
        

mybatis为我们提供的别名列表,如下:

别名 数据类型
string String
long Long
int Integer
double Double
boolean Boolean
... ... ... ...

总结

Mybatis框架目前是主流框架,针对Mybatis的研究远远还没有结束,我们不仅要学会使用这款框架更要学习框架设计的思想。好了,看完本篇文章相信大家对Mybatis核心配置文件中的标签有了一定的了解。想要获取更多关于框架原理,设计模式等相关知识,请持续关注我哦!!!!

你可能感兴趣的:(Mybatis核心配置文件剖析)