下面是几种常见的Spring工具的类型 :

  • ​XXXUtils​​ – 静态工具方法类
  • 通常以​​Utils​​作为类名后缀
  • 类的成员函数定义为​​public static​
  • 一般不通过创建类实例方式使用,而是通过直接​​XXXUtils.func()​​被使用
  • 一般完全无状态,(即使有状态,也一般是维护类静态成员属性static member field )
  • 工具方法命名通常可以"望文知意",可以知道其目的
  • ​XXXConfigurer​​– "某某"配置器
  • ​XXXEnhancer​​ – "某某"增强器
  • ​XXXLoader​​ – "某某"加载器
  • ​XXXPostProcessor​​ – "某某"后置处理器
  • ​XXXVisitor​​ – "某某"访问器
  • ​XXXSupport​​ – "某某"支持
  • 一般是抽象类,位于类继承层次结构的中间位置(不是实现类,一般也不是顶层基类)
  • 抽象了子类工具语义共性的某些部分,提供了共同属性访问,共用逻辑工具方法
    例子 :​​​PlaceholderConfigurerSupport​
  • ​XXXHelper​​ – "某某"小助手
  • 从类名称可以推测出是针对哪个特定的模块或者功能区域,但是看不出目的类一般需要实例化然后调用其某个功能完成指定任务
    例子 :​​​PropertyPlaceholderHelper​
  • ​XXXComposite​​ – "某某"组合器:
  • 从类名称可以推测出这是一组同类工具的组合
  • 该组合类和被组合的工具类通常实现同样的接口
  • 该组合类对接口方法的实现其实是调用所有被组合工具的该接口方法
    例子 :​​​WebMvcConfigurerComposite​
  • ​Builder​​ – 构建器
  • 使用Builder设计模式