千家信息网

如何使用@PathVariable

发表于:2025-01-21 作者:千家信息网编辑
千家信息网最后更新 2025年01月21日,本篇内容主要讲解"如何使用@PathVariable",感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习"如何使用@PathVariable"吧!动态参数使用@P
千家信息网最后更新 2025年01月21日如何使用@PathVariable

本篇内容主要讲解"如何使用@PathVariable",感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习"如何使用@PathVariable"吧!

动态参数使用@PathVariable解析

现在有如下的一条超链接

 "                                                 target="_blank">${article.title}

这条超链接的特点就是在URL路径中添加了EL表达式解析出来的id值。

因此,在SpringMVC的Controller层中,需要解析它,使用@PathVariable("articleId") Long articleId 来解析。

@PathVariable是专门用来解析URL请求中的动态参数。

在Controller层的代码如下

public static final String URL_ARTICLE_READ = "article/readArticle/{articleId}";    /**     * 去文章详情页面     * 根据URL路径中指定的文章ID号,去获取制定文章的内容     *     * @param articleId 指定的文章的ID号     * @return          获取此文章的数据,并去文章详情页面     */    @RequestMapping(value = {URL_ARTICLE_READ} )    public ModelAndView readArticle(@PathVariable("articleId") Long articleId){        LOGGER.info("enter article detail page, articleId = {}",articleId);        final Article article = articleService.getArticleById(articleId);    ...    }

这样,页面上的${article.id}的值,就最终映射到了Java中的Long articleId 上了。

获取路径中的参数值@PathVariable中的value

本期讲的是@PathVariable注解的具体使用。与@RequestParam的区别

  • @PathVariable获取URI地址中的参数值,需要结合URI模板映射

  • @PathVariable会将数据放到模型中,界面可以通过el表达式获取(即浏览器上面可以显示出来),但是@RequestParam不能通过界面获得

1.@PathVariable String name

加上@PathVariable就能够获取到浏览器中rul的参数值

@RequestMapping("/get_param")@Controllerpublic class GetParamController {        @RequestMapping("/test6/{name}")          public String test6(@PathVariable String name) {                System.out.println("GetParamController test6()...");                System.out.println("name="+name);                return "test";//跳转到test.jsp                /*                  * ../test6/tom   结果:name=null 就要在参数里面加上@PathVariable  结果就变为:name=tom                 * ../test6/tom?name=kk  结果:name=tom  拿到的是URI路径里面的值跟后面的没有任何关系                 * */        }}

2.@PathVariable("username") String name

当浏览器中的是username,而后台要接收的是name

就会报错,由于username和name不匹配

此时要加上value值,@PathVariable("username")

@RequestMapping("/get_param")@Controllerpublic class GetParamController {        @RequestMapping("/test7/{username}")  //username与下面的name不一致,报错,就需要加上@PathVariable("username")        public String test7(@PathVariable("username") String name) {//name和username不一致时,用@PathVariable("username")                System.out.println("GetParamController test7()...");                System.out.println("name="+name);                return "test";//跳转到test.jsp        }}

此时就不会报错了

到此,相信大家对"如何使用@PathVariable"有了更深的了解,不妨来实际操作一番吧!这里是网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!

参数 文章 路径 内容 浏览器 结果 页面 浏览 一致 动态 数据 界面 表达式 详情 链接 学习 实用 更深 中指 代码 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 利亚方舟影楼管理系统服务器配置 安卓工业软件开发 江西海致网络技术公司 加强网络安全重要性 宜兴多功能软件开发服务电话 曲阜环保网络安全 新乡名韵网络技术 163网易企业邮箱收件服务器 怎样拿到服务器远程管理密码 新乡app软件开发哪家设计好 金融系统网络安全及防控报告 微型计算机中使用的数据库属于 数据库常见的字符型 农行软件开发中心初试都考啥 专业技术网络安全继续教育 电子信息工程含有软件开发吗 对网络技术的利弊_进行分析 上海赞迪网络技术 学生营养信息数据库表格 文献检索网络安全下载量最高 怎么自学网络技术 广州无忧网络技术有限公司 陕西镁好互联网科技有限公司 上海推广网络技术管理方法 广电电信网络安全机房规范标准 黑客文化与网络安全有用吗 广东agv软件开发 武汉网络安全中心孵化器 dnf正在连接服务器是什么意思 服务器虚拟化开题报告
0