springmvc 入门 问题

尝试了下,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/

 

问题一:我返回的是 return "home"; 没有return "home.jsp"; 是不是默认就是home.jsp.

视图解析器的作用: 如它会自动拼前缀和后缀

问题二:@Autowired 注入资源的 你拿走 spring就不注入了 所以null

学spring和spring mvc可以参考 我的博客
[url]http://www.iteye.com/blogs/subjects/kaitao-springmvc[/url]
[url]http://www.iteye.com/blogs/subjects/spring3[/url]