SqlMapConfig.xml中配置的内容和顺序

本文详细介绍了MyBatis核心配置文件SqlMapConfig.xml的各项配置内容及其顺序,包括属性、全局配置参数、类型别名、类型处理器等,并解释了属性加载的优先级。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

SqlMapConfig.xml中配置的内容和顺序如下: 


 
properties(属性) 


settings(全局配置参数)
 typeAliases(类型别名)
typeHandlers(类型处理器)
 objectFactory(对象工厂)
plugins(插件) 


  environments(环境集合属性对象)


environment(环境子属性对象)
 
transactionManager(事务管理) 
dataSource(数据源)
 
mappers(映射器)




注意:
MyBatis 将按照下面的顺序来加载属性:  
在properties 元素体内定义的属性首先被读取。
然后会读取properties 元素中resource或 url加载的属性,它会覆盖已读取的同名属性。  
最后读取parameterType传递的属性,它会覆盖已读取的同名属性。  


因此,通过parameterType传递的属性具有最高优先级,resource或 url 加载的属性次之,最低优先级的是properties 元素体内定义的属性。


settings(全局配置参数)
mybatis全局配置参数,全局参数将会影响mybatis的运行行为。
   详细参见“学习资料/mybatis-settings.xlsx”文件


typeAliases(类型别名)
  别名 映射的类型 
_byte  byte  
_long  long 
 _short  short 
 _int  int 
 _integer  int 
 _double  double 
 _float  float 
 _boolean  boolean 
 string  String 
 byte  Byte  
long  Long  
short   Short 
int  Integer 
 integer  Integer 
 double  Double 
 float  Float 
 boolean  Boolean 
 date  Date 
 decimal  BigDecimal 
 bigdecimal  BigDecimal
自定义别名:
在SqlMapConfig.xml中配置:
<typeAliases>
  <!-- 单个别名定义 -->
   <typeAliasalias="user"type="cn.itcast.mybatis.po.User"/>
   <!-- 批量别名定义,扫描整个包下的类,别名为类名(首字母大写或小写都可以) -->
   <packagename="cn.itcast.mybatis.po"/>
   <packagename="其它包"/>
</typeAliases>




typeHandlers(类型处理器)
mybatis自带的类型处理器基本上满足日常需求,不需要单独定义。


mappers(映射器)
 <mapper resource=" " /> 使用相对于类路径的资源  如:<mapper resource="sqlmap/User.xml" />
 <mapper url=" " />使用完全限定路径  如:<mapper url="file:///D:\workspace_spingmvc\mybatis_01\config\sqlmap\User.xml" /> 
 <mapper class=" " /> 使用mapper接口类路径  如:<mapper class="cn.itcast.mybatis.mapper.UserMapper"/>
 <package name=""/> 注册指定包下的所有mapper接口  
      如:<package name="cn.itcast.mybatis.mapper"/>  
      注意:此种方法要求mapper接口名称和mapper映射文件名称相同,且放在同一个目录中。






resultMap 
resultType可以指定pojo将查询结果映射为pojo,但需要pojo的属性名和sql查询的列名一致方可映射成功。  
如果sql查询字段名和pojo的属性名不一致,可以通过resultMap将字段名和属性名作一个对应关系,resultMap实质上还需要将查询结果映射到pojo对象中。  
resultMap可以实现将查询结果映射为复杂类型的pojo,比如在查询结果映射对象中包括pojo和list实现一对一查询和一对多查询。















评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值