MyBatis配置文件(mybatis-config.xml、xxxMapper.xml)

关于mybatis-3-config.dtd的配置:转载: https://blog.csdn.net/wangqing84411433/article/details/77878663

MyBatis配置文件分类两类:

1) 全局的配置文件:  mybatis-config.xml,  有序

  • properties(属性)  加载properties文件
  • settings(全局配置参数)  缓存
  • typeAliases(类型别名)    类型别名
  • typeHandlers(类型处理器)
  • objectFactory(对象工厂)
  • plugins(插件)    通用Mapper   分页插件
  • environments(环境集合属性对象)
  • environment(环境子属性对象)
  • transactionManager(事务管理)
  • dataSource(数据源)
  • mappers(映射器)

1、properties属性

//db.properties文件:
    driverClassName=oracle.jdbc.OracleDriver
    url=jdbc:oracle:thin:@localhost:1521:orcl
    user=scott
    password=tiger
//mybatis-config.xml 配置文件:
<!--加载properties配置文件  -->
<properties resource="db.properties"></properties>
。。。
<!-- 数据库连接池-->
<dataSource type="POOLED">
    <property name="driver" value="${driverClassName}" />
    <property name="url" value="${url}" />
    <property name="username" value="${user}" />
    <property name="password" value="${password}" />
</dataSource>

2、settings全局参数配置---------------

  mybatis框架在运行时可以调整一些运行参数。

  比如:开启二级缓存、开启延迟加载。。

3、typeAliases(类型别名)

MyBatis配置文件(mybatis-config.xml、xxxMapper.xml)

 自定义别名:

一个类一个类的配置 :<typeAlias  type="com.mybatis.entity.User"  alias="User"/>

  type: 类的包.类         

  alias: 取得别名, 类名或者类名第一个字母小名的类名

给某个包下所有的类取别名 : <package name="com.mybatis.entity"/>推荐

  name: 包名

  这个包下类的别名: 类名或者是 类名第一个字母小名的类名

4、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"/>

注意:class 的方式-- 要求xml必须与接口在同一个包下

  ④: <package name=""/> : 注册指定包下的所有mapper接口

如:<package name="org.csmf.mybatis.dao"/>

注意:此种方法要求mapper接口名称和mapper映射文件名称相同,且放在同一个包下。

使用情况:按实际需求,如果实体类较多,建议使用package,


2) 全局的配置文件:  xxxMapper.xml

MyBatis配置文件(mybatis-config.xml、xxxMapper.xml)

上一篇:React-Native报错Android project not found. Maybe run react-native android first?


下一篇:解决Ajax在兼容模式下后台调用执行两次结果不变的问题(已解决)!