MyBaits全局配置文件的各项标签2
▲typeHandlers
类型处理器,它架起数据库和JavaBean一一映射的桥梁,这里需要注意一下,java在JDK1.8之前,日期处理函数并不丰富,但在JDK1.8之后引入JSR-310标准,这些处理在mybatis 1版本是没有的,需要自己手动引入= =当然现在也不用担心这个,因为我们不大可能会用这个版本的Mybatis。(Mybatis3.4之后)
▲plugins
这个也是Mybatis的强大之处,这个我会放到后面的章节,在对Mybatis有详细认识之后,进行详细介绍。
Mybatis可以拦截到对数据库的处理对象,这也是我们在JDBC学习阶段认识的几个对象,那么如何拦截呢?这里就用到了插件。我们可以在这些方法执行之前,拦截,添加一些新方法,和AOP的概念如出一辙。
执行器:Executor (update, query, flushStatements, commit, rollback, getTransaction, close, isClosed)
参数处理器:ParameterHandler (getParameterObject, setParameters)
结果集处理器:ResultSetHandler (handleResultSets, handleOutputParameters)
SQL语句处理器:StatementHandler (prepare, parameterize, batch, update, query)
▲environments
配置多种环境,这标签里面套着<environment>,而<environment>里,必需包含着<transationManager>和<dataSource>,<environment>里有个id属性,我们可以通过这个,给项目配置其他环境,比如可以提供一套测试环境,而在<enviroments>中的defualt属性,将默认环境设置为开发环境,测试人员在拿到项目时,只要改这个default属性即可。
<transactionManager type=""/>它有两种值,JDBC或者MANAGED,
后者使用JEE Application Server context的方式作为容器,当然这些事务配置,我们今后会有Spring来操作,所以这里了解一下即可,
dataSource数据源 type:UNPOOLED|POOLED|JNDI 第一个是不采用任何一种方式,每次都去操作都链接一次数据库,第二种采用连接池
▲databaseIdProvider
Mybatis可以根据不同的厂商,执行不同的sql语句,现在我们有新的需求,可以查询MYSQL的Employee也可以查询Oracle的Employee,
<databaseIdProvider type="DB_VENDOR" />
type="DB_VENDOR"(别名)得到数据库产商的标识,我们可以为不同的产商起不同的别名,我们在全局变量里添加一下代码
- <databaseIdProvider type="DB_VENDOR">
- <property name="MYSQL" value="mysql"/>
- <property name="Oracle" value="oracle"/>
- </databaseIdProvider>
接着再mapper.xml里指定每句sql语句的数据库即可

MyBaits全局配置文件的各项标签2的更多相关文章
- MyBaits全局配置文件的各项标签1
■dtd约束 <!DOCTYPE configuration PUBLIC "-//mybatis.org//DTD Config 3.0//EN" ...
- MyBatis全局配置文件的各项标签3
mapper 将sql映射注册到全局配置中,这个我们在上一章已经使用过了, resource 这个属性是用来引用类路径下的sql映射文件 url 这个属性是用来引用网络路径或磁盘路径下的sql映射文件 ...
- MyBaits 全局配置文件(mybatis-config.xml)
什么是 MyBatis 全局配置文件 MyBatis 全局配置文件包含影响 MyBatis 框架正常使用的功能设置和属性信息. 它的作用好比手机里的设置图标,点击这个图标就可以帮助我们查看手机的属性信 ...
- MyBatis全局配置文件标签详解
一.全局配置文件结构 configuration 配置 properties 属性:可以加载properties配置文件的信息 settings 设置:可以设置mybatis的全局属性 typeAli ...
- Mybatis的全局配置文件标签介绍(mybatis-config.xml)
全局配置文件中本人只记录了常用的几个 typeHandlers, objectFactory,objectWrapperFactory, reflectorFactory, plugins, dat ...
- mybatis全局配置文件
一.properties:引入外部配置文件 1.resource :引入类路径下的全局配置文件,例如:<properties resource="conf/dbconfig.prope ...
- 02、MyBatis XML 全局配置文件
MyBatis-全局配置文件 在MyBatis中全局配置文件有着重要的地位,里面有9类行为信息;如果我们要想将MyBatis运用的熟练,配置全局配置文件是必不可少的步骤,所以我们一定要啃下这一块硬骨头 ...
- maven全局配置文件settings.xml详解
概要 settings.xml有什么用? 如果在Eclipse中使用过Maven插件,想必会有这个经验:配置settings.xml文件的路径. settings.xml文件是干什么的,为什么要配置它 ...
- Mybatis学习(二)————— 全局配置文件详解
一.全部配置内容 SqlMapConfig.xml的配置内容和顺序如下,顺序不能乱.现在来对这些属性的意思一一进行讲解. 二.properties 作用:引用java属性文件中的配置信息,比如,加载连 ...
随机推荐
- Django-rest-framework 接口实现 rest_framework 中有已经定义好的 工具类 mixins generics viewsets
rest_framework.mixins 请求业务 的 5 种实现 mixin(混合类):不能单独使用,和其它类搭配起来使用(利用了Python支持多继承) rest_framework.mix ...
- CSS--position:relative和position:absolute
position:relative相对定位 1. 如何定位?每个元素在页面的普通流中会“占有”一个位置,这个位置可以理解为默认值,而相对定位就是将元素偏离元素的默认位置,但普通流中依然保持着原有的默认 ...
- Visual Studio Code 支持TensorFlow配置支持
首先选择解释器 选择TensorFlow版本的conda版本 (当然你如果是通过python单独安装的TensorFlow也可以) 编辑器输入代码,进行测试 import tensorflow as ...
- [python] 解决pip install download速度过慢问题 更换豆瓣源
""" python建立pip.ini.py 2016年4月30日 03:35:11 codegay """ import os ini=& ...
- CSAPP:第三章程序的机器级表示1
CSAPP:程序的机器级表示1 关键点:数据格式.操作数指示符. 数据格式访问信息操作数指示符举例说明 数据格式 术语字(word)表示16位数据类型,32位数为双字(double words), ...
- ElasticSearch(站内搜索) 转发 https://www.cnblogs.com/xibei666/p/5929970.html
简介 Elasticsearch是一个实时的分布式搜索和分析引擎.它可以帮助你用前所未有的速度去处理大规模数据.它可以用于全文搜索,结构化搜索以及分析,当然你也可以将这三者进行组合.Elasticse ...
- mac python3 conda pytorch出错:libc++abi.dylib: terminating with uncaught exception of type NSException
mac 10.14/ conda/python 3.7环境下运行神经网络例子出现错误: -- :::] -[NSApplication _setup:]: unrecognized selector ...
- Python+Pycharm—学习1—封装&导入
一.封装 目的: 写了一个复杂功能的实现,下次有相同的需求时可以直接导入这个包来使用.就可以达到复用的目的了.通俗的来讲就是打包.(以下用四则运算举例) 方案: 1.1.新建python工程,新建一个 ...
- SpringMVC自动封装List对象 —— 自定义参数解析器
前台传递的参数为集合对象时,后台Controller希望用一个List集合接收数据. 原生SpringMVC是不支持,Controller参数定义为List类型时,接收参数会报如下错误: org.sp ...
- 极其好用好学的规则引擎 - A2D规则引擎
写了个简单的规则引擎,普通情况够用了: 比如2家公司有各自的利率计算规则,如下: 在C#方面,没有写在C#的业务逻辑代码中,而是移到了外部规则文件中,如(ACompanyRatePolicy.r): ...