码迷,mamicode.com
首页 > 编程语言 > 详细

springMVC基于注解的控制器

时间:2015-11-08 14:31:47      阅读:515      评论:0      收藏:0      [点我收藏+]

标签:

springMVC基于注解的控制器的优点有两个:

1、控制器可以处理多个动作,这就允许将相关操作写在一个类中。
2、控制器的请求映射不需要存储在配置文件中。使用requestMapping注释类型,可以对一个方法进行请求处理。
 
接下来介绍两个最重要的注释类型:
一、controller注释类型
这种注释类型用于指示Spring类的实例是一个实例;
import org.springframework.stereotype;
public class CustemerController{
    //methods
}

 

Spring 使用扫描机制来找到应用程序中所有基于注解的控制器类;
1、配置spring-context
<beans
...
xmlns:context="http://www.springframework.org/schema/context"
...
>

 

2、配置<component-scan/>
假设所有的控制器类都在com.example.controller及其子包中
<context:component-scan base-package="com.example.controller"/>
 
二、RequestMapping注解类型
1、为每个动作开发相应的处理方法。使用org.springframework.web.bind.annotation.RequestMapping注解类型映射URI和方法;
RequestMapping映射了一个请求和一种方法。可以使用@RequestMapping注解一种方法或类。
看下面例子:
@Controller
public class CustemerController{
    @RequestMapping(value = "/customer_input")
    public String inputCustemer(){
        //do something 
        return "CustemerForm";
}
}

 

value 属性就是将URI映射到方法。
value属性是默认的属性,如果只有一个属性,则可省略属性名称;
@RequestMapping("/customer_input")
超过一个属性,必须写value属性名称;
 
除了value属性,还有其他属性,如method属性用来指示该方法处理哪些HTTP方法。
@RequestMapping(value = "/customer_input",method={RequestMethod.POST,RequestMethod.PUT})
或者只有一个HTTP方法值,则使用
@RequestMapping(value = "/customer_input",method=RequestMethod.POST)
 
RequestMapping注释类型也可用来注释一个控制类
@Controller
@RequestMapping(value = "/customer_input")
 public class inputCustemer(){
                           
@RequestMapping(value = "/delete",method={RequestMethod.POST,RequestMethod.PUT})
pulic String deleteCustemer(){
        //do something 
        return "CustemerForm";
}
}

 

 
2、请求处理方法
每个请求处理方法可以有多个不同类型的参数,记忆一个多钟类型的返回结果。
传递参数的方式:
@RequestMapping(value = "/delete",method={RequestMethod.POST,RequestMethod.PUT})
pulic String deleteCustemer(HttpSession session){
        //do something 
        return "CustemerForm";//指向了视图(页面)的名称
}

 

参数类型:
 
请求处理方法的返回类型:
ModelAndView
Model
Map
View()
void
代表逻辑视图名的String(就是上面例子中请求处理方法返回的String类型)
callable
等等
 
 
 

springMVC基于注解的控制器

标签:

原文地址:http://www.cnblogs.com/sdgf/p/4946901.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!