zoukankan      html  css  js  c++  java
  • Spring简单的REST例子

    • 控制器处理 HTTP 的4个主要方法 GET,POST,PUT,DELETE
    • 使用@PathVariable注解获取URL中的参数
    import javax.inject.Inject;
    import javax.validation.Valid;
    import org.springframework.stereotype.Controller;
    import org.springframework.ui.Model;
    import org.springframework.web.bind.annotation.PathVariable;
    import org.springframework.web.bind.annotation.RequestMapping;
    import org.springframework.web.bind.annotation.RequestMethod;
    import com.habuma.spitter.domain.Spittle;
    import com.habuma.spitter.service.SpitterService;
    
    @Controller
    @RequestMapping("/spittles") //<co id="co_spittlesRequestMapping"/> 
    public class SpittleController {
      private SpitterService spitterService;
      
      @Inject
      public SpittleController(SpitterService spitterService) {
        this.spitterService = spitterService;
      }
      
      @RequestMapping(value="/{id}", method=RequestMethod.GET)
    //  @ResponseStatus(HttpStatus.CREATED)  HTTP返回状态码
      public String getSpittle(@PathVariable("id") long id,
              Model model) {
        model.addAttribute(spitterService.getSpittleById(id));
        return "spittles/view";
      }
      /**
      * @ResponseBody 把返回结果自动封装成json
      * @RequestBody  把请求到服务器的json自动封装成对象
      */
      @RequestMapping(value = "/person/login", method = RequestMethod.POST)  
      public @ResponseBody  
        Person login(@RequestBody Person person) {  
            return person;  
        }  
    }

     参考:

      [1] 《Spring实战》,人民邮电出版社, Craig Walls

  • 相关阅读:
    利用HttpClient进行带参数的http文件上传
    使用mysqlproxy 快速实现mysql 集群 读写分离 [转]
    SQL Server Express 自动备份方法
    screen 配置文件
    linux启动DHCP
    dynamic table_name in cursor
    LogMiner and supplemental logging
    RAC 规划配置网络环境
    RAC prepare OS and installation media
    一次导数据流程
  • 原文地址:https://www.cnblogs.com/happyflyingpig/p/8022822.html
Copyright © 2011-2022 走看看