SpringBoot(三):Respond封装

Spring Boot系列
SpringBoot(一):Quick start
SpringBoot(二):多环境切换

目录

一.简介
二.Respond封装
三.请求测试

一.简介

在实际的开发过程中,我们会面临着服务接口调用,接口中返回的数据格式各种,没有一个统一的标准,会造成在前端和后端,后端与后端数据对接的过程中出现各种数据格式异常,所以有必要对数据处理有有一定的状态码,信息,数据的封装

二.Respond封装

这里写图片描述

如上图,建立两个文件

/citydata/constant/ResponseCode.java
/citydata/response/ReturnData.java

2.1 ResponseCode.java

ps:该类是个枚举类,以后可以根据自己业务需求,添加自己所需的响应状态码和信息

package com.citydata.constant;

/**
 * @author yjgithub
 * @create 2018/05/28 15:38
 * @desc 响应状态码及信息
 **/
public enum ResponseCode {

    OPERATION_SUCCESS(200, "操作成功"),
    OPERATION_ERROR(400, "操作失败");


    ResponseCode(int status, String msg) {
        this.status = status;
        this.msg = msg;
    }

    private int status;
    private String msg;

    public int getStatus() {
        return status;
    }

    public void setStatus(int status) {
        this.status = status;
    }

    public String getMsg() {
        return msg;
    }

    public void setMsg(String msg) {
        this.msg = msg;
    }
}

2.2 ReturnData.java

package com.citydata.response;

import com.citydata.constant.ResponseCode;

/**
 * @author yjgithub
 * @create 2018/5/28 11:48
 * @Description: 业务响应实体
 */

public class ReturnData {


    //响应业务状态码
    private Integer status;

    //响应信息
    private String msg;

    //响应数据
    private Object data;
    public ReturnData(Integer status, String msg) {
        this.status = status;
        this.msg = msg;
    }

    public ReturnData(Integer status, String msg, Object data) {
        this.status = status;
        this.msg = msg;
        this.data = data;
    }

    public static ReturnData build(Integer status, String msg,Object data) {
        return new ReturnData(status, msg, data);
    }

    public static ReturnData build(Integer status, String msg) {
        return new ReturnData(status, msg, null);
    }


    public static ReturnData ok(Object data) {
        return new ReturnData(data);
    }

    public static ReturnData ok() {
        return new ReturnData(null);
    }


    public ReturnData() {
    }


    public ReturnData(Object data) {
        this.status = ResponseCode.OPERATION_SUCCESS.getStatus();
        this.msg = ResponseCode.OPERATION_SUCCESS.getMsg();
        this.data = data;
    }

    public Integer getStatus() {
        return status;
    }

    public void setStatus(Integer status) {
        this.status = status;
    }

    public String getMsg() {
        return msg;
    }

    public void setMsg(String msg) {
        this.msg = msg;
    }

    public Object getData() {
        return data;
    }

    public void setData(Object data) {
        this.data = data;
    }

    @Override
    public String toString() {
        return "ReturnData{" +
                "status=" + status +
                ", msg='" + msg + '\'' +
                ", data=" + data +
                '}';
    }
}

三.请求测试

3.1 改造类
ps:根据该SpringBoot(一)Quick start博客提到的三个类,进行改造返回对应的请求体(ReturnData)

    /citydata/controller/TestController.java   
    /citydata/service/TestService.java
    /citydata/service/impl/TestImpl.java

3.1.1TestController.java


/**
 * Created by yjgithub on 2018/5/28.
 */
@RestController
@RequestMapping("test")
public class TestController {
    @Autowired
    TestImpl testService;

    @RequestMapping("/index")
    public ReturnData index(String Str) {
        return testService.test(Str);
    }
}

3.1.2 TestService.java

/**
 *
 * Created by yjgithub on 2018/5/28.
 */
public interface TestService {
    public ReturnData test(String str);
}

3.1.3 TestImpl.java

/**
 * Created by yjgithub on 2018/5/28.
 */
@Service
public class TestImpl implements TestService {
    @Override
    public ReturnData test(String str) {
        ReturnData rd = new ReturnData(ResponseCode.OPERATION_SUCCESS.getStatus(),ResponseCode.OPERATION_SUCCESS.getMsg(),str);
        return rd;
    }
}

3.2 测试
这里写图片描述

PS:需要项目源代码,请邮件yjgithub@163.com联系

CoAP (Constrained Application Protocol) 是一种面向物联网的应用层协议,它是专门为受限设备和网络设计的轻量级协议。Spring Boot 是一个快速开发 Web 应用程序的框架,它提供了很多开箱即用的功能。在 Spring Boot 中整合 CoAP 可以让我们更方便地开发物联网应用程序。 下面是整合 CoAP 的步骤: 1. 添加依赖 在 pom.xml 文件中添加以下依赖: ``` <dependency> <groupId>org.eclipse.californium</groupId> <artifactId>californium-core</artifactId> <version>2.0.0-M3</version> </dependency> <dependency> <groupId>org.eclipse.californium</groupId> <artifactId>californium-proxy</artifactId> <version>2.0.0-M3</version> </dependency> ``` 这些依赖将帮助我们使用 CoAP 协议。 2. 创建 CoapServer 创建一个 CoapServer 类,并添加 @Configuration 和 @EnableCoapServer 注解,示例如下: ``` @Configuration @EnableCoapServer public class CoapServerConfig { @Bean public CoapServer coapServer() { return new CoapServer(); } } ``` 3. 创建资源 创建一个 CoapResource 类,并添加 @Component 注解,示例如下: ``` @Component public class MyResource extends CoapResource { public MyResource() { super("myResource"); } @Override public void handleGET(CoapExchange exchange) { exchange.respond("Hello, CoAP!"); } } ``` 这个资源将会响应 GET 请求,并返回 "Hello, CoAP!"。 4. 注册资源 在 CoapServer 类中,将资源注册到服务器上,示例如下: ``` @Configuration @EnableCoapServer public class CoapServerConfig { @Bean public CoapServer coapServer() { CoapServer server = new CoapServer(); server.add(new MyResource()); return server; } } ``` 5. 运行服务器 创建一个 main 方法,并运行服务器,示例如下: ``` @SpringBootApplication public class App { public static void main(String[] args) { SpringApplication.run(App.class, args); } } ``` 现在,你可以使用 CoAP 协议通过访问 "coap://localhost:5683/myResource" 来访问资源了。 以上就是整合 CoAP 的步骤。希望对你有帮助!
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值