基于SpringMVC中的路径参数和URL参数实例

1、SpringMVC中的路径参数就是指在路径中添加参数,用于实现伪静态是很好的。

2、路径参数实现方式(一个Controller方法)

@RequestMapping(value="/page/{name}/{age}",method=RequestMethod.GET)
public String getName(ModelMap map,@PathVariable("name") String name,@PathVariable("age") int age)
{
  map.addAttribute("name",name);
  map.addAttribute("age",age);
  return "name";
}

3、创建name.jsp文件

<%@page pageEncoding="UTF-8"%>
<html>
<head>
  <meta charset="UTF-8">
  <title>test</title>
</head>
<body>
<div>
  名字:${name}<br/>
  年龄:${age}
</div>
</body>
</html>

4、在浏览器请求这个controller

http://localhost:8080/page/xiaoming/18

需要注意的是,我这里使用的编辑器是IDEA旗舰版

5、在controller中接受请求参数的实现(controller)

@RequestMapping(value="/result",method=RequestMethod.GET)
public String resultParam(ModelMap map,@RequestParam String name,@RequestParam int age)
{
  map.addAttribute("name",name);
  map.addAttribute("age",age);
  return "result";
}

6、创建result.jsp文件

<%@page pageEncoding="UTF-8">
<html>
<head>
  <meta charset="UTF-8">
  <title>测试</title>
</head>
<body>
名字:${name}<br/>
年龄:${age}
</body>
</html>

6、在浏览器中请求这个controller

http://localhost:8080/result?name=xiaoming&age=20

补充:spring mvc 之可选路径参数

在spring mvc中,注解@PathVariable可以获得路径参数,但如果我想让路径参数可选呢?

  @GetMapping({"/get/{offset}/{count}","/get/{offset}","/get/{offset}","/get"})
  public void getGoods(@PathVariable(required = false) Integer offset,@PathVariable(required = false) Integer count){
    System.out.println("offset:"+offset+"\ncount:"+count+"\n");
  }

此时在这个例子中,offset和count都是可选的了,但是count存在时offset必须存在。

以上为个人经验,希望能给大家一个参考,也希望大家多多支持我们。如有错误或未考虑完全的地方,望不吝赐教。

(0)

相关推荐

  • Spring MVC的参数绑定和返回值问题

    一:参数绑定 参数绑定过程 在springMVC中,从前端(页面:jsp-)发送请求到后端(controller-),会包含一些数据,数据是如何到达Controller,这个过程就是参数绑定过程 1.默认支持的类型 SpringMVC有支持的默认的参数类型,在方法上给出默认的参数类型的声明就可以直接使用 HttpServletRequest request:通过request对象来获取请求的信息 HttpServletResponse response:通过response来处理响应信息 Htt

  • 为spring get请求添加自定义的参数处理操作(如下划线转驼峰)

    1.生成自己的注解(为了确定在哪些位置使用) /** * 关闭patch delete的model处理,否则会报错 */ @Target({ElementType.METHOD}) @Retention(RetentionPolicy.RUNTIME) @Documented public @interface AliasProcessor { } /** * 处理Get 请求参数的驼峰问题 * @author lw */ @Target(ElementType.FIELD) @Retentio

  • 详解Spring Boot Web项目之参数绑定

    一.@RequestParam 这个注解用来绑定单个请求数据,既可以是url中的参数,也可以是表单提交的参数和上传的文件 它有三个属性,value用于设置参数名,defaultValue用于对参数设置默认值,required为true时,如果参数为空,会报错 好,下面展示具体例子: 首先是vm: <h1>param1:${param1}</h1> <h1>param2:${param2}</h1> 好吧,就为了展示两个参数 第一种情况: @RequestMa

  • 基于SpringMVC中的路径参数和URL参数实例

    1.SpringMVC中的路径参数就是指在路径中添加参数,用于实现伪静态是很好的. 2.路径参数实现方式(一个Controller方法) @RequestMapping(value="/page/{name}/{age}",method=RequestMethod.GET) public String getName(ModelMap map,@PathVariable("name") String name,@PathVariable("age"

  • 基于express中路由规则及获取请求参数的方法

    express中常见的路由规则 主要使用的路由规则是get和post两种,即 var express = require('express'); var app = express(); app.get(); // get和post两种请求方式 app.post(); app.get()和app.post()的第一个参数为请求路径,第二个参数为处理请求的回调函数:回调函数有两个参数,分别为req和res,代表请求信息和响应信息. 获取请求路径和请求体中的各种参数 路径请求及对应获取请求路径的形式

  • spring boot中controller的使用及url参数的获取方法

    类上加上@RequestMapping其访问的地址就是类上的加上方法上的菜能访问到该方法,例如上图的地址就是/hello/say @RequestMapping(value = "/hello",method = RequestMethod.GET) 和@GetMapping(value = "/hello")是等同的 这样就能获取url参数的值了,其结果如下 总结 以上所述是小编给大家介绍的spring boot中controller的使用及url参数的获取方法,

  • JSP中js传递和解析URL参数以及中文转码和解码问题

    1.传递参数: 复制代码 代码如下: var pmt = 'sensor='+ encodeURI(encodeURI(sensor))+'&device='+encodeURI(encodeURI(device))+'&instrument='; pmt += encodeURI(encodeURI(instrument))+'&n='+n+'&addDate='+addDate; top.location.href = 'jsp/print/diagnosticAnaP

  • node.js中path路径模块的使用方法实例分析

    本文实例讲述了node.js中path路径模块的使用方法.分享给大家供大家参考,具体如下: path模块是node.js中处理路径的核心模块.可以很方便的处理关于文件路径的问题. join() 将多个参数值合并成一个路径 const path = require('path'); console.log(path.join('./a', 'b', 'c')); basename() 获取路径中的文件名 const path = require('path'); //获取文件名,包含扩展名 con

  • springmvc中进行数据保存以及日期参数的保存过程解析

    1.在Controller类中接受传入的日期类型的参数时 <form action="user/todate.do" method="post"> 日期:<input type="text" name="date"/><br /> <input type="submit" value="查看" /> </form> @Reque

  • js修改地址栏URL参数解决url参数问题

    现在做网页,经常会碰到处理地址栏参数的问题,但一直是凭感觉做,之后漏洞百出也不知道从哪改起,因此,就专门做了一个修改地址栏参数的方法,这一下,就再也不用愁啦,哈哈! 以下就是我编的方法,使用很简单的哦: 复制代码 代码如下: function changeURLPar(destiny, par, par_value) { var pattern = par+'=([^&]*)'; var replaceText = par+'='+par_value; if (destiny.match(pat

  • SpringMVC中参数绑定问题实例详解

    目录 前言 1. 参数绑定的过程 2. 默认支持的类型 3. 简单类型的绑定 4. pojo类型的绑定 4.1 普通pojo类型 4.2. 包装的pojo类型 5. 集合类型的绑定 5.1 数组的绑定 5.2 List的绑定 5.2 Map的绑定 总结 前言 众所周知,springmvc是用来处理页面的一些请求,然后将数据再通过视图返回给用户的,前面的几篇博文中使用的都是静态数据,为了能快速入门springmvc,在这一篇博文中,我将总结一下springmvc中如何接收前台页面的参数,即spri

  • Java截取url参数的方法

    废话少说,直奔关键代码. 具体代码如下所示: /** * 去掉url中的路径,留下请求参数部分 * @param strURL url地址 * @return url请求参数部分 * @author lzf */ private static String TruncateUrlPage(String strURL){ String strAllParam=null; String[] arrSplit=null; strURL=strURL.trim().toLowerCase(); arrS

  • SpringMVC中的拦截器详解及代码示例

    本文研究的主要是SpringMVC中的拦截器的介绍及实例代码,配置等内容,具体如下. Springmvc的处理器拦截器类似于Servlet 开发中的过滤器Filter,用于对处理器进行预处理和后处理.本文主要总结一下springmvc中拦截器是如何定义的,以及测试拦截器的执行情况和使用方法. 1. springmvc拦截器的定义和配置 1.1 springmvc拦截器的定义 在springmvc中,定义拦截器要实现HandlerInterceptor接口,并实现该接口中提供的三个方法,如下: /

随机推荐