犀利的蛙 2013-04-26 10:31 采纳率: 0%
浏览 285
已采纳

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/

 

  • 写回答

1条回答 默认 最新

  • jinnianshilongnian 2013-04-26 11:48
    关注

    问题一:我返回的是 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]

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥15 conda 命令用不了 conda就是用不了 一用就显示core dumped
  • ¥100 基于delphi10.2几个功能的程序demo
  • ¥15 TinyMCE如何去掉自动弹出的“链接…”工具?
  • ¥15 微信支付转账凭证,如何解决
  • ¥15 在win10下使用指纹登录时,界面上的文字最后一个字产生换行现象
  • ¥20 使用AT89C51微控制器和MAX7219驱动器来实现0到99秒的秒表计数,有开始和暂停以及复位功能,下面有仿真图,请根据仿真图来设计c语言程序
  • ¥15 51单片机 双路ad同步采样
  • ¥15 使用xdocreport 生成word
  • ¥15 请教怎么用MATLAB求坐标
  • ¥15 gradle整合es,在创建索引时报错