zoukankan      html  css  js  c++  java
  • mybatis 学习!

    参考链接

    http://www.mybatis.org/spring/zh/mappers.html

    http://www.cnblogs.com/fangjian0423/p/spring-mybatis-MapperScannerConfigurer-analysis.html

     http://www.tuicool.com/articles/iuemAn

    http://fhd001.iteye.com/blog/1125528

    http://www.cnblogs.com/yjmyzz/p/4261024.html

    http://www.blogjava.net/stevenjohn/archive/2012/05/25/379220.html

    ------------------------------------------------------------------------------------------------------------------------------------------------------------------------

    在Mybatis中,SqlSessionFactoryBuilder用于创建SqlSessionFactory。而在Mybatis-Spring中SqlSessionFactoryBean将取而代之。

    为了得到factory bean,如上节所示,需在Spring XML中配置:

    <!-- mybatis文件配置  扫描所有mapper文件-->
      <!-- configLocation为mybatis属性 mapperLocations为所有mapper-->
      <bean id="sqlSessionFactory" 
           class="org.mybatis.spring.SqlSessionFactoryBean"
           p:dataSource-ref="dataSource"
           p:configLocation="classpath:config/mybatis-config.xml"
           p:mapperLocations="classpath:mapper/*.xml"
      />

    要注意 SqlSessionFactoryBean 实现了 Spring 的 FactoryBean 接口(请参考 Spring 文 档的 3.8 章节)这就说明了由 Spring 最终创建的 bean 不是 SqlSessionFactoryBean 本身, 。 而是工厂类的 getObject()返回的方法的结果。这种情况下,Spring 将会在应用启动时为你 创建 SqlSessionFactory 对象,然后将它以 SqlSessionFactory 为名来存储。在 Java 中, 相同的代码是:

    SqlSessionFactoryBean factoryBean = new SqlSessionFactoryBean();
    SqlSessionFactory sessionFactory = factoryBean.getObject();

    在一般的 MyBatis-Spring 用法中, 你不需要直接使用 SqlSessionFactoryBean 或和其对 应的 SqlSessionFactory。相反,session 工厂将会被注入到 MapperFactoryBean 或其它扩 展了 SqlSessionDaoSupport 的 DAO(Data Access Object,数据访问对象,译者注)中。

    SqlSessionFactory的属性

    1. dataSource,SqlSessionFactory有一个必须的属性,即JDBC DataSource,这个DataSource可一个任何符合Spring配置的DataSource。

    2. configLocation:它是用来指定 MyBatis 的 XML 配置文件路径的。 如果基本的 MyBatis 配置需要改变, 那么这就是一个需要它的地方。 通常这会是 <settings>  或<typeAliases> 的部分。要注意这个配置文件不需要是一个完整的 MyBatis 配置。确切地说,任意环境,数据源 和 MyBatis 的事务管理器都会被忽略。SqlSessionFactoryBean 会创建它自己的,使用这些 值定制 MyBatis 的 Environment 时是需要的。如果 MyBatis 映射器 XML 文件在和映射器类相同的路径下不存在,那么另外一个需要 配置文件的原因就是它了。使用这个配置,有两种选择。第一是手动在 MyBatis 的 XML 配 置文件中使用<mappers>部分来指定类路径。

    3. mapperLocations:mapperLocations 属性使用一个资源位置的 list。 这个属性可以用来指定 MyBatis 的 XML 映射器文件的位置。 它的值可以包含 Ant 样式来加载一个目录中所有文件, 或者从基路径下 递归搜索所有路径。

  • 相关阅读:
    JAVA学习日报 7.24
    JAVA学习日报 7.23
    JAVA学习日报 7.22
    【刷题-LeetCode】275. H-Index II
    【刷题-LeeetCode】260. Single Number III
    【刷题-LeetCode】240. Search a 2D Matrix II
    【刷题-LeetCode】239. Sliding Window Maximum
    【刷题-LeetCode】238. Product of Array Except Self
    【经验总结】VSCode中找不到numpy/matplotlib/pillow,navigator没了
    【刷题-LeetCode】236. Lowest Common Ancestor of a Binary Tree
  • 原文地址:https://www.cnblogs.com/AutumnRhyme/p/5106605.html
Copyright © 2011-2022 走看看