SpringBoot2.x请求注解简单介绍(4)

1.新建项目,项目中实战讲解注解作用

2.pom.xml依赖配置

<properties>
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
</properties>
<parent>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-parent</artifactId>
    <version>2.0.1.RELEASE</version>
</parent>
<dependencies>
    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-web</artifactId>
    </dependency>
</dependencies>

3.Application.java 程序入口配置

package xiaobing.demo;

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;

@SpringBootApplication
public class Application {

    public static void main(String[] args) {
        SpringApplication.run(Application.class,args);
    }
}

4.demo映射

package xiaobing.demo.controller;

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

@RestController
public class Example {

    @RequestMapping("/")
    String home() {
        return "Hello World!";
    }
}

5.注解详解

5.1 @SpringBootApplication = @Configuration+@EnableAutoConfiguration+@ComponentScan

 

@SpringBootApplication
public class Application {

    public static void main(String[] args) {
        SpringApplication.run(Application.class,args);
    }
}
//等同于:
@SpringBootConfiguration
@EnableAutoConfiguration
@ComponentScan
public class Application {

    public static void main(String[] args) {
        SpringApplication.run(Application.class,args);
    }
}

5.2 @RestController and @RequestMapping是springMVC的注解,不是springboot特有的注解

即 @RestController = @Controller+@ResponseBody

@RestController
public class Example {

    @RequestMapping("/")
    String home() {
        return "Hello World!";
    }
    
    @RequestMapping("/test")
    public Map<String, String> map(){
        Map<String, String> map = new HashMap<String, String>();
        map.put("name","张三");
        map.put("age","25");
        
        
        return map;
    }
}
//等同于:
@Controller
public class Example {
    @RequestMapping("/")
    @ResponseBody
    String home() {
        return "Hello World!";
    }    
    @RequestMapping("/test")
    @ResponseBody
    public Map<String, String> map(){
        Map<String, String> map = new HashMap<String, String>();
        map.put("name","张三");
        map.put("age","25");    
        return map;
    }
}

6.启动项目

 

7.常用json框架Jackson返回结果的处理

  指定字段不返回:@JsonIgnore//响应中不展示

  指定返回日期格式:@JsonFormat(pattern="yyyy-MM-dd hh:mm:ss",locale="zh",timezone="GMT+8")

  空字段不返回:@JsonInclude(Include.NON_NULL)

  响应中指定别名:@JsonProperty

8.后续补充

原文地址:https://www.cnblogs.com/xiaozhaoboke/p/11831798.html