Spring入门学习手册 6:Spring MVC基础中的基础

栏目: Java · 发布时间: 5年前

内容简介:Spring获取请求参数非常简单,只要用到如果不指定请求代码是下面这样:

Spring获取请求参数非常简单,只要用到 @RequestParam 注解就可以了

如果不指定请求 method 的话,无论是 get 还是 post 参数都可以轻易获取到

代码是下面这样:

package com.learn.springMVCDemo;

import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;

@Controller
public class RequestController {

    @RequestMapping("requestDemo")
    public String doRequest(Model model, @RequestParam(name="info", defaultValue = "some information") String info) {
        model.addAttribute("info", info);
        return "hello";
    }
}
复制代码

在这段代码中 @RequestParam 注解的括号中 name 表示参数名, defaultValue 指明默认的参数值。

GET方法请求这个页面: 访问地址 http://localhost:8080/LearnSpringMVCDemoFirst_war/requestDemo?info=helloWorldFromGETMethod

运行效果:

Spring入门学习手册 6:Spring MVC基础中的基础

POST方法请求这个页面:

访问地址 http://localhost:8080/LearnSpringMVCDemoFirst_war/

提交表单

Spring入门学习手册 6:Spring MVC基础中的基础

运行结果

Spring入门学习手册 6:Spring MVC基础中的基础

二、页面重定向

重定向的时候只要在返回的时候加上 redirect 就可以了:

package com.learn.springMVCDemo;

import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.RequestMapping;

@Controller
public class RedirectController {

    @RequestMapping("redirect")
    public String redirectDemo(Model model) {

        model.addAttribute("message", "redirectInfo");
        //重定向
        return "redirect:/demo";
    }

}
复制代码

上面的代码就是重定向到 /demo 页面了。

访问地址: localhost:8080/LearnSpringMVCDemoFirst_war/redirect

Spring入门学习手册 6:Spring MVC基础中的基础

三、获取URI路径(@PathVariable)

package com.learn.springMVCDemo;


import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.servlet.ModelAndView;

@Controller
public class PathVariableController {

    @RequestMapping("path/{prefix}/{name}/{suffix}")
    public ModelAndView PathDemo(Model model,
                                 @PathVariable(value = "prefix") String prefix,
                                 @PathVariable(value = "name") String name,
                                 @PathVariable(value = "suffix") String suffix) {
        ModelAndView mv = new ModelAndView("hello");
        mv.addObject("message","website URI path");
        model.addAttribute("prefix", prefix);
        model.addAttribute("name", name);
        model.addAttribute("suffix", suffix);
        return mv;
    }


}
复制代码

@RequestMapping 的括号中固定一个以上的路径名称,然后给分固定的路径名称直接加上大括号,在请求映射的方法参数中加上 @PathVariable 注解的参数中,按照先后顺序一一对应就可以获取到路径名称。

运行结果:

Spring入门学习手册 6:Spring MVC基础中的基础

四、不返回视图直接返回字符串

@RequestMapping("ResponseBody")
@ResponseBody
public String RequestBody() {
    return "request body message!!!";
}
复制代码

在请求映射方法前直接加上 @ResponseBody 注解,那么返回的就不是视图,而直接是ResponseBody

运行结果:

Spring入门学习手册 6:Spring MVC基础中的基础
Spring入门学习手册 6:Spring MVC基础中的基础

以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

Mastering Regular Expressions, Second Edition

Mastering Regular Expressions, Second Edition

Jeffrey E F Friedl / O'Reilly Media / 2002-07-15 / USD 39.95

Regular expressions are an extremely powerful tool for manipulating text and data. They have spread like wildfire in recent years, now offered as standard features in Perl, Java, VB.NET and C# (and an......一起来看看 《Mastering Regular Expressions, Second Edition》 这本书的介绍吧!

HTML 压缩/解压工具
HTML 压缩/解压工具

在线压缩/解压 HTML 代码

CSS 压缩/解压工具
CSS 压缩/解压工具

在线压缩/解压 CSS 代码

HEX CMYK 转换工具
HEX CMYK 转换工具

HEX CMYK 互转工具