一、SpringMVC之控制器及控制器方法

一、SpringMVC之控制器及控制器方法

二、SpringMVC的控制器方法

1@Controller

声明此类为控制器类,并交给spring容器管理
控制器: 处理请求的类
控制方法:处理请求的方法

2、 @RequestMapping

@RequestMapping:声明控制器方法,即配置url地址和方法的映射关系
@RequestMapping的属性:

  • value:配置url地址
  • method : 当前方法可以接收的请求类型,值为post时,当前请求只接受post类型的请求,如果请求方式不匹配:抛出异常,值为get类似。
  • params : 约束请求参数,接收一个数组

       1)值为 username : 请求此方法,必须添加username参数
       2)值为!username: 请求此方法,不能携带username参数
       3)值为username=zhangsa  : 请求此方法,必须携带username的参数,参数的取值必须为张三 (精确匹配字符穿)
    

@RequestMapping配置位置:可以配置到类上也可以配置到方法上
* 配置到类上,代表此类中的所有请求地址的父地址
* 配置到方法上,代表请求地址
请求完整地址:localhost:8080/project(项目名)/类上地址/方法上的地址


    /**
     *  @RequestMapping :
     *      配置url和处理方法(控制方法)的映射关系
     *      value:配置url地址
     *  * 可以配置到类上也可以配置到方法上
     *      配置到类上,代表此类中的所有请求地址的父地址
     *      配置到方法上,代表请求地址
     *      请求地址:localhost:8080/project/类上地址/方法上的地址
     *          即   localhost:8080/project/user/hello
     *  
     */
@Controller
@RequestMapping("/user")
public class HelloController {  
    @RequestMapping(value="/hello")
    public String sayHello() {
        System.out.println("hello spring mvc 哈哈哈");
        return "success";  //WEB-INF/jsps/success.jsp
    }

}

关于@RequestMapping的参数

/**
 * 处理请求的类:控制器
 * 处理请求的方法:控制方法
 *      @RequestMapping:配置到类上, 一般用于区分操作模块
 */
@Controller
@RequestMapping("/user")
public class UserController {

    @RequestMapping(value="/save")
    public String saveUser() {
        System.out.println("保存用户");
        return "success";  ///WEB-INF/jsps/success.jsp
    }

    /**
     * method : 当前方法可以接收的请求类型
     *          post:当前这个方法只能接收post提交
     *                                如果请求方式不匹配:抛出异常
     */
    @RequestMapping(value="/update",method=RequestMethod.GET)
    public String updateUser() {
        System.out.println("更新用户");
        return "success";  ///WEB-INF/jsps/success.jsp
    }

    /**
     * params : 约束请求参数
     *      username : 请求此方法,必须添加username参数
     *      !username: 请求此方法,不能携带username参数
     *      username=zhangsa  : 请求此方法,必须携带username的参数,参数的取值必须为张三 (精确匹配字符穿)
     */
    @RequestMapping(value="/delete",params= {"username=zhangsa"})
    public String deleteUser() {
        System.out.println("更新用户");
        return "success";  ///WEB-INF/jsps/success.jsp
    }

}
  • 1
    点赞
  • 20
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值