在Struts2中,我們可以使用通配符來匹配URL。常見的通配符使用方法有:
通配符匹配所有請求:使用/*
通配符可以匹配所有請求,例如<action name="/*" class="com.example.ActionClass">
,這樣所有的請求都會被該Action類處理。
通配符匹配路徑:使用/**
通配符可以匹配路徑中的任意部分,例如<action name="/admin/**" class="com.example.AdminActionClass">
,這樣所有以/admin/
開頭的請求都會被該Action類處理。
通配符匹配擴展名:使用.*
通配符可以匹配URL中的任意擴展名,例如<action name="/example/*" class="com.example.ActionClass">
,這樣所有以/example/
開頭的請求都會被該Action類處理,無論其后跟著何種擴展名。
通配符匹配單個字符:使用?
通配符可以匹配URL中的單個字符,例如<action name="/example/?/edit" class="com.example.EditActionClass">
,這樣類似/example/a/edit
、/example/b/edit
等請求都會被該Action類處理。
需要注意的是,通配符匹配是有優先級的,例如如果同時存在/example/*
和/example/*.action
兩個通配符規則,前者會優先匹配。因此,在使用通配符時需要注意規則的順序。