• 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"(别名)得到数据库产商的标识,我们可以为不同的产商起不同的别名,我们在全局变量里添加一下代码
    
    1. <databaseIdProvider type="DB_VENDOR">  
    2.     <property name="MYSQL" value="mysql"/>  
    3.     <property name="Oracle" value="oracle"/>  
    4. </databaseIdProvider> 
    接着再mapper.xml里指定每句sql语句的数据库即可
     
  • 相关阅读:
    unity panel删除drawcall失败导致的残留影像
    c# List的排序
    动画播放一段就禁用
    delegate用法
    ctrl+alt+end 修改桌面密码
    Windows 下curl htpps
    Linux下端口映射工具rinetd
    Linux系统下强制踢掉登录用户
    linux ls 按文件大小排序
    chrome的功能Copy as cURL
  • 原文地址:https://www.cnblogs.com/figsprite/p/10731015.html
Copyright © 2020-2023  润新知