Spring Boot 学习2--Spring Boot返回json数据

来源:互联网 发布:狗狗爱 蝴蝶结 知乎 编辑:程序博客网 时间:2024/06/06 17:50

        在做如下操作之前,我们对之前的Hello进行简单的修改,我们新建一个包com.kfit.test.web 然后新建一个类HelloControoler, 然后修改App.java类,主要是的这个类就是一个单纯的启动类。

主要代码如下:

App.java

packagecom.kfit;

 

importorg.springframework.boot.SpringApplication;

importorg.springframework.boot.autoconfigure.SpringBootApplication;

/**

 * Hello world!

 *

 */

//其中@SpringBootApplication申明让spring boot自动给程序进行必要的配置,等价于以默认属性使用@Configuration@EnableAutoConfiguration@ComponentScan

@SpringBootApplication

publicclassApp {

              publicstatic void main(String[] args) {

                 SpringApplication.run(App.class, args);

       }

}

 

 

com.kfit.test.web.HelloController 

package com.kfit.test.web;

 

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

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

 

@RestController// 标记为:restful

publicclass HelloController {

   

    @RequestMapping("/")

    public String hello(){

       return"Hello world!";

    }

}

 

运行代码和之前是一样的效果的。

 

我们在编写接口的时候,时常会有需求返回json数据,那么在spring boot应该怎么操作呢?主要是在class中加入注解@RestController,

返回JSON之步骤:

       (1)编写一个实体类Demo

   (2)编写DemoController

   (3)DemoController加上@RestController@RequestMapping注解;

   (4)测试

具体代码如下:

com.kfit.test.bean.Demo :

package com.kfit.test.bean;

/**

 * 测试实体类.

 * @author Administrator

 *

 */

publicclass Demo {

    privatelongid;//主键.

    private String name;//测试名称.

    publiclong getId() {

       returnid;

    }

    publicvoid setId(longid) {

       this.id = id;

    }

    public String getName() {

       returnname;

    }

    publicvoid setName(String name) {

       this.name = name;

    }

}

 

com.kfit.test.web.DemoController:

package com.kfit.test.web;

 

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

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

 

import com.kfit.test.bean.Demo;

 

/**

 * 测试.

 * @author Administrator

 *

 */

@RestController

@RequestMapping("/demo")

publicclass DemoController {

   

    /**

     * 返回demo数据:

     * 请求地址:http://127.0.0.1:8080/demo/getDemo

     * @return

     */

    @RequestMapping("/getDemo")

    public Demo getDemo(){

       Demo demo = new Demo();

       demo.setId(1);

       demo.setName("Angel");

       returndemo;

    }

   

}

 

 

 

那么在浏览器访问地址:http://127.0.0.1:8080/demo/getDemo 返回如下数据:

{

id1,

name"Angel"

}

 

       是不是很神奇呢,其实Spring Boot也是引用了JSON解析包Jackson,那么自然我们就可以在Demo对象上使用Jackson提供的json属性的注解,对时间进行格式化,对一些字段进行忽略等等。

0 0