尝试了下,spring MVC 的入门例子,有些不懂,先看配置;
<servlet> <servlet-name>spring</servlet-name> <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class> <init-param> <param-name>contextConfigLocation</param-name> <param-value>classpath:springmvc-servlet.xml</param-value> </init-param> <load-on-startup>1</load-on-startup> </servlet> <servlet-mapping> <servlet-name>spring</servlet-name> <url-pattern>/</url-pattern> </servlet-mapping>
@Controller public class HomeController { @RequestMapping("/") public String home(){ System.out.println("Is here!"); return "home"; } @Autowired Comparator<String> comparator; }
<context:component-scan base-package="com.home" /> <!-- Enables the Spring MVC @Controller programming model <mvc:default-servlet-handler/> --> <mvc:annotation-driven />
上面是主要配置,想打印helloWorld,JSP 页面 叫home.jsp.
按照官方例子,我访问http://localhost:8080/springmvc 会到jsp 页面。
问题一:我返回的是 return "home"; 没有return "home.jsp"; 是不是默认就是home.jsp.
我在xx-servlet.xml 很简单, 里面也没配置前缀 后缀什么的,就成这样了。而且我返回return "home.jsp"; 会出现home.jsp.jsp 找不到,说明默认就加上了。
谁能解释这个返回经过了哪些地方,我想看看源码走向。
问题二:@Autowired
Comparator<String> comparator;
接下来的例子,用到这个。不用Autowired 这里得到null.
大概解释是:Autowired 让我们省略了get/set ,但是bean 里面我没有添加元素,不清楚他的实现过程。谁能解释下?
例子地址:http://blog.springsource.com/2011/01/04/green-beans-getting-started-with-spring-mvc/