PHP程序猿的Spring Boot之旅-Spring Boot實現restful api

在《 PHP程序猿的Spring Boot之旅-Spring Boot項目建立》中已經能夠搭建了Spring Boot的項目了,接下來咱們使用Spring Boot實現restful api,對人員進行curd操做。

建立項目

建立項目的步驟請參考《PHP程序猿的Spring Boot之旅-Spring Boot項目建立》。java

代碼開發

建立entitycontroller包:

/img/remote/1460000020644652

添加實體和控制器

1.在entity包下添加Person實體,在controller包下添加PersonController控制器:web

/img/remote/1460000020644653

2.實體和控制器的內容:spring

Person:api

package cn.sockstack.demo.entity;

public class Person {
    /**
     * id
     */
    private String id;

    /**
     * 姓名
     */
    private String name;

    /**
     * 年齡
     */
    private Integer age;

    public String getId() {
        return id;
    }

    public void setId(String id) {
        this.id = id;
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public Integer getAge() {
        return age;
    }

    public void setAge(Integer age) {
        this.age = age;
    }
}

PersonController:restful

package cn.sockstack.demo.controller;

import cn.sockstack.demo.entity.Person;
import org.springframework.beans.BeanUtils;
import org.springframework.web.bind.annotation.*;

import java.util.Map;
import java.util.UUID;
import java.util.concurrent.ConcurrentHashMap;

@RestController
public class PersonController {
    private static ConcurrentHashMap<String, Person> personHashMap = new ConcurrentHashMap<>();
    /**
     * 獲取全部的person
     * @return
     */
    @GetMapping("/")
    public Map<String, Person> getPerson() {
        return personHashMap;
    }

    /**
     * 新增person
     * @return
     */
    @PostMapping("/")
    public Person storePerson(Person person) {
        String uuid = UUID.randomUUID().toString();
        person.setId(uuid);

        personHashMap.put(uuid, person);

        return person;
    }

    @DeleteMapping("/")
    public Person deletePerson() {
        return null;
    }

    /**
     * 修改··
     * @param id
     * @param person
     * @return
     */
    @PutMapping("/{id}")
    public Person editPerson(@PathVariable String id, Person person) {
        Person person1 = personHashMap.get(id);

        BeanUtils.copyProperties(person, person1, "id");

        personHashMap.put(id, person1);

        return person1;
    }

    /**
     * 獲取一個person
     * @return
     */
    @GetMapping("/{id}")
    public Person getPerson(@PathVariable String id) {
        return personHashMap.get(id);
    }
}

啓動程序後,打開postman進行curd測試便可。app

更多精彩文章,請關注個人博客 SOCKSTACK,分享個人工做經驗。
相關文章
相關標籤/搜索