Spring-mvc的参数传递与常用注解的解答及页面的跳转方式---综合案例

这篇具有很好参考价值的文章主要介绍了Spring-mvc的参数传递与常用注解的解答及页面的跳转方式---综合案例。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

目录

一.slf4j--日志

二.常用注解

       2.1.@RequestMapping

      2.2.@RequestParam

      2.3.@RequestBody

      2.4.@PathVariable

三.参数的传递

3.1 基础类型

3.2 复杂类型

3.3 @RequestParam

3.4  @PathVariable

3.5 @RequestBody

3.6 增删改查 

四.返回值 

          4.1 void 返回值 

 4.2 String 返回值

 4.3 model+String  ​编辑

五.页面跳转 --转发和重定向


一.slf4j--日志

        SLF4J(Simple Logging Facade for Java)是Java应用程序中常用的日志记录框架。日志是记录应用程序运行时产生的事件、错误和信息的一种机制。用日志打印代替sout打印

        使用SLF4J可以带来以下好处:

  1. 统一接口:SLF4J提供了一套简单的、统一的API来进行日志记录,开发人员无需关心具体使用哪个日志实现,只需与SLF4J进行交互即可。

  2. 基于级别的日志记录:SLF4J支持不同的日志级别(如DEBUG、INFO、WARN、ERROR等),可以根据需要设置不同的级别来记录日志。这对于应用程序的调试和故障排查非常有用。

  3. 日志格式化:SLF4J支持灵活的日志格式化选项,可以自定义日志的输出格式,例如添加时间戳、线程信息等。

  4. 运行时动态切换日志实现:SLF4J允许在运行时动态地切换使用的日志实现,这使得应用程序可以灵活地适应不同的部署环境和需求。

二.常用注解

        2.1.@RequestMapping

        @RequestMapping注解是一个用来处理请求地址映射的注解,可用于映射一个请求或一个方法,可以用在类或方法上。

        2.2.@RequestParam

        @RequestParam主要用于将请求参数区域的数据映射到控制层方法的参数上

      2.3.@RequestBody

        @RequestBody主要用来接收前端传递给后端的json字符串中的数据的(即请求体中的数据的

        GET方式无请求体,所以使用@RequestBody接收数据时,前端不能使用GET方式提交数据,而是用POST方式进行提交。在后端的同一个接收方法里,@RequestBody与@RequestParam()可以同时使用,@RequestBody最多只能有一个,而@RequestParam()可以有多个。

      2.4.@PathVariable

        该注解请求URI中的模板变量部分到处理器功能处理方法的方法参数上的绑定。

        即当使用@RequestMapping URI template 样式映射时, 即 someUrl/{paramId}, 这时的paramId可通过 @Pathvariable注解绑定它传过来的值到方法的参数上。

三.参数的传递

        先来在pom.xml配置文件中导入SLF4J的依赖

<log4j2.version>2.9.1</log4j2.version>
<log4j2.disruptor.version>3.2.0</log4j2.disruptor.version>
<slf4j.version>1.7.13</slf4j.version>

<!--4.log日志相关依赖-->

<!-- log4j2日志相关依赖 -->
<!-- log配置:Log4j2 + Slf4j -->
<!-- slf4j核心包-->
<dependency>
	<groupId>org.slf4j</groupId>
	<artifactId>slf4j-api</artifactId>
	<version>${slf4j.version}</version>
</dependency>
<dependency>
	<groupId>org.slf4j</groupId>
	<artifactId>jcl-over-slf4j</artifactId>
	<version>${slf4j.version}</version>
	<scope>runtime</scope>
</dependency>

<!--核心log4j2jar包-->
<dependency>
	<groupId>org.apache.logging.log4j</groupId>
	<artifactId>log4j-api</artifactId>
	<version>${log4j2.version}</version>
</dependency>
<dependency>
	<groupId>org.apache.logging.log4j</groupId>
	<artifactId>log4j-core</artifactId>
	<version>${log4j2.version}</version>
</dependency>
<!--用于与slf4j保持桥接-->
<dependency>
	<groupId>org.apache.logging.log4j</groupId>
	<artifactId>log4j-slf4j-impl</artifactId>
	<version>${log4j2.version}</version>
</dependency>
<!--web工程需要包含log4j-web,非web工程不需要-->
<dependency>
	<groupId>org.apache.logging.log4j</groupId>
	<artifactId>log4j-web</artifactId>
	<version>${log4j2.version}</version>
	<scope>runtime</scope>
</dependency>

<!--需要使用log4j2的AsyncLogger需要包含disruptor-->
<dependency>
	<groupId>com.lmax</groupId>
	<artifactId>disruptor</artifactId>
	<version>${log4j2.disruptor.version}</version>
</dependency>

3.1 基础类型

Spring-mvc的参数传递与常用注解的解答及页面的跳转方式---综合案例,spring,mvc,java,idea,mybatis,intellij-idea

测试结果:

Spring-mvc的参数传递与常用注解的解答及页面的跳转方式---综合案例,spring,mvc,java,idea,mybatis,intellij-idea

Spring-mvc的参数传递与常用注解的解答及页面的跳转方式---综合案例,spring,mvc,java,idea,mybatis,intellij-idea

3.2 复杂类型

Spring-mvc的参数传递与常用注解的解答及页面的跳转方式---综合案例,spring,mvc,java,idea,mybatis,intellij-idea

测试结果:

Spring-mvc的参数传递与常用注解的解答及页面的跳转方式---综合案例,spring,mvc,java,idea,mybatis,intellij-idea

Spring-mvc的参数传递与常用注解的解答及页面的跳转方式---综合案例,spring,mvc,java,idea,mybatis,intellij-idea

3.3 @RequestParam

 

 测试结果:

Spring-mvc的参数传递与常用注解的解答及页面的跳转方式---综合案例,spring,mvc,java,idea,mybatis,intellij-idea

3.4  @PathVariable

 

 测试结果:

Spring-mvc的参数传递与常用注解的解答及页面的跳转方式---综合案例,spring,mvc,java,idea,mybatis,intellij-idea

3.5 @RequestBody

        在使用这个注解的时候我们还需要配置pom.xml文件,导入json的格式

 <jackson.version>2.9.3</jackson.version>
 
 <dependency>
      <groupId>com.fasterxml.jackson.core</groupId>
      <artifactId>jackson-databind</artifactId>
      <version>${jackson.version}</version>
    </dependency>
    <dependency>
      <groupId>com.fasterxml.jackson.core</groupId>
      <artifactId>jackson-core</artifactId>
      <version>${jackson.version}</version>
    </dependency>
    <dependency>
      <groupId>com.fasterxml.jackson.core</groupId>
      <artifactId>jackson-annotations</artifactId>
      <version>${jackson.version}</version>
    </dependency>
 

 这个地方需要借助一个测试软件传参数,我用的是Eolink

Spring-mvc的参数传递与常用注解的解答及页面的跳转方式---综合案例,spring,mvc,java,idea,mybatis,intellij-idea

 

Spring-mvc的参数传递与常用注解的解答及页面的跳转方式---综合案例,spring,mvc,java,idea,mybatis,intellij-idea

3.6 增删改查 

 @RequestMapping=@PostMapping+@GetMapping+@DeleteMapping+@PutMapping

    @PutMapping  //修改
    public String test2(){
        log.info("PutMapping修改");
        return "index";
    }

    @DeleteMapping //删除
    public String test3(){
        log.info("DeleteMapping删除");
        return "index";
    }

    @GetMapping  //查询
    public String test4(){
        log.info("GetMapping查询");
        return "index";
    }

    @PostMapping  //新增
    public String test5(){
        log.info("PostMapping新增");
        return "index";
    }

-----既然RequestMapping可以代替所有为什么不用它??
-----因为RequestMapping不安全,并且不具备标识意义

 如果没有选择请求方式那么,就会选择get方式,调用查询的方法

Spring-mvc的参数传递与常用注解的解答及页面的跳转方式---综合案例,spring,mvc,java,idea,mybatis,intellij-idea 

Spring-mvc的参数传递与常用注解的解答及页面的跳转方式---综合案例,spring,mvc,java,idea,mybatis,intellij-idea

只有当我们选择的时候,它才会指定调用

 Spring-mvc的参数传递与常用注解的解答及页面的跳转方式---综合案例,spring,mvc,java,idea,mybatis,intellij-idea

Spring-mvc的参数传递与常用注解的解答及页面的跳转方式---综合案例,spring,mvc,java,idea,mybatis,intellij-idea

四.返回值 

        4.1 void 返回值 

        处理器对请求处理后,无需跳转到其它任何资源,此时可以让处理器方法返回 void。

Spring-mvc的参数传递与常用注解的解答及页面的跳转方式---综合案例,spring,mvc,java,idea,mybatis,intellij-idea 

测试结果:

Spring-mvc的参数传递与常用注解的解答及页面的跳转方式---综合案例,spring,mvc,java,idea,mybatis,intellij-idea 

 4.2 String 返回值

 Spring-mvc的参数传递与常用注解的解答及页面的跳转方式---综合案例,spring,mvc,java,idea,mybatis,intellij-idea

4.3 model+String  

测试结果:

 Spring-mvc的参数传递与常用注解的解答及页面的跳转方式---综合案例,spring,mvc,java,idea,mybatis,intellij-idea

五.页面跳转 --转发和重定向

         转发和重定向的实现方式有所不同。转发是在服务器端进行处理,服务器接收到用户的请求后,将请求转发到另一个URL,并将响应返回给用户。重定向是通过发送特定的HTTP响应代码来告诉浏览器将用户的请求重定向到另一个URL,浏览器接收到重定向响应后,会自动发送新的请求到重定向的URL。

        使用场景方面,转发适用于需要在服务器端进行一些处理后,将请求转发到其他页面或处理逻辑的情况。转发可以保持用户的URL不变,用户在浏览器中看到的URL仍然是原始的URL。重定向适用于需要将用户导航到其他页面或处理逻辑的情况,重定向会导致浏览器发送新的请求到重定向的URL,并在浏览器的地址栏中显示新的URL。 增删改都是用重定向文章来源地址https://www.toymoban.com/news/detail-696543.html

到了这里,关于Spring-mvc的参数传递与常用注解的解答及页面的跳转方式---综合案例的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Spring MVC:常用参数(注解)的使用和参数绑定的验证

    Java EE企业级应用开发教程(Spring+Spring MVC+MyBatis)(第2版) Spring MVC常用参数 Spring MVC简单应用 Spring MVC参数绑定 本实验采用的是本地安装的tomcat8.5.0版本 (1)创建maven 管理的java web工程 (2)添加本地tomcat war包 (3)实验过程 输出Hello Word 访问端口:http://localhost:8080/chapter1

    2024年02月04日
    浏览(43)
  • spring-mvc系列:详解@RequestMapping注解(value、method、params、header等)

    目录 一、@RequestMapping注解的功能 二、@RequestMapping注解的位置 三、@RequestMapping注解的value属性 四、@RequestMapping注解的method属性 五、@RequestMapping注解的params属性 六、@RequestMapping注解的header属性 七、SpringMVC支持ant分格的路径 八、SpringMVC支持路径中的占位符 从注解名称上我们可

    2024年02月14日
    浏览(49)
  • Spring MVC参数接收、参数传递

    Springmvc中,接收页面提交的数据是通过方法形参来接收: 处理器适配器调用springmvc使用反射将前端提交的参数传递给controller方法的形参 springmvc接收的参数都是String类型,所以spirngmvc提供了很多converter(转换器)在特殊情况下需要自定义converter,如对日期数据 编写controller  

    2024年01月16日
    浏览(60)
  • 3.5 Spring MVC参数传递

    Spring MVC的Controller接收请求参数的方式有多种,本节主要介绍Spring MVC下的HttpServletRequest、基本数据类型、Java Bean、数组、List、Map、JSON参数传递方式,同时解决POST请求中文乱码问题。 基本数据类型以及他们的包装类。 JSON格式采用键值对的方式来表示数据,由花括号 {} 包含对

    2024年02月13日
    浏览(45)
  • 案例13 Spring MVC参数传递案例

    基于Spring MVC实现HttpServletRequest、基本数据类型、Java Bean、数组、List、Map、JSON方式的参数传递。 选择Maven快速构建web项目,项目名称为case13-springmvc02。 ​ src.main路径下,执行new – Directory操作,选择java、resources后,执行回车键。 ​ 在web.xml中配置DispatcherServlet。 src.main.java.

    2024年02月13日
    浏览(51)
  • SpringMVC常用注解、参数传递、返回值

    目录 前言 一、常用注解 二、参数传递 ​编辑 1. 基础类型+String类型 2. 复杂类型 3. @RequestParam 4. @PathVariable  5.@RequestBody 6. @RequestHeader  三、方法返回值 一:void 二:String 三:String+model  四:ModelAndView  四、页面跳转 在上一篇的博客中我们初步的了解学习SpringMVC基础知识,

    2024年02月09日
    浏览(36)
  • Spring MVC 参数传递和JSON数据处理

    编写controller 在index.jsp里面定义超链接 编写controller 在index.jsp里面定义超链接 编写controller 在index.jsp里面定义超链接 springmvc 默认使用jackson作为json类库,不需要修改applicationContext-servlet.xml任何配置,只需引入以下类库springmvc就可以处理json数据: @RequestBody:作用是接收前端aja

    2024年01月24日
    浏览(51)
  • Spring MVC学习之——数据传递(在页面上添加数据)

    编写controller 在index.jsp里面定义超链接 编写controller 在index.jsp里面定义超链接 编写controller 在index.jsp里面定义超链接

    2024年01月18日
    浏览(46)
  • Spring MVC常用注解

    @PathVariable、@RequestBody和@RequestParam @PathVariable、@RequestBody和@RequestParam是Spring MVC框架中用于处理请求参数的注解。 @PathVariable:用于处URL路径中的 占位符参数 。例如,对于URL /users/{id} ,其中的 {id} 是一个占位符,可以使用@PathVariable注解将其绑定到方法的参数上,如下所示:

    2024年02月09日
    浏览(42)
  • 【SpringMVC】注解、参数传递、返回值和页面跳转的关键步骤

    目录 引言 一、常用注解 1.1.@RequestMapping 1.2.@RequestParam 1.3.@RequestBody 1.4.@RequestHeader 1.5.@PathVariable 二、参数传递 2.1.基础类型+String 2.2.复杂类型 2.3.@RequestParam 2.4.@PathVariable 2.5.@RequestBody 2.6.@RequestHeader 三、返回值 3.1.void 3.2.String 3.3.String+Model 3.4.ModelAndView 四、页面跳转 4.1.转发forw

    2024年02月09日
    浏览(38)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包