资讯专栏INFORMATION COLUMN

3.2、组合的@RequestMapping变种

Charlie_Jade / 2266人阅读

摘要:带有模板测试点击下面的和超链接,会正常进行页面跳转。输入用户名和密码,并点击登录按钮后,也会进行跳转,但是控制台会像下面那样打印出输入的用户名密码我输入的用户名和密码都是

    Spring 4.3 中引进了下面的注解 @RequestMapping 在方法层级的变种,来帮助简化常用 HTTP 方法的映射,并更好地表达被注解的方法的语义。比如,@GetMapping可以读作 GET @RequestMapping。

@GetMapping

@PostMapping

@PutMapping

@DeleteMapping

@PatchMapping

    下面是一个示例:

1)编写 JSP 页面

    首先在上一篇中的项目中的 helloWorld.jsp 中追加下面的代码

    

Composed RequestMapping

Test1
Test2
Username:
Password:
2)定义一个控制器

    在代码中,添加下面的控制器:

package com.techmap.examples.controllers;

import java.text.SimpleDateFormat;
import java.util.Date;

import org.springframework.format.annotation.DateTimeFormat;
import org.springframework.format.annotation.DateTimeFormat.ISO;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;

/**
 * 组合的 @RequestMapping。
 */
@Controller
@RequestMapping("/composed")
public class ComposedController
{
    
    @GetMapping("/get")
    public String get()
    {
        return "/examples/targets/test1";
    }
    
    /**
     * 带有 URI 模板
     */
    @GetMapping(path = "/{day}")
    public String getForDay(@PathVariable @DateTimeFormat(iso = ISO.DATE) Date day, Model model)
    {
        System.out.println("--> " + new SimpleDateFormat("yyyy-MM-dd").format(day));
        
        return "/examples/targets/test2";
    }
    
    @PostMapping("/post")
    public String post(
            @RequestParam(value="username") String user, 
            @RequestParam(value="password") String pass
            )
    {
        System.out.println("--> Username: " + user);
        System.out.println("--> Password: " + pass);
        
        return "/examples/targets/test3";
    }
}
3)测试

    点击 Composed RequestMapping 下面的 test1 和 test2 超链接,会正常进行页面跳转。输入用户名和密码,并点击“登录”按钮后,也会进行跳转,但是控制台会像下面那样打印出输入的用户名密码(我输入的用户名和密码都是inspector):

......
DEBUG 2016-09-07 08:31:24,923 Returning cached instance of singleton bean "composedController"  (AbstractBeanFactory.java:249) 
--> Username: inspector
--> Password: inspector
DEBUG 2016-09-07 ......

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/65121.html

相关文章

  • 3.4、路径模式与后缀匹配

    摘要:路径模式比较当一个匹配多个模式时,会进行一次分类来寻找最佳匹配。拥有数量最少的变量和通配符的匹配的路径模式被认为是最佳匹配。配置后缀模式匹配为关闭的,或只限于使用显式注册的后缀。     这一部分是对 Spring 5 文档的直接翻译,连接是这个。这一部分的示例不再贴代码,请到这个项目的 mvc 分支下查看,本篇示例的控制器名称是 PathPatternController。 1)路...

    yeooo 评论0 收藏0
  • Spring MVC异步处理简介

    摘要:异步处理简介地址相关系列文章异步处理详解分析本文讲到的所有特性皆是基于的,不是基于的。用于异步返回结果,使用自己的,使用负责处理它。配置执行异步操作需要用到,这个可以在用方法来提供相关文档。 Spring MVC异步处理简介 Github地址 相关系列文章: Servlet 3.0 异步处理详解 Servlet 3.1 Async IO分析 本文讲到的所有特性皆是基于Servlet...

    Sike 评论0 收藏0
  • Spring常用Annotation简介

    摘要:在中使用该注解,表示按注入。显示声明依赖,根据来默认注入是必须的。此注解使用在上,声明此类是一个服务类,执行业务逻辑计算调用内部等。此类使用在上声明此类用于访问数据库,一般作为的角色。此外,之后引入了一系列的变种。负责将对象转换为请求。 Annotation介绍 Spring项目开发常用Annotation Java @Resource Resource 注释标记应用程序所需的资源。...

    MockingBird 评论0 收藏0
  • 两数之和问题各变种多解法小结

    摘要:两数之和问题各变种多解法小结声明文章均为本人技术笔记,转载请注明出处两数之和等于题目大意给出未排序数组和指定目标,返回数组中两数之和的组合元素下标要求下标从开始,而且,保证题目中有且只有个可行解解法暴力时间复杂度求解解题思路暴力二重循环求解 两数之和问题各变种多解法小结 声明 文章均为本人技术笔记,转载请注明出处:[1] https://segmentfault.com/u/yzwal...

    lentoo 评论0 收藏0
  • 以❤️简单易懂❤️语言带你搞懂有监督学习算法【附Python代码详解】机器学习系列之KNN篇

    必须要看的前言 本文风格:以❤️简单易懂❤️的语言带你彻底搞懂KNN,了解什么是有监督学习算法。 认真看完这篇文章,彻底了解KNN、了解监督学习算法绝对是一样很简单的事情。 注:本篇文章非常详细,同时我也附加了Python代码,欢迎收藏后慢慢阅读。 目录 必须要看的前言监督学习算法KNN/K近邻算法1 算法原理1.1 实现过程1.2 距离的确定 2 算法的优缺点3 算法的变种3.1 变...

    MoAir 评论0 收藏0

发表评论

0条评论

Charlie_Jade

|高级讲师

TA的文章

阅读更多
最新活动
阅读需要支付1元查看
<