我们在看java技术书籍的过程中,当加载文件时总会遇到是否支持ant风格路径加载,这里说的ant风格是什么意思呢,今天我查了一下,明白了什么意思,现在总结一下
ANT通配符有三种:
通配符 | 说明 |
? | 匹配任何单字符 |
* | 匹配0或者任意数量的字符 |
** | 匹配0或者更多的目录 |
下面举个例子:
URL路径 | 说明 |
/project/*.a | 匹配项目根路径下所有在project路径下的.a文件 |
/project/p?ttern | 匹配项目根路径下 /project/pattern 和 /app/pXttern,但是不包括/app/pttern |
/**/example | 匹配项目根路径下 /project/example, /project/foow/example, 和 /example |
/project/**/dir/file.* | 匹配项目根路径下/project/dir/file.jsp, /project/foow/dir/file.html,/project/foow/bar/dir/file.pdf |
/**/*.jsp | 匹配项目根路径下任何的.jsp 文件 |
需要注意的是:
最长匹配原则(has more characters)
说明,URL请求/project/dir/file.jsp,现在存在两个路径匹配模式/**/*.jsp和/project/dir/*.jsp,那么会根据模式/project/dir/*.jsp来匹配