`

SpringMVC中Controller的@ResponseBody注解或HttpResponseServlet输出内容

 
阅读更多

需求分析:需要 利用    out 对象返回给财付通是否接收成功 。那么将需要如下代码:

 

[java] view plain copy
 
 在CODE上查看代码片派生到我的代码片
  1. /** 
  2.  * 返回处理结果给财付通服务器。 
  3.  * @param msg: Success or fail。 
  4.  * @throws IOException 
  5.  */  
  6. public void sendToCFT(String msg) throws IOException {  
  7.     String strHtml = msg;  
  8.     PrintWriter out = this.getHttpServletResponse().getWriter();  
  9.     out.println(strHtml);  
  10.     out.flush();  
  11.     out.close();  
  12.   
  13. }  


那么在Controller中的方法若用此方法注解:

 

 

 

[java] view plain copy
 
 在CODE上查看代码片派生到我的代码片
  1.     //财付通返回URL  
  2.      @ResponseBody  
  3.          @RequestMapping("/pay/tenpay")  
  4.     public String tenpayReturnUrl(HttpServletRequest request, HttpServletResponse response) throws Exception {  
  5.         unpackCookie(request, response);  
  6.         payReturnUrl.payReturnUrl(request, response);  
  7.         return "pay/success";  
  8.     }  



 

用此办法注解将会在访问的页面上输出 字符串:strHtml,而不会跳转页面至pay/success.jsp页面

原因是:

 

@ResponseBody

 

作用: 

      该注解用于将Controller的方法返回的对象,通过适当的HttpMessageConverter转换为指定格式后,写入到Response对象的body数据区。

使用时机:

      返回的数据不是html标签的页面,而是其他某种格式的数据时(如json、xml等)使用;

 

那么只需删除注解:@ResponseBody 便可以返回页面pay/success.jsp。而且达到了与客户端后台交互的效果。即:

[java] view plain copy
 
 在CODE上查看代码片派生到我的代码片
  1. out.println(strHtml);  

且不会在页面上输出字符串。

分享到:
评论

相关推荐

    彻底根治Spring @ResponseBody JavaScript HTML特殊字符

    我们经常会遇到一个问题:当使用Spring MVC的`@ResponseBody`注解将后端处理结果直接转化为HTTP响应体时,如果这个结果中包含HTML特殊字符,如尖角号、引号、按位与符号等,浏览器可能会误解析,导致安全问题或显示...

    SpringMVC使用@ResponseBody.rar

    在Spring MVC框架中,`@ResponseBody`是一个非常关键的注解,它用于处理HTTP请求的响应数据,并将其直接转换为HTTP响应体中的内容。这个注解通常与控制器(Controller)方法一起使用,允许我们将Java对象直接序列...

    对json格式的数据进行封装和转化,@responsebody注解所需的jar包JSON.rar

    描述中提到的"springmvc进行Jason数据封装转化时可以即使用也是@responsebody",指的是在Spring MVC的控制器(Controller)中,我们可以使用`@ResponseBody`注解配合Jackson库,实现将Java对象直接转换为JSON格式的...

    Spring MVC – Easy REST-Based JSON Services with @ResponseBody

    `@ResponseBody`是Spring MVC中的一个关键注解,它允许我们将方法返回的对象直接转换为HTTP响应体的内容,通常用于处理JSON或XML格式的数据。 Spring MVC是Spring框架的一部分,专门用于构建Web应用。它提供了模型-...

    @Controller、@RestController注解区别详解

    在@Controller类中,我们可以使用@RequestMapping注解来标识处理请求的方法,并使用@ResponseBody注解来标识方法返回的结果是JSON对象。例如: ```java @Controller public class HospitalController { //注入...

    springmvc_controller_01

    在 Spring MVC 中,Controller 通常是一个实现了 `org.springframework.web.bind.annotation.Controller` 或 `org.springframework.stereotype.Controller` 注解的 Java 类。 2. **注解驱动的 Controller**:Spring...

    详解SpringMVC Controller介绍及常用注解

    在 SpringMVC 中,提供了一个非常简便的定义 Controller 的方法,你无需继承特定的类或实现特定的接口,只需使用 @Controller 标记一个类是 Controller,然后使用 @RequestMapping 和 @RequestParam 等一些注解用以...

    spring+springmvc+jpa零配置注解开发

    在“spring+springmvc+jpa零配置注解开发”项目中,我们将深入探讨如何利用注解驱动的配置,避免XML配置,实现更简洁、高效的开发流程。 首先,让我们关注“零配置”这个概念。在传统的Spring应用中,开发者需要在...

    基于spring+springmvc+hibernate的全注解开发

    - **SpringMVC的视图解析**,`@ResponseBody`和`@ControllerAdvice`可以处理返回JSON或其他类型的数据,而`@ExceptionHandler`可以统一处理异常。 - **Hibernate的懒加载和即时加载**,`@Lazy`注解用于实现延迟加载...

    springMVC技术概述

    常用注解:@Controller @RestController(Controller+ResponseBody) @Service @Transactional @Mapper @AutoWired @RequestMapping--路由 @RequestParam--参数绑定(不同名参数或Map<Object,String>) @...

    springmvc框架注解和非注解实现

    本篇文章将深入探讨Spring MVC框架中注解和非注解的实现方式,并对比它们的差异,以帮助你理解注解的优势。 ### 一、非注解实现 在Spring MVC早期版本中,非注解方式是主要的配置方法。这通常涉及XML配置文件,如`...

    MyBatisPlus

    @ResponseBody注解可以在类上或方法上使用,用于设置当前类或方法响应的内容。 7. MyBatisPlus的应用 MyBatisPlus提供了一个简洁的CRUD操作接口,支持Lambda表达式、自动填充、逻辑删除、数据库字段加密、条件构造...

    基于注解SpringMVC框架

    本篇文章将围绕SpringMVC的核心概念、注解使用以及其在实际项目中的应用进行详细讲解。 1. **核心组件** - `DispatcherServlet`:作为SpringMVC的前端控制器,负责接收请求并分发给相应的处理器。 - `@Controller...

    注解式springMVC的demo

    在本文中,我们将深入探讨“注解式Spring MVC”的概念及其在实际开发中的应用。Spring MVC是Spring框架的一部分,主要用于构建Web应用程序。它利用注解简化了配置过程,提高了开发效率。 1. **注解基础** 在Spring...

    springmvc学习笔记-springmvc注解开发.zip

    在"springmvc学习笔记--springmvc注解开发.zip"这个压缩包中,我们可以深入探讨Spring MVC的注解驱动开发方式,这是一种简洁且高效的开发模式。 1. **Spring MVC基础**: Spring MVC的核心组件包括...

    springmvc注解简单实例

    在这个"springmvc注解简单实例"中,我们将深入探讨Spring MVC中的一些关键注解,以及它们在DAO层、Service层和Controller层中的应用。让我们逐一解析这些层面的注解使用。 首先,我们来到**DAO层**。在Spring MVC中...

    springMVC学习——注解方式

    在这个"springMVC学习——注解方式"的主题中,我们将深入探讨如何使用注解来简化SpringMVC的配置和开发流程。 首先,让我们了解一下什么是注解。在Java中,注解是一种元数据,允许程序员在源代码中嵌入信息,这些...

    springmvc-demo02-注解方式.zip

    在"springmvc-demo02-注解方式.zip"这个压缩包中,我们重点关注的是使用注解进行 Spring MVC 的配置。这种配置方式相比传统的 XML 配置更加简洁且直观,有助于提升开发效率。 1. **注解概述**: - 在 Spring MVC ...

    SpringMVC例子注解

    在本示例中,我们将深入探讨SpringMVC中的一些关键注解,这些注解在开发过程中起着至关重要的作用。 1. `@Controller`: 这是Spring MVC中的核心注解,用于标记一个类作为控制器。当Spring扫描到这个注解时,会将...

    注解配置SpringMVC

    `@RequestBody` 注解用于将请求体中的JSON或XML数据转换为Java对象,而`@ResponseBody`则将方法的返回值转换为HTTP响应体的输出内容。 ```java @PostMapping("/save") public @ResponseBody User saveUser(@Request...

Global site tag (gtag.js) - Google Analytics