SpringMvc快速入门之使用篇

文章是为告终合工做需求来介绍springmvc,本文章只是切合实际的开发的场景对springmvc进行快速的入门介绍。前端

  本篇文章不会对原理进行讲解。由于我的以为有些对于新技术方面能够分为一下几个层次。java

    1.如何去使用这门技术ajax

    2.它的原理是什么spring

    3.在理解原理的基础上,如何去模仿,json

      4.如何去进一步演化后端

  因此本篇文章只是停留在第一阶段而已。本人看过许多的springmvc入门的文章,固然不少很好的,可是并非我想要的,我要的想要的效果是,你一看文章就知道怎么去使用,在会使用的基础上,我再和你说这些原理。restful

  

  一.RestFul风格网络

   我在第一次看到这个名次的时候,第一反应是,这是什么,会不会很难。后来了解的才明白,其实你能够理解为这个是之前经过ajax请求方式。由于如今前端(包含客户端)愈来愈成熟。因此如今都是使用先后端分离比较多。这样子的话职责就清晰来。后端只负责将前端想要的数据经过json方式返回给前端就行。mvc只要添加@RestController注解,就觉得当前控制器使用的是restful风格,意味着返回值若是是对象会自动转化为json返回前端mvc

   1.GET请求app

//声明是restful风格
@RestController
public class RestFulController {

    @GetMapping("/get")
    public String getRequest(String name, int age ){

        return name+ "的年龄是"+age;
    }
}

  

  访问连接如红圈所示,返回值(即前端拿到的值如图所示)Tz的年龄是10

  固然咱们实际工做中大部分都是返回json使用。 

 

  

  @GetMapping("/get/responseJson")
    public Object getRequestAndresponseJson(String name){
        Map<String,Object> data = new HashMap();
        Map<String,Object> result = new HashMap();

        data.put("name", "TzSteady");
        data.put("age", "25");
        data.put("hobby", "hiphop");

        result.put("code","0");
        result.put("success","成功");
        result.put("data", data);
return result; }

  上面咱们最后返回来一个对象,并非一个JSON。但咱们请求的时候会你就会发现

  前端收到的返回值是一个json,这就是@RestController注解的其中一个魅力。

  

  2.POST请求

    在实际业务中咱们常常会使用表单提交或者json提交,下面这种是表单提交

    2.1 表单提交

    @PostMapping("/post")
    public Object postRequest(String name, int age, String hobby){
        
        return name+"的年龄是"+age+", 他的兴趣是"+hobby;
    }

 

 

 

    2.2 json 提交

      在实际生产中,常常会使用到json提交,咱们会将提交的参数包装一个参数类来接收前端提交的值,并使用@RequestBody将json请求转化为指定的bean

  @PostMapping("/post/json")
    public Object postRequestByJson(@RequestBody User user){

        return user.getName()+"的年龄是"+user.getAge()+", 他的兴趣是"+ user.getHobby();
    }

    前端使用的方式为

    

    这里值得一说的是,若是是使用json提交的话,前端须要设置头部的内容类型为json类型,也就是将Content-Type设置为application/json 

    固然若是是须要返回json的话,和上面get请求同样就行。

  3.delete请求

    我我的挺喜欢restful风格将请求都具体话,好比delete请求,很明显的让人知道,这个请求是删除行为的请求。

  

  @DeleteMapping("/delete")
    public Object deleteRequest(int userId){
        Map<String, Object> result = new HashMap<>();

        result.put("code", "0");
        result.put("mesaage", "删除成功");

        return result;
    }

  

  不过这种请求方式前端就会很纳闷了,由于前端所知道的只有get和post请求,那么前端如何发起一个delete请求呢

  其实就是data:{_method:"DELETE", userId: 1}在传参中再加一个_method参数便可。因此能够看出delete请求其实也是基于get/post请求。只不过是至关于有个必传参数_method并值为delete

  

  4.put请求

  除了以上几种方式,还常常用到得是put请求,put请求使用的场景大部分为update行为

  

    @PutMapping("/put")
    public Object putRequestByJson(@RequestBody User user){

        return user.getName()+"的年龄是"+user.getAge()+", 他的兴趣是"+ user.getHobby();
    }

  

 

以上是springmvc在网络请求方面常常使用到的。希望你们看到这篇文章后知道怎么使用。至于原理以及详细的讲解,在下篇再详细讲吧

相关文章
相关标签/搜索