2015年5月21日木曜日

簡単!Spring frameworkでWEBAPIを作る

に続いて、RestAPIとやらを作ってみます。



コントローラーを作成します。

package demo.controller;

import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;

@RestController
public class DemoRestController {
 @RequestMapping("/restdemo")
 public Map demo(String name) {
  Map ret = new HashMap();
  ret.put("name", name);
  List list = new ArrayList();
  list.add(name);
  list.add(name);
  ret.put("list", list);
  Map map = new HashMap();
  map.put("name", name);
  ret.put("map", map);
  return ret;
 }
}

ちょっと長いですが、「List<String>~ret.put("map", map);」の行はなくてもいいです。
また、コントローラーからの返却値をMapではなく、独自のモデルにするのもNiceな考えですね。

demo/model/DemoModel.java
package demo.model;

public class DemoModel {
 private String name;
 public String getName() {
  return name;
 }
 public void setName(String name) {
  this.name = name;
 }
}

demo/controller/DemoRestController.java
package demo.controller;

import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;

import demo.model.DemoModel;

@RestController
public class DemoRestController {
 @RequestMapping("/restdemo")
 public DemoModel demo(String name) {
  DemoModel ret = new DemoModel();
  ret.setName(name);
  return ret;
 }
}


で、Spring boot appを起動させて
にアクセスすると


完成!

実際にリクエストを投げてテストする時にPostmanというChromeのプラグインを使用しています。

0 件のコメント:

コメントを投稿