您的位置:首页 > 编程语言 > Java开发

Spring boot restful api demo

2017-05-29 17:33 381 查看

1、Controller

package com.jiankunking.example.controller;

import com.jiankunking.example.model.Domain;
import com.jiankunking.example.model.Response;
import org.springframework.stereotype.Controller;

import org.springframework.web.bind.annotation.*;

import javax.servlet.http.HttpServletRequest;
import java.util.HashMap;

/**
* Created by jiankunking on 2017/5/29 16:55.
* curd restful api demo
*/
@Controller
@RequestMapping(value = "/api/test")
public class CrudController {
/**
* 新增
* POST /api/test
* 参数:
*  {
name: 'name',
visible: 1,
services: ['xx','yy'],
}
* @return
*/
@ResponseBody
@RequestMapping(method = RequestMethod.POST)
public Response insertTest(@RequestBody Domain domain,
HttpServletRequest request) {
return Response.ok("新增成功!");
}

/**
* 修改
* PUT /api/test/${id}
* @param
* @return
*/
@ResponseBody
@RequestMapping(value = "/{id}", method = RequestMethod.PUT)
public Response updateTest(@PathVariable(value = "id") String id, @RequestBody Domain domain,
HttpServletRequest request) {
return Response.ok("修改成功!");
}

/**
* 删除
* DELETE /api/test/${id}
* @param id
* @return
*/
@ResponseBody
@RequestMapping(value = "/{id}", method = RequestMethod.DELETE)
public Response deleteTestById(@PathVariable(value = "id") String id) {
return Response.ok("删除成功!");
}

/**
* 查询
* GET /api/test
* 参数:{ sysId: '1' }
* @return
*/
@ResponseBody
@RequestMapping(method = RequestMethod.GET)
public Response getTestBySysId(@RequestParam(name = "sysId", required = true) String sysId) {
HashMap map = new HashMap();
map.put(1, 1);
return Response.ok(map);
}

/**
* 查询
* GET /api/test/${id}
* @return
*/
@ResponseBody
@RequestMapping(value = "/{id}", method = RequestMethod.GET)
public Response getTestInfoByModuleId(@PathVariable(value = "id") String id) {
HashMap map = new HashMap();
map.put(2, 2);
return Response.ok(map);
}
}


2、entity

package com.jiankunking.example.model;

import lombok.Data;

import java.util.Date;

/**
* Created by jiankunking on 2017/5/29 17:00.
*/
@Data
public class Domain {
private String name;
private int visible;
private String[] services;
private Date createTime;
}
package com.jiankunking.example.model;

import lombok.Getter;
import lombok.Setter;

import java.io.Serializable;

/**
* Created by jiankunking on 2017/5/9 13:47.
* 该类已简化
*/
public class Response<T> implements Serializable {
private static final long serialVersionUID = -750644833749014618L;
private T data;

@Getter
@Setter
private Boolean isSuccess;

public Response() {
this.setIsSuccess(true);
}

public T getData() {
return this.data;
}

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

public static <T> Response<T> ok(T data) {
Response resp = new Response();
resp.setData(data);
resp.setIsSuccess(true);
return resp;
}

public static <T> Response<T> fail(Integer code, String error) {
Response resp = new Response();
//resp.setCode(code);
//resp.setMsg(error);
resp.setIsSuccess(false);
return resp;
}
}


3、postman 细节





4、源码下载

http://download.csdn.net/detail/xunzaosiyecao/9855449

作者:jiankunking 出处:http://blog.csdn.net/jiankunking
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  spring boot restful api demo