47.3. 方法别名
概述
除了 Java API 中显示的标准方法名称外,通常还可以为给定方法定义附加名称(别名)。尤其常见情况是,允许属性名称(如 小部件
)用作访问者方法的别名(如 getWidget
或 setWidget
)。
语法
alias
元素可以使用一个或多个别名子元素定义,如下所示:
<aliases> <alias> <methodPattern>MethodPattern</methodPattern> <methodAlias>Alias</methodAlias> </alias> ... </aliases>
其中 MethodPattern
是一个正则表达式(java.util.regex
语法),用于匹配方法名称,模式通常包括捕获组。Alias
是替换表达式(用于 URI),它使用前面捕获组中的文本(例如,指定为 $1
、$2
或 $3
作为第一个、第二个或第三个捕获组的文本)。
影响范围
如以下提取所示,alias 元素可以选择性地显示为 apis
元素和/或作为 api
元素子元素的子级:
<configuration> <apis> <api> <apiName>...</apiName> ... <aliases>...</aliases> </api> <aliases>...</aliases> ... </apis> </configuration>
您可以在以下范围中定义 别名
元素:
-
作为
api
元素的子级 ,别名
映射只应用于由api
元素指定的 API 类。 -
作为
apis
元素的子级 ,别名
映射默认适用于所有 API 类,但可以在api
级别被覆盖。
示例
以下示例演示了如何为通用 get/set bean 方法模式生成别名:
<aliases> <alias> <methodPattern>[gs]et(.+)</methodPattern> <methodAlias>$1</methodAlias> </alias> </aliases>
使用上述别名定义时,您可以将 小部件
用作方法 getWidget
或 setWidget
的别名。请注意,使用捕获组 (.+)
来捕获方法名称的后部分(例如,Widget
)。