介绍
介绍
使用 SpringBoot 开发 RESTFul 风格的接口是很方便的,通过 @RestController 注解就可以将对象的方法以 RESTFul 风格发布出去
今天我们来学习如何在 @RestController 里使用 GET变量、POST变量、PATH变量、上传文件变量
教程
GET变量
就是 QueryString 里面的参数
@RequestMapping("/user") public User responseUser( @RequestParam(value = "id") Integer id ){ EntityManager entityManager = new EntityManager(ds); User user; user = entityManager.createUser(id); return user; }
POST变量
就是 HTTP Body 里面的参数
@RequestMapping(value = "/user", method = RequestMethod.POST) public User responseUser( @RequestParam(value = "id") Integer id ){ EntityManager entityManager = new EntityManager(ds); User user; user = entityManager.createUser(id); return user; }
PATH变量
就是 Request URI 里面的参数
@RequestMapping(value = "/user/{id}") public User responseUser( @PathVariable(value = "id") Integer id ){ EntityManager entityManager = new EntityManager(ds); User user; user = entityManager.createUser(id); return user; }
上传文件变量
上传文件一定是 POST 请求
@RequestMapping(value = "/user", method = RequestMethod.POST) @ResponseBody public Map<String, String> responseUser( @RequestParam("file") MultipartFile file ){ Map<String, String> map = new HashMap<>(); try{ map.put("originFilename", file.getOriginalFilename()); map.put("name", file.getName()); map.put("type", file.getContentType()); map.put("size", String.format("%s", file.getSize())); } catch (Exception e){ e.printStackTrace(); } return map; }