一 RESTful API设计
![](https://i-blog.csdnimg.cn/blog_migrate/9f10dc743804bb1c987e06d129184850.png)
二 获取女生列表
1 GirlController
package com.imooc;
import java.util.List;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RestController;
@RestController
public class GirlController {
@Autowired
private GirlRepository girlRepository;
@GetMapping(value="/girls")
public List<Girl> girlList(){
return girlRepository.findAll();
}
}
2 GirlRespository
package com.imooc;
import org.springframework.data.jpa.repository.JpaRepository;
public interface GirlRepository extends JpaRepository<Girl, Integer>{
}
3 测试结果
![](https://i-blog.csdnimg.cn/blog_migrate/6bdcc80bf26c47a8745eef156d97fcb3.png)
三 创建一个女生
1 GirlController
package com.imooc;
import java.util.List;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
@RestController
public class GirlController {
@Autowired
private GirlRepository girlRepository;
@GetMapping(value="/girls")
public List<Girl> girlList(){
return girlRepository.findAll();
}
@PostMapping(value="girls")
public Girl girlAdd(@RequestParam("cupSize") String cupSize,
@RequestParam("age") Integer age){
Girl girl = new Girl();
girl.setCupSize(cupSize);
girl.setAge(age);
return girlRepository.save(girl);
}
}
2 测试结果
![](https://i-blog.csdnimg.cn/blog_migrate/53a7787e4ec69c8a8701315cb06cca60.png)
四 通过id查询一个女生
1 GirlController
package com.imooc;
import java.util.List;
import javax.websocket.server.PathParam;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
@RestController
public class GirlController {
@Autowired
private GirlRepository girlRepository;
@GetMapping(value="/girls")
public List<Girl> girlList(){
return girlRepository.findAll();
}
@PostMapping(value="girls")
public Girl girlAdd(@RequestParam("cupSize") String cupSize,
@RequestParam("age") Integer age){
Girl girl = new Girl();
girl.setCupSize(cupSize);
girl.setAge(age);
return girlRepository.save(girl);
}
@GetMapping(value="/girls/{id}")
public Girl girlFindOne(@PathVariable("id") Integer id)
{
return girlRepository.findOne(id);
}
}
2 测试结果
![](https://i-blog.csdnimg.cn/blog_migrate/dc6e82f1c5f4d9c9fd60cd1e326e0365.png)
五 通过id更新一个女生
1 GirlController
package com.imooc;
import java.util.List;
import javax.websocket.server.PathParam;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.PutMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
@RestController
public class GirlController {
@Autowired
private GirlRepository girlRepository;
@GetMapping(value="/girls")
public List<Girl> girlList(){
return girlRepository.findAll();
}
@PostMapping(value="girls")
public Girl girlAdd(@RequestParam("cupSize") String cupSize,
@RequestParam("age") Integer age){
Girl girl = new Girl();
girl.setCupSize(cupSize);
girl.setAge(age);
return girlRepository.save(girl);
}
@GetMapping(value="/girls/{id}")
public Girl girlFindOne(@PathVariable("id") Integer id)
{
return girlRepository.findOne(id);
}
@PutMapping(value="/girls/{id}")
public Girl girlUpdate (@PathVariable("id") Integer id,
@RequestParam("cupSize") String cupSize,
@RequestParam("age") Integer age){
Girl girl = new Girl();
girl.setId(id);
girl.setCupSize(cupSize);
girl.setAge(age);
return girlRepository.save(girl);
}
}
2 测试结果
![](https://i-blog.csdnimg.cn/blog_migrate/8f2689e3659963a4fe6554ee2d19ff57.png)
六 通过id删除一个女生
1 GirlController
package com.imooc;
import java.util.List;
import javax.websocket.server.PathParam;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.DeleteMapping;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.PutMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
@RestController
public class GirlController {
@Autowired
private GirlRepository girlRepository;
@GetMapping(value="/girls")
public List<Girl> girlList(){
return girlRepository.findAll();
}
@PostMapping(value="girls")
public Girl girlAdd(@RequestParam("cupSize") String cupSize,
@RequestParam("age") Integer age){
Girl girl = new Girl();
girl.setCupSize(cupSize);
girl.setAge(age);
return girlRepository.save(girl);
}
@GetMapping(value="/girls/{id}")
public Girl girlFindOne(@PathVariable("id") Integer id)
{
return girlRepository.findOne(id);
}
@PutMapping(value="/girls/{id}")
public Girl girlUpdate (@PathVariable("id") Integer id,
@RequestParam("cupSize") String cupSize,
@RequestParam("age") Integer age){
Girl girl = new Girl();
girl.setId(id);
girl.setCupSize(cupSize);
girl.setAge(age);
return girlRepository.save(girl);
}
@DeleteMapping(value="/girls/{id}")
public void girlDelete(@PathVariable("id") Integer id){
girlRepository.delete(id);
}
}
2 测试结果
![](https://i-blog.csdnimg.cn/blog_migrate/1b362b36b5594d0d18ad5180530d2131.png)
七 通过年龄查询
1 GirlController
package com.imooc;
import java.util.List;
import javax.websocket.server.PathParam;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.DeleteMapping;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.PutMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
@RestController
public class GirlController {
@Autowired
private GirlRepository girlRepository;
@GetMapping(value="/girls")
public List<Girl> girlList(){
return girlRepository.findAll();
}
@PostMapping(value="girls")
public Girl girlAdd(@RequestParam("cupSize") String cupSize,
@RequestParam("age") Integer age){
Girl girl = new Girl();
girl.setCupSize(cupSize);
girl.setAge(age);
return girlRepository.save(girl);
}
@GetMapping(value="/girls/{id}")
public Girl girlFindOne(@PathVariable("id") Integer id)
{
return girlRepository.findOne(id);
}
@PutMapping(value="/girls/{id}")
public Girl girlUpdate (@PathVariable("id") Integer id,
@RequestParam("cupSize") String cupSize,
@RequestParam("age") Integer age){
Girl girl = new Girl();
girl.setId(id);
girl.setCupSize(cupSize);
girl.setAge(age);
return girlRepository.save(girl);
}
@DeleteMapping(value="/girls/{id}")
public void girlDelete(@PathVariable("id") Integer id){
girlRepository.delete(id);
}
@GetMapping(value="/girls/age/{age}")
public List<Girl> girlListByage(@PathVariable("age") Integer age){
return girlRepository.findByAge(age);
}
}
2 GirlRespository
package com.imooc;
import java.util.List;
import org.springframework.data.jpa.repository.JpaRepository;
public interface GirlRepository extends JpaRepository<Girl, Integer>{
public List<Girl> findByAge(Integer age);
}
3 测试结果
![](https://i-blog.csdnimg.cn/blog_migrate/aec96a2698dd368f91671228ccf10714.png)