文本描述
MyBatis 3 用户指南 帮助我们把文档做得更好… 如果你发现了本文档的遗漏之处,或者丢失MyBatis特性的说明时,那么最好的方法就 是了解一下这个遗漏之处然后把它记录下来。 我们在wiki接收公共的文档贡献: http://opensource.atlassian/confluence/oss/display/IBATIS/Contribute+ Documentation 你也是本文档的最佳作者,其他用户也会来阅读它的。 关于翻译 MyBatis 3的用户指南翻译由南磊完成,若对翻译质量有任何意见和建议,请联系 nanlei1987@gmail或http://weibo/nanlei1987,愿和大家共同提高,共同进步。 本文档免费发布和使用,但不可用于任何商业途径,版权归译者南磊所有,源文档版权 归MyBatis社区所有。 从文档中复制代码的警告 是的,这不是一个法律上的警告,但是它可以帮助你保持清醒的认识。从 美学上来讲,现代的文字处理工具在制作可读性强和格式良好的文本上做了 大量的工作。然而,它们也往往会由于插入特殊字符而完全破坏代码示例, 有时看起来和你想要的是一模一样的。“引号"和连字符就是一个很好的例子- 在IDE环境或文本编辑器中,左边的那个符号就不会正常起作用,至少不会 是你想要的那个效果。 阅读本文档,就要享受它,希望它能对你有帮助。当遇到代码段示例的时 候,可以寻找示例和下载(包括单元测试等),或是来自网站和邮件列表的 示例。 目录 什么是MyBatis?............................................................................................................. 5 入门................................................................................................................................. 5 从XML中构建SqlSessionFactory .............................................................................. 5 不使用XML构建SqlSessionFactory........................................................................... 6 从SqlSessionFactory中获取SqlSession....................................................................... 6 探究已映射的SQL语句 ............................................................................................ 7 命名空间的一点注释 .......................................................................................... 8 范围和生命周期 ........................................................................................................ 8 SqlSessionFactoryBuilder ..................................................................................... 8 SqlSessionFactory................................................................................................ 9 SqlSession .......................................................................................................... 9 映射器实例 ........................................................................................................ 9 XML映射配置文件 ........................................................................................................ 10 properties................................................................................................................. 10 Settings ....................................................................................................................11 typeAliases .............................................................................................................. 12 typeHandlers ............................................................................................................ 13 objectFactory ........................................................................................................... 14 plugins .................................................................................................................... 15 environments............................................................................................................ 16 transactionManager ............................................................................................ 17 dataSsource....................................................................................................... 17 mappers ................................................................................................................... 19 SQL映射的XML文件 ................................................................................................... 19 select....................................................................................................................... 20 insert,update,delete .............................................................................................. 21 sql........................................................................................................................... 23 Parameters ............................................................................................................... 24 resultMap ................................................................................................................ 25 高级结果映射................................................................................................... 27 id,result.......................................................................................................... 29 支持的JDBC类型 ............................................................................................ 30 构造方法.......................................................................................................... 30 关联................................................................................................................. 31 集合................................................................................................................. 34 鉴别器 ............................................................................................................. 36 缓存........................................................................................................................ 38 使用自定义缓存 ............................................................................................... 38 参照缓存................................................................................................................. 39 动态SQL ................................................................................................................ 39 if ..................................................................................................................... 40 choose, when, otherwise ..................................................................................... 40 trim, where, set .................................................................................................. 41 foreach ............................................................................................................. 43 Java API ......................................................................................................................... 44 应用目录结构.......................................................................................................... 44 SqlSessions .............................................................................................................. 45 SqlSessionFactoryBuilder ................................................................................... 45 SqlSessionFactory.............................................................................................. 47 SqlSession ........................................................................................................ 48 SelectBuilder..................................................................................................... 53 SqlBuilder ........................................................................................................ 56