springMVC源码分析--BeanNameUrlHandlerMapping(七)

转载 https://blog.csdn.net/qq924862077/article/details/53762279

在AbstractUrlHandlerMapping的子类BeanNameUrlHandlerMapping中的实现如下:

BeanNameUrlHandlerMapping主要个作用就是将beanName及其别名作为url。

public class BeanNameUrlHandlerMapping extends AbstractDetectingUrlHandlerMapping {
	/**
	 * Checks name and aliases of the given bean for URLs, starting with "/".
	 */
	@Override
	protected String[] determineUrlsForHandler(String beanName) {
		List<String> urls = new ArrayList<String>();
		if (beanName.startsWith("/")) {
			urls.add(beanName);
		}
		//注入的bean name为请求链接
		String[] aliases = getApplicationContext().getAliases(beanName);
		for (String alias : aliases) {
			if (alias.startsWith("/")) {
				urls.add(alias);
			}
		}
		return StringUtils.toStringArray(urls);
	}
 
}

猜你喜欢

转载自blog.csdn.net/u012507301/article/details/86662179