irpas技术客

【Spring boot 返回 json 数据】_springboot返回json数据_God Zhang

网络 2736

Spring boot 返回 json 数据 在做如下操作之前,我们对之前的 Hello 进行简单的修改,我们新建一个包 com.hpit.test.web 然后新建一个类 HelloControoler, 然后修改 App.java 类,主要是的这个类就是一个单纯的启动类。 主要代码如下: App.java iackage com.hpit; import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; /** * Hello world! */ // 其中 @SpringBootApplication 申明让 spring boot 自动给程序进行必要的配置,等价于以默认属性使用 // @Configuration , @EnableAutoConfiguration 和 @ComponentScan //@SpringBootApplication public class App { public static void main(String[] args) { SpringApplication.run(App.class, args); } } com.hpit.test.web.HelloController : package com.hpit.test.web; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController; @RestController // 标记为: restful public class HelloController { @RequestMapping ( "/" ) public String hello(){ return "Hello world!" ; } } 运行代码和之前是一样的效果的。 我们在编写接口的时候,时常会有需求返回 json 数据,那么在 spring boot 应该怎么操作呢?主要是在 class 中 加入注解@RestController,。 返回 JSON 之步骤: (1)编写一个实体类 Demo (2)编写 DemoController; (3)在 DemoController 加上@RestController 和@RequestMapping 注解; (4)测试 具体代码如下: com.hpit.test.bean.Demo : package com.hpit.test.bean; /** * 测试实体类 . * @author Administrator * */ public class Demo { private long id ; // 主键 . private String name ; // 测试名称 . public long getId() { return id ; } public void setId( long id ) { this . id = id ; } public String getName() { return name ; } publicvoid setName(String name ) { this . name = name ; } } com.hpit.test.web.DemoController: package com.hpit.test.web; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController; import com.hpit.test.bean.Demo; /** * 测试 . * @author Administrator * */ @RestController @RequestMapping ( "/demo" ) public class 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( "Zjs" ); return demo ; } } 那么在浏览器访问地址: http://127.0.0.1:8080/demo/getDemo 返回如下数据: { id : 1 , name : "Zjs" } 是不是很神奇呢,其实 Spring Boot 也是引用了 JSON 解析包 Jackson,那么自然我们就可以在 Demo 对象上使 用 Jackson 提供的 json 属性的注解,对时间进行格式化,对一些字段进行忽略等等。 Spring boot 热部署 在编写代码的时候,你会发现我们只是简单把打印信息改变了下,就需要重新部署,如果是这样的编码方式,那 么我们估计一天下来之后就真的是打几个 Hello World 之后就下班了。那么如何解决热部署的问题呢?那就是 springloaded,加入如下配置: < plugin > < groupId > org.springframework.boot </ groupId > < artifactId > spring-boot-maven-plugin </ artifactId > <!-- 配置热部署 --> < dependencies > < dependency > < groupId > org.springframework </ groupId > < artifactId > springloaded </ artifactId > < version > 1.2.4.RELEASE </ version > </ dependency > </ dependencies > < executions > < execution > < goals > < goal > repackage </ goal > </ goals > < configuration > < classifier > exec </ classifier > </ configuration > </ execution > </ executions > </ plugin > 如果是使用 spring-boot:run 的话,那么到此配置结束,现在你就可以体验 coding…coding 的爽了。 如果使用的 run as – java application 的话,那么还需要做一些处理哦: 把 spring-loader-1.2.4.RELEASE.jar 下载下来,放到项目的 lib 目录中,然后把 IDEA 的 run 参数里 VM 参数设 置为: -javaagent:.\lib\springloaded-1.2.4.RELEASE.jar -noverify 然后启动就可以了,这样在 run as 的时候,也能进行热部署了。


1.本站遵循行业规范,任何转载的稿件都会明确标注作者和来源;2.本站的原创文章,会注明原创字样,如未注明都非原创,如有侵权请联系删除!;3.作者投稿可能会经我们编辑修改或补充;4.本站不提供任何储存功能只提供收集或者投稿人的网盘链接。

标签: #Spring #Boot #返回 #JSON #数据