当前位置:七道奇文章资讯编程技术Java编程
日期:2011-03-22 16:13:00  来源:本站整理

操纵Spring 2.5基于注解驱动的Spring MVC[Java编程]

赞助商链接



  本文“操纵Spring 2.5基于注解驱动的Spring MVC[Java编程]”是由七道奇为您精心收集,来源于网络转载,文章版权归文章作者所有,本站不对其观点以及内容做任何评价,请读者自行判断,以下是其具体内容:

概述

继 Spring 2.0 对 Spring MVC 举行庞大进级后,Spring 2.5 又为 Spring MVC 引入了注解驱动功效.目前你无须让 Controller 担当任何接口,无需在 XML 配置文件中定义恳求和 Controller 的映射关系,仅仅利用注解便可以让一个 POJO 具有 Controller 的绝大部份功效 —— Spring MVC 框架的易用性得到了进一步的加强.在框架机动性、易用性和扩大性上,Spring MVC 已经全面超越了别的的 MVC 框架,伴随着 Spring 一路高唱大进,可以预见 Spring MVC 在 MVC 市场上的吸引力将越来越不可顺从.

本文将介绍 Spring 2.5 新增的 Sping MVC 注解功效,报告若何利用注解配置替换传统的基于 XML 的 Spring MVC 配置.

一个简单的基于注解的 Controller

利用太低版本 Spring MVC 的读者都知道:当成立一个 Controller 时,我们需求直接或间接地实现 org.springframework.web.servlet.mvc.Controller 接口.普通情形下,我们是通过担当 SimpleFormController 或 MultiActionController 来定义自己的 Controller 的.在定义 Controller 后,一个重要的事件是在 Spring MVC 的配置文件中通过 HandlerMapping 定义恳求和掌握器的映射关系,以便将二者关联起来.

来看一下基于注解的 Controller 是若何定义做到这一点的,下面是利用注解的 BbtForumController:

清单 1. BbtForumController.java

package com.baobaotao.web;

import com.baobaotao.service.BbtForumService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.ModelAttribute;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;

import java.util.Collection;

@Controller          //<——① 
@RequestMapping("/forum.do")
public class BbtForumController {

  @Autowired
  private BbtForumService bbtForumService;

  @RequestMapping //<——② 
  public String listAllBoard() {
    bbtForumService.getAllBoard();
    System.out.println("call listAllBoard method.");
    return "listBoard";
  }
}

从上面代码中,我们可以看出 BbtForumController 和普通的类并没有辨别,它没有实现任何特别的接口,因而是一个地道的 POJO.让这个 POJO 与众差别的魔棒就是 Spring MVC 的注解!

在 ① 处利用了两个注解,辨别是 @Controller 和 @RequestMapping.在“利用 Spring 2.5 基于注解驱动的 IoC” 这篇文章里,笔者曾经指出过 @Controller、@Service 以及 @Repository 和 @Component 注解的作用是等价的:将一个类成为 Spring 容器的 Bean.由于 Spring MVC 的 Controller 必须事前是一个 Bean,所以 @Controller 注解是不可贫乏的.

真正让 BbtForumController 具有 Spring MVC Controller 功效的是 @RequestMapping 这个注解.@RequestMapping 可以标注在类定义处,将 Controller 和特定恳求关联起来;还可以标注在办法签名处,以便进一步对恳求举行分流.在 ① 处,我们让 BbtForumController 关联“/forum.do”的恳求,而 ② 处,我们具体地指定 listAllBoard() 办法来处理恳求.所以在类声明处标注的 @RequestMapping 相当于让 POJO 实现了 Controller 接口,而在办法定义处的 @RequestMapping 相当于让 POJO 扩大 Spring 预定义的 Controller(如 SimpleFormController 等).

为了让基于注解的 Spring MVC 真正工作起来,需求在 Spring MVC 对应的 xxx-servlet.xml 配置文件中做一些手脚.在此之前,还是先来看一下 web.xml 的配置吧:


  以上是“操纵Spring 2.5基于注解驱动的Spring MVC[Java编程]”的内容,如果你对以上该文章内容感兴趣,你可以看看七道奇为您推荐以下文章:

  • 操纵Spring Framework筹划和开辟SCA组件,第1部份 - 三剑客
  • 操纵Spring Framework筹划和开辟SCA组件,第2部份
  • 操纵SpringSide 3.1.4.3开辟Web项目的全历程(上)
  • <b>操纵SpringSide 3.1.4.3开辟Web项目的全历程(中)</b>
  • 操纵SpringSide 3.1.4.3开辟Web项目的全历程(下)
  • <b>操纵Spring更好地处理Struts行动</b>
  • 操纵Spring JMS轻松实现异步消息传送
  • <b>若何操纵spring的autowire为servlet注入Bean</b>
  • J2EE中操纵Spring AOP框架和EJB组件
  • 操纵Spring 2.5基于注解驱动的Spring MVC
  • 操纵Spring 2.5 TestContext测试框架
  • 操纵Spring 2.5注释驱动的IoC功效
  • 本文地址: 与您的QQ/BBS好友分享!
    • 好的评价 如果您觉得此文章好,就请您
        0%(0)
    • 差的评价 如果您觉得此文章差,就请您
        0%(0)

    文章评论评论内容只代表网友观点,与本站立场无关!

       评论摘要(共 0 条,得分 0 分,平均 0 分) 查看完整评论
    Copyright © 2020-2022 www.xiamiku.com. All Rights Reserved .