• Java-Class-C:org.springframework.http.ResponseEntity.java


    ylbtech-Java-Class-C:org.springframework.http.ResponseEntity.java
    1.返回顶部
    1、
    org.springframework.http

    Class ResponseEntity<T>

    • Type Parameters:
      T - the body type


      public class ResponseEntity<T>
      extends HttpEntity<T>
      Extension of HttpEntity that adds a HttpStatus status code. Used in RestTemplate as well @Controller methods.

      In RestTemplate, this class is returned by getForEntity() and exchange():

       ResponseEntity<String> entity = template.getForEntity("https://example.com", String.class);
       String body = entity.getBody();
       MediaType contentType = entity.getHeaders().getContentType();
       HttpStatus statusCode = entity.getStatusCode();
       

      Can also be used in Spring MVC, as the return value from a @Controller method:

       @RequestMapping("/handle")
       public ResponseEntity<String> handle() {
         URI location = ...;
         HttpHeaders responseHeaders = new HttpHeaders();
         responseHeaders.setLocation(location);
         responseHeaders.set("MyResponseHeader", "MyValue");
         return new ResponseEntity<String>("Hello World", responseHeaders, HttpStatus.CREATED);
       }
       
      Or, by using a builder accessible via static methods:
       @RequestMapping("/handle")
       public ResponseEntity<String> handle() {
         URI location = ...;
         return ResponseEntity.created(location).header("MyResponseHeader", "MyValue").body("Hello World");
       }
       
    2、
    2.返回顶部
     
    3.返回顶部
     
    4.返回顶部
    1、
    //
    // Source code recreated from a .class file by IntelliJ IDEA
    // (powered by Fernflower decompiler)
    //
    
    package org.springframework.http;
    
    import java.net.URI;
    import java.time.Instant;
    import java.time.ZonedDateTime;
    import java.util.Arrays;
    import java.util.LinkedHashSet;
    import java.util.Optional;
    import java.util.function.Function;
    import org.springframework.lang.Nullable;
    import org.springframework.util.Assert;
    import org.springframework.util.MultiValueMap;
    import org.springframework.util.ObjectUtils;
    
    public class ResponseEntity<T> extends HttpEntity<T> {
        private final Object status;
    
        public ResponseEntity(HttpStatus status) {
            this((Object)null, (MultiValueMap)null, (HttpStatus)status);
        }
    
        public ResponseEntity(@Nullable T body, HttpStatus status) {
            this(body, (MultiValueMap)null, (HttpStatus)status);
        }
    
        public ResponseEntity(MultiValueMap<String, String> headers, HttpStatus status) {
            this((Object)null, headers, (HttpStatus)status);
        }
    
        public ResponseEntity(@Nullable T body, @Nullable MultiValueMap<String, String> headers, HttpStatus status) {
            super(body, headers);
            Assert.notNull(status, "HttpStatus must not be null");
            this.status = status;
        }
    
        private ResponseEntity(@Nullable T body, @Nullable MultiValueMap<String, String> headers, Object status) {
            super(body, headers);
            Assert.notNull(status, "HttpStatus must not be null");
            this.status = status;
        }
    
        public HttpStatus getStatusCode() {
            return this.status instanceof HttpStatus ? (HttpStatus)this.status : HttpStatus.valueOf((Integer)this.status);
        }
    
        public int getStatusCodeValue() {
            return this.status instanceof HttpStatus ? ((HttpStatus)this.status).value() : (Integer)this.status;
        }
    
        public boolean equals(@Nullable Object other) {
            if (this == other) {
                return true;
            } else if (!super.equals(other)) {
                return false;
            } else {
                ResponseEntity<?> otherEntity = (ResponseEntity)other;
                return ObjectUtils.nullSafeEquals(this.status, otherEntity.status);
            }
        }
    
        public int hashCode() {
            return super.hashCode() * 29 + ObjectUtils.nullSafeHashCode(this.status);
        }
    
        public String toString() {
            StringBuilder builder = new StringBuilder("<");
            builder.append(this.status.toString());
            if (this.status instanceof HttpStatus) {
                builder.append(' ');
                builder.append(((HttpStatus)this.status).getReasonPhrase());
            }
    
            builder.append(',');
            T body = this.getBody();
            HttpHeaders headers = this.getHeaders();
            if (body != null) {
                builder.append(body);
                builder.append(',');
            }
    
            builder.append(headers);
            builder.append('>');
            return builder.toString();
        }
    
        public static ResponseEntity.BodyBuilder status(HttpStatus status) {
            Assert.notNull(status, "HttpStatus must not be null");
            return new ResponseEntity.DefaultBuilder(status);
        }
    
        public static ResponseEntity.BodyBuilder status(int status) {
            return new ResponseEntity.DefaultBuilder(status);
        }
    
        public static <T> ResponseEntity<T> of(Optional<T> body) {
            Assert.notNull(body, "Body must not be null");
            return (ResponseEntity)body.map(ResponseEntity::ok).orElse(notFound().build());
        }
    
        public static ResponseEntity.BodyBuilder ok() {
            return status(HttpStatus.OK);
        }
    
        public static <T> ResponseEntity<T> ok(T body) {
            ResponseEntity.BodyBuilder builder = ok();
            return builder.body(body);
        }
    
        public static ResponseEntity.BodyBuilder created(URI location) {
            ResponseEntity.BodyBuilder builder = status(HttpStatus.CREATED);
            return (ResponseEntity.BodyBuilder)builder.location(location);
        }
    
        public static ResponseEntity.BodyBuilder accepted() {
            return status(HttpStatus.ACCEPTED);
        }
    
        public static ResponseEntity.HeadersBuilder<?> noContent() {
            return status(HttpStatus.NO_CONTENT);
        }
    
        public static ResponseEntity.BodyBuilder badRequest() {
            return status(HttpStatus.BAD_REQUEST);
        }
    
        public static ResponseEntity.HeadersBuilder<?> notFound() {
            return status(HttpStatus.NOT_FOUND);
        }
    
        public static ResponseEntity.BodyBuilder unprocessableEntity() {
            return status(HttpStatus.UNPROCESSABLE_ENTITY);
        }
    
        private static class DefaultBuilder implements ResponseEntity.BodyBuilder {
            private final Object statusCode;
            private final HttpHeaders headers = new HttpHeaders();
    
            public DefaultBuilder(Object statusCode) {
                this.statusCode = statusCode;
            }
    
            public ResponseEntity.BodyBuilder header(String headerName, String... headerValues) {
                String[] var3 = headerValues;
                int var4 = headerValues.length;
    
                for(int var5 = 0; var5 < var4; ++var5) {
                    String headerValue = var3[var5];
                    this.headers.add(headerName, headerValue);
                }
    
                return this;
            }
    
            public ResponseEntity.BodyBuilder headers(@Nullable HttpHeaders headers) {
                if (headers != null) {
                    this.headers.putAll(headers);
                }
    
                return this;
            }
    
            public ResponseEntity.BodyBuilder allow(HttpMethod... allowedMethods) {
                this.headers.setAllow(new LinkedHashSet(Arrays.asList(allowedMethods)));
                return this;
            }
    
            public ResponseEntity.BodyBuilder contentLength(long contentLength) {
                this.headers.setContentLength(contentLength);
                return this;
            }
    
            public ResponseEntity.BodyBuilder contentType(MediaType contentType) {
                this.headers.setContentType(contentType);
                return this;
            }
    
            public ResponseEntity.BodyBuilder eTag(String etag) {
                if (!etag.startsWith(""") && !etag.startsWith("W/"")) {
                    etag = """ + etag;
                }
    
                if (!etag.endsWith(""")) {
                    etag = etag + """;
                }
    
                this.headers.setETag(etag);
                return this;
            }
    
            public ResponseEntity.BodyBuilder lastModified(ZonedDateTime date) {
                this.headers.setLastModified(date);
                return this;
            }
    
            public ResponseEntity.BodyBuilder lastModified(Instant date) {
                this.headers.setLastModified(date);
                return this;
            }
    
            public ResponseEntity.BodyBuilder lastModified(long date) {
                this.headers.setLastModified(date);
                return this;
            }
    
            public ResponseEntity.BodyBuilder location(URI location) {
                this.headers.setLocation(location);
                return this;
            }
    
            public ResponseEntity.BodyBuilder cacheControl(CacheControl cacheControl) {
                this.headers.setCacheControl(cacheControl);
                return this;
            }
    
            public ResponseEntity.BodyBuilder varyBy(String... requestHeaders) {
                this.headers.setVary(Arrays.asList(requestHeaders));
                return this;
            }
    
            public <T> ResponseEntity<T> build() {
                return this.body((Object)null);
            }
    
            public <T> ResponseEntity<T> body(@Nullable T body) {
                return new ResponseEntity(body, this.headers, this.statusCode);
            }
        }
    
        public interface BodyBuilder extends ResponseEntity.HeadersBuilder<ResponseEntity.BodyBuilder> {
            ResponseEntity.BodyBuilder contentLength(long var1);
    
            ResponseEntity.BodyBuilder contentType(MediaType var1);
    
            <T> ResponseEntity<T> body(@Nullable T var1);
        }
    
        public interface HeadersBuilder<B extends ResponseEntity.HeadersBuilder<B>> {
            B header(String var1, String... var2);
    
            B headers(@Nullable HttpHeaders var1);
    
            B allow(HttpMethod... var1);
    
            B eTag(String var1);
    
            B lastModified(ZonedDateTime var1);
    
            B lastModified(Instant var1);
    
            B lastModified(long var1);
    
            B location(URI var1);
    
            B cacheControl(CacheControl var1);
    
            B varyBy(String... var1);
    
            <T> ResponseEntity<T> build();
        }
    }
    2、
    5.返回顶部
    1、
    2、
     
    6.返回顶部
     
    warn 作者:ylbtech
    出处:http://ylbtech.cnblogs.com/
    本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。
  • 相关阅读:
    NumPy使用图解教程
    Pytorch 网络结构可视化
    OpenCV基于字节指针进行高效像素遍历
    scrapy工具创建爬虫工程
    网络爬虫基本概念与Scrapy工具包使用
    CentOS 7命令行安装GNOME桌面
    sicily 1154. Easy sort (tree sort& merge sort)
    全连通图求最小生成树边权之积(邻接矩阵/prim/kruskal)
    sicily 1024. Magic Island
    写在Web考试后的一点小总结
  • 原文地址:https://www.cnblogs.com/storebook/p/11052951.html
Copyright © 2020-2023  润新知