Mybatis 文档篇 2.3:Configuration 之 TypeAliases

1 Configuration Structure

  • properties
  • settings
  • typeAliases
  • typeHandlers
  • objectFactory
  • plugins
  • environments
    • environment
      • transactionManager
      • dataSource
  • databaseIdProvider
  • mappers

2 TypeAliases

A type alias is simply a shorter name for a Java type. It's only relevant to the XML configuration and simply exists to reduce redundant typing of fully qualified classnames.
是什么:类型别名是为 Java 类型设置的短名字。它只和 XML 配置关联且仅仅是为了减少类的完全限定名键入的冗余。

有两种方式可是实现:别名定义在 XML 中或使用注解。

2.1 TypeAlias in XML


  
  

With this configuration, Blog can now be used anywhere that domain.blog.Blog could be.
通过这样的配置,Blog 就可以在 domain.blog.Blog 要存在的任何地方使用。

2.2 Set by Annotation

You can also specify a package where MyBatis will search for beans.
你也可以指定一个包名,Mybatis 会在该包下搜索 Java bean。


  

Each bean found in domain.blog , if no annotation is found, will be registered as an alias using uncapitalized non-qualified class name of the bean. That is domain.blog.Author will be registered as author. If the @Alias annotation is found its value will be used as an alias.
每个在包 domain.blog 下发现的 bean,如果没有注解,会将该 bean 的首字母小写的非限定类名作为别名。比如 domain.blog.Author 的别名为 author。如果有 @Alias 注解,它的值会被作为别名。

@Alias("author")
public class Author {
    ...
}

附:内置基本类型别名

There are many built-in type aliases for common Java types. They are all case insensitive, note the special handling of primitives due to the overloaded names.
有一些内置的 Java 基本类型的别名。它们是大小写不敏感的,需要注意的是由基本类型名称重复导致的特殊处理。

Mybatis 文档篇 2.3:Configuration 之 TypeAliases_第1张图片
内置基本类型别名对应表

最后

说明:MyBatis 官网提供了简体中文的翻译,但个人觉得较为生硬,甚至有些地方逻辑不通,于是自己一个个重新敲着翻译的(都不知道哪里来的自信...),有些地方同官网翻译有出入,有些倔强地保留了自己的,有的实在别扭则保留了官网的,这些都会在实践中一一更正。鉴于个人英文能力有限,文章中保留了官方文档原英文介绍(个别地方加以调整修剪),希望有缘看到这里的朋友们能够有自己的理解,不会被我可能错误或不合理的翻译带跑偏(〃'▽'〃),欢迎指正!

当前版本:mybatis-3.5.0
官网文档:MyBatis
官网翻译:MyBatis 简体中文
项目实践:MyBatis Learn

你可能感兴趣的:(Mybatis 文档篇 2.3:Configuration 之 TypeAliases)