iis服务器助手广告广告
返回顶部
首页 > 资讯 > 后端开发 > Python >SpringBoot多种场景传参模式
  • 485
分享到

SpringBoot多种场景传参模式

2024-04-02 19:04:59 485人浏览 泡泡鱼

Python 官方文档:入门教程 => 点击学习

摘要

目录WEB技术 多种传参方式 传统参数传递 复杂对象映射 数组和集合类型参数 Restful风格传参 web技术 我们知道常见的web技术也就是网站开发,分为静态网站,和动态网站,

web技术

我们知道常见的web技术也就是网站开发,分为静态网站,和动态网站,动态网站技术常见的有三种,分别是 jsp JAVA WEB,asp C# web,PHP web但是它们对应请求request,响应response 都是一样的我们用java web开发动态网站用的mvc框架就是,springMVC,当然我们现在用的是SpringBoot 它只是对spirng全家桶的一个整合框架,他本质不是一个新的框架,内部还是spirng+springmvc

多种传参方式

传统参数传递

我们知道controller方法中会帮我注入httpservletRequest对象,我们可以通过
request.getParameter("参数名")来直接获取参数,


@RequestMapping("/test01")
public ModelAndView test01(HttpServletRequest request){
      String username = request.getParameter("username");
      String passWord = request.getParameter("password");

      System.out.println(username);
      System.out.println(password);
      return null;
}

简单类型参数映射

  • 如果请求参数和Controller方法的形参同名,可以直接接收
  • 如果请求参数和Controller方法的形参不同名,可以使用@RequestParam注解贴在形参前,设置对应的参数名称

注意这里只能是基本数据类型比如string,int,long,boolean等类型


@RequestMapping("/test02_1")
public ModelAndView test02_1(String username,String password){
      System.out.println(username);
      System.out.println(password);
      return null;
}
@RequestMapping("/test02_2")
public ModelAndView test02_2(@RequestParam("username") String name,@RequestParam(value = "password",defaultValue = "1234987") String pwd){
      //使用了@RequestParam的参数不能传空值
      // required:表示是否必须要传值
      // defaultValue:当没有该请求参数时,SpringMVC给请求参数的默认值
      System.out.println(name);
      System.out.println(pwd);
      return null;
}

复杂对象映射

当然在实际项目中,我们会有很多个参数,一般超过两个参数我们就要封装成对象,通过对象传参数,不然这么一个一个写会麻烦,代码冗余,不美观,不能复用

此时能够自动把参数封装到形参的对象属性上:

  • 请求参数必须和对象的属性同名
  • 此时对象会直接放入request作用域中,名称为类型首字母小写
  • @ModelAttribute设置请求参数绑定到对象中并传到视图页面的key值

@RequestMapping("/test03")

public ModelAndView test03(@ModelAttribute("stu") Student student){
    
      System.out.println(student);
      ModelAndView mv = new ModelAndView();
      mv.setViewName("test2");
      return mv;
}

如果需要body里面JSON传参数需要在形参前面加上@RequestBody 会自动完成映射


 @PostMapping("/reGISter")
    public Result bodyParams(@RequestBody Users users) {
        return ResultResponse.success(users);
    }

数组和集合类型参数

当前台页面传来的参数是参数名相同,参数值不同的多个参数时,可以直接封装到方法的数组类型的形参中
比如批量删除时传来的参数


    
    @DeleteMapping("/del")
    public Result listParams(String[] ids) {
        return ResultResponse.success(ids);
    }

Restful风格传参

Restful是一种软件架构风格,严格上说是一种编码风格,其充分利用 HTTP 协议本身语义从而提供了一组设计原则和约束条件。

主要用于客户端和服务器交互类的软件,该风格设计的软件可以更简洁,更有层次,更易于实现缓存等机制。 在后台,RequestMapping标签后,可以用{参数名}方式传参,同时需要在形参前加注解@PathVarible


@RequestMapping("/delete/{id}")
public ModelAndView test4(@PathVariable("id")Long id){
    System.out.println("delete");
    System.out.println(id);
    return null;
}

到此这篇关于SpringBoot多种场景传参模式的文章就介绍到这了,更多相关SpringBoot 传参模式内容请搜索编程网以前的文章或继续浏览下面的相关文章希望大家以后多多支持编程网!

--结束END--

本文标题: SpringBoot多种场景传参模式

本文链接: https://www.lsjlt.com/news/131412.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • SpringBoot多种场景传参模式
    目录web技术 多种传参方式 传统参数传递 复杂对象映射 数组和集合类型参数 Restful风格传参 web技术 我们知道常见的web技术也就是网站开发,分为静态网站,和动态网站,...
    99+
    2024-04-02
  • SpringBoot Aop 详解和多种使用场景解析
    前言 aop面向切面编程,是编程中一个很重要的思想本篇文章主要介绍的是SpringBoot切面Aop的使用和案例 什么是aop AOP(Aspect OrientedProgramm...
    99+
    2024-04-02
  • 浅谈spring使用策略模式实现多种场景登录方式
     @Autowired注解可以帮我们自动注入我们想要的 Bean。 如果只是简单使用@Autowired会遇到spring IOC容器中一个接口有多个实现的情况,spring无法识别...
    99+
    2024-04-02
  • spring使用策略模式如何实现多种场景登录方式
    这篇文章给大家介绍spring使用策略模式如何实现多种场景登录方式,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。 @Autowired注解可以帮我们自动注入我们想要的 Bean。如果只是简单使用@Autowi...
    99+
    2023-06-22
  • RabbitMQ 的七种队列模式和应用场景
    目录七种模式介绍与应用场景 简单模式(Hello World)工作队列模式(Work queues)订阅模式(Publish/Subscribe)路由模式(Routing)...
    99+
    2024-04-02
  • SpringMVC如何接收参数各种场景
    目录表单提交表单提交二后台代码接收方式一后台代码接收方式二表单提交 此处的表单时 -使用JSON.stringify()函数将数组转换成json类型提交后台,后台使用@Request...
    99+
    2024-04-02
  • Vue实现组件间通信的几种方式(多种场景)
    目录1、Props 父 >>> 子  (Props)子 >>> 父 ($emit)2、Bus事件总线3、V...
    99+
    2024-04-02
  • SpringMVC怎么接收参数各种场景
    这篇文章主要讲解了“SpringMVC怎么接收参数各种场景”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“SpringMVC怎么接收参数各种场景”吧!表单提交此处的表单时 -使用JSON.st...
    99+
    2023-06-25
  • 详解Mybatis多参数传递入参四种处理方式
    1.利用参数出现的顺序 利用mapper.xml <select id="MutiParameter" resultType="com.jt.mybatis.e...
    99+
    2024-04-02
  • CSS的多种背景及使用场景和技巧
    这篇文章主要介绍CSS的多种背景及使用场景和技巧,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!CSS background是最常用的CSS属性之一。然而,并不是所有开发人员都知道使用多种背景。这段时间都在关注使用多种...
    99+
    2023-06-08
  • RabbitMQ中七种模式介绍与应用场景的示例分析
    这篇文章给大家分享的是有关RabbitMQ中七种模式介绍与应用场景的示例分析的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。七种模式介绍与应用场景 简单模式(Hello World)做最简单的事情,一个生...
    99+
    2023-06-15
  • Prototype模式的适用场景是什么
    本篇内容介绍了“Prototype模式的适用场景是什么”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!Prototype模式的适用场景为:当一...
    99+
    2023-06-19
  • SpringBoot用实体接收Get请求传递过来的多个参数的两种方式
    目录一、Controller层不带任何注解接收参数二、Controller层通过@ModelAttribute接收参数最近项目中Controller层查询接口需要通过实体来接受前端传...
    99+
    2024-04-02
  • PHP8中的函数:str_begins_with()的多种使用场景
    随着PHP编程语言的不断发展,其语法和函数库也在不断地更新和完善。PHP8中新增加的函数str_begins_with()提供了一种新的方式来判断字符串是否以指定的前缀开头。本文将介绍str_begins_with()函数的多种使用场景,帮...
    99+
    2023-05-16
    函数 PHP str_begins_with()
  • css 多种背景的使用场景和技巧、优点介绍
    本篇内容主要讲解“css 多种背景的使用场景和技巧、优点介绍”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“css 多种背景的使用场景和技巧、优点介绍”吧!【 】CSS background是最常...
    99+
    2023-06-07
  • React传递参数的几种方式
    目录父子组件之间传递参数路由传参 状态提升context引入redux父子组件之间传递参数 父组件往子组件传值,直接用this.props就可以实现 在父组件中,给需要传递...
    99+
    2024-04-02
  • Golang语言的多种变量声明方式与使用场景详解
    目录01介绍02变量声明方式标准声明变量不显式赋初始值声明变量省略类型声明变量短变量声明显式类型转换变量列表声明变量声明块03使用场景包级变量全局变量局部变量04注意事项:05总结0...
    99+
    2024-04-02
  • springboot接收参数的几种方式
    1、四种传参方式 1.1、params 传参格式:?号传参,在地址栏上加参数 http://localhost:8080参数名=值&参数名=值 1.2、body 传参格式:请求体传参 http://l...
    99+
    2023-09-17
    spring boot java spring
  • PHP设计模式大全与应用场景
    面向对象编程的基本原则: 单一职责:一个类,只需要做好一件事情。 开放封闭:一个类,应该是可扩展的,而不可修改的。 依赖倒置:一个类,不应该强依赖另外一个类。每个类对于另外一个类都是可替换的。 配置化:尽可能的使用配置,而不是硬...
    99+
    2023-10-26
    设计模式 PHP设计模式
  • PHP8中的新函数:array_key_first()的多种应用场景
    PHP 8是PHP语言的最新版本,也是PHP历史上的一个重要里程碑。PHP 8引入了许多新的特性和改进,其中一个最受欢迎的新函数是array_key_first()。这个函数的目的是返回数组中第一个键(key),其返回值的数据类型可以是整数...
    99+
    2023-05-16
    应用场景 PHP array_key_first()
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作