接着上一次对men表的增删改查
首先实现Jpa接口
public interface MenRepository extends JpaRepository<Men, Integer> {
}
写一个MenController
@RestController
@RequestMapping("/men")
public class MenController {
@Autowired
MenRepository mp;
}
查询所有
/**
* 查询所有人
*/
@GetMapping("/getAll")
public List<Men> getAllMen(){
return mp.findAll();
}
在postman里选GET方式,访问:localhost:8080/men/getAll
[
{
"id": 1,
"name": "lonely",
"age": 20
},
{
"id": 2,
"name": "jimo",
"age": 19
}
]
添加一个人
/**
* 添加一个人
*/
@PostMapping("/addMen")
public Men addOneMen(@RequestParam("name") String name, @RequestParam("age") Integer age) {
Men men = new Men();
men.setAge(age);
men.setName(name);
return mp.save(men);
}
在PostMan里选择post方式,并传入参数,访问:localhost:8080/men/addMen
返回插入的对象:
{
"id": 3,
"name": "lily",
"age": 20
}
根据id查询
直接将id放在链接里
/**
* 根据id查询
*/
@GetMapping("/getMen/{id}")
public Men getMenById(@PathVariable("id")Integer id){
return mp.findOne(id);
}
访问:localhost:8080/men/getMen/2
{
"id": 2,
"name": "jimo",
"age": 19
}
修改数据
/**
* 更新
*/
@PutMapping("/updateMen/{id}")
public Men updateMen(@PathVariable("id") Integer id, @RequestParam("name") String name,
@RequestParam("age") Integer age) {
Men men = new Men();
men.setId(id);
men.setAge(age);
men.setName(name);
return mp.save(men);
}
注意,这里在PostMan里选择put方式,且看下图:

会返回更新后的对象。
删除对象
/**
* 删除
*/
@DeleteMapping("/deleteMen/{id}")
public void deleteMen(@PathVariable("id") Integer id) {
mp.delete(id);
}
选择delete方式访问:localhost:8080/men/deleteMen/2
自定义查询-根据年龄
在接口中添加方法:
public List<Men> getAllMenByAge(Integer age);
在controller里:
/**
* 根据年龄查询
*/
@GetMapping("/getByAge/{age}")
public List<Men> getMenByAge(@PathVariable("age") Integer age) {
return mp.getAllMenByAge(age);
}
选择GET方式访问:localhost:8080/men/getByAge/20
[
{
"id": 1,
"name": "lonely",
"age": 20
},
{
"id": 3,
"name": "lily",
"age": 20
}
]