java写http接口,java如何写一个http接口?实例详解

在大家工作中,经常会遇到要写接口的情况,并且最常用的就是http接口,可是对于一个新手Java人员来说,写一个http接口还是比较困难的,那么下面我们就用实例给大家讲解一下。

一、搭建项目

首先我们先搭建一个SpringBoot项目,如何搭建这里就不讲了,引入相关的依赖:

org.springframework.boot <

artifactId > spring - boot - starter  <

/dependency> <

dependency >

org.projectlombok <

artifactId > lombok  <

optional > true  <

/dependency> <

dependency >

org.springframework.boot <

artifactId > spring - boot - starter - test  <

scope > test  <

/dependency> <

dependency >

org.springframework.boot <

artifactId > spring - boot - starter - web  <

/dependency>

二、写一个通用结果对象

一个接口的返回信息应该至少包含以下几项:

1、结果编码

2、结果信息

3、返回数据

因此新建一个类来记录返回的结果集Result :@Data

@AllArgsConstructor

@NoArgsConstructor

public class Result

{

private int code;

private String message;

private Object data;

}

其中结果编码和结果信息需要是统一的,这里用枚举类型最合适,新建一个枚举类ResponseCodepublic enum ResponseCode

{

// 系统模块

SUCCESS(0, "操作成功")

, ERROR(1, "操作失败")

, SERVER_ERROR(500, "服务器异常"),

// 通用模块 1xxxx

ILLEGAL_ARGUMENT(10000, "参数不合法")

, REPETITIVE_OPERATION(10001, "请勿重复操作")

, ACCESS_LIMIT(10002, "请求太频繁, 请稍后再试")

, MAIL_SEND_SUCCESS(10003, "邮件发送成功"),

// 用户模块 2xxxx

NEED_LOGIN(20001, "登录失效")

, USERNAME_OR_PASSWORD_EMPTY(20002, "用户名或密码不能为空")

, USERNAME_OR_PASSWORD_WRONG(20003, "用户名或密码错误")

, USER_NOT_EXISTS(20004, "用户不存在")

, WRONG_PASSWORD(20005, "密码错误"), ;

ResponseCode(Integer code, String msg)

{

this.code = code;

this.msg = msg;

}

private Integer code;

private String msg;

public Integer getCode()

{

return code;

}

public void setCode(Integer code)

{

this.code = code;

}

public String getMsg()

{

return msg;

}

public void setMsg(String msg)

{

this.msg = msg;

}

}

三、接口编写

上面的两个类可以作为其他项目的通用类,要写接口时直接放代码就行,接下来写一个接口测试一下:

新建一个ResponseController@RestController

public class ResponseController

{

@RequestMapping(value = "/getData", method = RequestMethod.GET)

public Result getData()

{

Mapmap = new HashMap  ();

map.put("name", "javayz");

map.put("age", "23");

MapchildMap = new HashMap  ();

childMap.put("home", "浙江");

childMap.put("job", "java");

map.put("childMap", childMap);

Result result = new Result(ResponseCode.SUCCESS.getCode(), ResponseCode.SUCCESS.getMsg(), map);

return result;

}

}

这里展示的是通过Map集合插入数据,最后返回Result,调用结果如下:{

"code": 0

, "message": "操作成功"

, "data":

{

"name": "javayz"

, "childMap":

{

"job": "java"

, "home": "浙江"

}

, "age": "23"

}

}

除了使用Map传递数据之外,还可以通过对象来传递数据,新建两个类分别是User和UserDetail:@Data

@AllArgsConstructor

@NoArgsConstructor

public class User

{

private String name;

private String age;

private UserDetail userDetail;

}@Data

@AllArgsConstructor

@NoArgsConstructor

public class UserDetail

{

private String home;

private String job;

}

新写一个Get请求的接口,在接口中用对象传递数据@RequestMapping(value = "/getData2", method = RequestMethod.GET)

public Result getData2()

{

UserDetail userDetail = new UserDetail("浙江", "java");

User user = new User("javayz", "23", userDetail);

Result result = new Result(ResponseCode.SUCCESS.getCode(), ResponseCode.SUCCESS.getMsg(), user);

return result;

}

调用接口后返回值如下:{

"code": 0

, "message": "操作成功"

, "data":

{

"name": "javayz"

, "age": "23"

, "userDetail":

{

"home": "浙江"

, "job": "java"

}

}

}

关于java写一个http接口的方法我们就分享到这,从搭建项目到接口编写我们都详细的写了,大家可以多操作几次就会熟悉了,最后大家如果想要了解更多java实例知识,敬请关注奇Q工具网。

推荐阅读:

  • 0
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值