mybatis系列笔记(3)---SqlMapConfig.xml解析

SqlMapConfig.xml

SqlMapConfig.xml是Mybatis的全局配置参数,关于他的具体用的有专门的MyBatis - API文档,这里面讲的非常清楚,所以我这里就挑几个讲下:

他的主要配置的属性有如下:

1.properties 属性

这些属性都是可外部配置且可动态替换的,既可以在典型的 Java 属性文件中配置,亦可通过 properties 元素的子元素来传递。

1 <!-- 加载属性文件 -->
2     <properties resource="db.properties">
3         <!-- 可以在配置相关的其他事项 -->
4         <!-- <property name="jdbc.driver" value="com.mysql.jdbc.Driver"/> -->
5     </properties>
6     <!-- 这里如果在db.properties和 name=""都配置了jdbc.driver那么优先执行name中的-->
7     <!-- 配置全局的参数信息 -->    

如果属性在不只一个地方进行了配置,那么 MyBatis 将按照下面的顺序来加载:

  • 在 properties 元素体内指定的属性首先被读取。
  • 然后根据 properties 元素中的 resource 属性读取类路径下属性文件或根据 url 属性指定的路径读取属性文件,并覆盖已读取的同名属性。
  • 最后读取作为方法参数传递的属性,并覆盖已读取的同名属性。

因此,通过方法参数传递的属性具有最高优先级,resource/url 属性中指定的配置文件次之,最低优先级的是 properties 属性中指定的属性。

2.settings全局的参数配置

这是 MyBatis 中极为重要的调整设置,它们会改变 MyBatis 的运行时行为。

具体的就不写了只写一个表达式:

<!-- 配置全局的参数信息 -->
       <settings>
          <setting name="" value=""/>
      </settings>

3.typeAliases(别名)

 制定别名最大的一个优势就是方便我们的开发,因为我们如果没有设置别名的情况下,在mapper.xml中

定义了很多Statement ,Statement需要parameterType指定输入参数的类型或者指定输出结果的类型比如:

<!-- 根据id查询用户信息 -->
    <select id="findUserById" parameterType="int" resultType="com.study.model.User">
        SELECT * FROM USER WHERE id= #{id}
    </select>

这里的resultType如果是对象一定要类的全名称,那我们能不能只写了user就能达到同样的效果,这样是不是就有利于简便我们的开发

有两种方法:

1.单个别名的定义

1 <typeAliases>
2         <!--
3             单个别名的定义
4             alias:别名,type:别名映射的类型  -->
5             <!-- <typeAlias type="com.study.model.User" alias="user"/> -->
6     </typeAliases>
7 <!--这样的话只需输入user就能起到一样效果-->

2.批量定义别名(常用)

1 <typeAliases>
2             <!-- 批量别名定义
3             指定包路径,自动扫描包下边的pojo,定义别名,别名默认为类名(首字母小写或大写)
4          -->
5         <package name="com.study.model"/>
6     </typeAliases>

4.mappers(映射配置)

1.通过resource加载单个映射文件

1 <!-- 加载映射文件 -->
2     <mappers>
3         <mapper resource="sqlmap/User.xml" />
4     </mappers>

2.通过mapper接口加载单个mapper

1 <mappers>
2         <!-- 通过mapper接口 加载单个映射文件 必须遵循一些规范: 需要将mapper接口和mapper.xml映射文件 文件名必须一致 并且在同一个目录下 -->
3         <mapper class="com.study.mapper.UserMapper" />
4     </mappers>

3.批量加载mapper(推荐使用)

1 <mappers>
2         <!--
3             指定mapper接口的包名  mybatis会自动扫描这个包下所有的mapper接口 然后执行加载
4          -->
5         <package name="com.study.mapper"/>
6     </mappers>

其他的我就不讲了,要详细的可以找api,非常的详细,欢迎大家指点,谢谢!

时间: 2024-08-19 04:30:29

mybatis系列笔记(3)---SqlMapConfig.xml解析的相关文章

mybatis入门基础(三)----SqlMapConfig.xml全局配置文件解析

阅读目录 一:SqlMapConfig.xml配置文件的内容和配置顺序如下 二:properties属性 三:settings全局参数配置 四:typeAiases(别名)--重点掌握 五:typeHandlers(类型处理器) 六:mappers(映射配置) 回到顶部 一:SqlMapConfig.xml配置文件的内容和配置顺序如下 properties(属性) settings(全局配置参数) typeAiases(类型别名) typeHandlers(类型处理器) objectFactor

【MyBatis学习05】SqlMapConfig.xml文件中的配置总结

经过上两篇博文的总结,对mybatis中的dao开发方法和流程基本掌握了,这一节主要来总结一下mybatis中的全局配置文件SqlMapConfig.xml在开发中的一些常用配置,首先看一下该全局配置文件中都有哪些可以配置的东西: 配置内容 作用 <properties> 用来加载属性文件 <settings> 用来设置全局参数 <typeAliases> 用来设置类型的别名 <typeHandlers> 用来设置类型处理器 <objectFactor

mybatis系列笔记(2)---mapper代理方法

mapper代理方法 在我们在写MVC设计的时候,都会写dao层和daoimp实现层,但假如我们使用mapper代理的方法,我们就可以不用先daoimp实现类 当然这得需要遵守一些相应的规则: (1)Usermapper.java接口必须和Usermapper.xml名称相同,且要在同一目录下: (2)mapper.xml中namespace等于mapper接口的地址 (3)Usermapper.java接口中国的方法名和Usermapper.xml中statement的id一致 <!-- 7综

03.MyBatis的核心配置文件SqlMapConfig.xml

SqlMapConfig.xml中配置的内容和顺序如下: properties(属性) settings(全局配置参数) typeAliases(类型别名) typeHandlers(类型处理器) objectFactory(对象工厂) plugins(插件) environments(环境集合属性对象) environment(环境子属性对象) transactionManager(事务管理) dataSource(数据源) mappers(映射器) ---------------------

mybatis系列笔记(1)---mybatis入门

mybatis入门   MyBatis是什么? MyBatis 本是apache的一个开源项目iBatis, 2010年这个项目由apache software foundation 迁移到了google code,并且改名为MyBatis,实质上Mybatis对ibatis进行一些改进. 目前mybatis在github上托管.  git(分布式版本控制,当前比较流程) MyBatis是一个优秀的持久层框架,它对jdbc的操作数据库的过程进行封装,使开发者只需要关注 SQL 本身,而不需要花费

mybatis系列笔记(4)---输入输出映射

输入输出映射 通过parameterType制定输入参数类型 类型可以是简单类型(int String)也可以是POJO本身 或者包装类 1输入映射 关于输入简单类型和pojo本身的我就不写了,因为比较简单,下面我主要举一个包装类的例子: 使用包装类POJO 将复杂的查询条件封装到POJO中 1 //当你继承user属性后,你就可以在user的基础上添加自己的属性了 2 public class UserCustomer extends User { 3 4 //用户的基本信息 5 //可以扩展

5.MyBatis 全局配置文件详解(sqlMapConfig.xml)

1.1     Mybatis的全局配置文件 SqlMapConfig.xml是mybatis的全局配置文件.它的名称可以是任意命名的. 1.1.1 配置内容 SqlMapConfig.xml的配置内容和顺序如下(顺序不能乱): Properties(属性) Settings(全局参数设置) typeAliases(类型别名) typeHandlers(类型处理器) objectFactory(对象工厂) plugins(插件) environments(环境信息集合) environment(

五 mybatis的SqlMapConfig.xml详解

SqlMapConfig.xml 1 <?xml version="1.0" encoding="UTF-8" ?> 2 <!DOCTYPE configuration 3 PUBLIC "-//mybatis.org//DTD Config 3.0//EN" 4 "http://mybatis.org/dtd/mybatis-3-config.dtd"> 5 <configuration>

mybatis系列-05-SqlMapConfig.xml详解

mybatis的全局配置文件SqlMapConfig.xml,配置内容如下: properties(属性) settings(全局配置参数) typeAliases(类型别名) typeHandlers(类型处理器) objectFactory(对象工厂) plugins(插件) environments(环境集合属性对象) environment(环境子属性对象) transactionManager(事务管理) dataSource(数据源) mappers(映射器) 5.1     pro