Spring Boot介绍 Spring Boot RESTfull API快速搭建

简介

        Spring Boot是由Pivotal团队提供的全新框架,其设计目的是用来简化新Spring应用的初始搭建以及开发过程。该框架使用 了特定的方式来进行配置,从而使开发人员不再需要定义样板化的配置。通过这种方式,Spring Boot 致力于在蓬勃发展的快速应用开发领域(rapid application development)成为领导者。

        从 Spring Boot 项目名称中的 Boot 可以看出来,Spring Boot 的作用在于创建和启动新的基于 Spring 框架的项目。它的目的是帮助开发人员很容易的创建出独立运行和产品级别的基于 Spring 框架的应用。Spring Boot 会选择最适合的 Spring 子项目和第三方开源库进行整合。大部分 Spring Boot 应用只需要非常少的配置就可以快速运行起来。
    
        Spring Boot 包含的特性如下:
            创建可以独立运行的 Spring 应用。
            直接嵌入 Tomcat 或 Jetty 服务器,不需要部署 WAR 文件。
            提供推荐的基础 POM 文件来简化 Apache Maven 配置。
            尽可能的根据项目依赖来自动配置 Spring 框架。
            提供可以直接在生产环境中使用的功能,如性能指标、应用信息和应用健康检查。
            没有代码生成,也没有 XML 配置文件。

        通过 Spring Boot,创建新的 Spring 应用变得非常容易,而且创建出的 Spring 应用符合通用的最佳实践。只需要简单的几个步骤就可以创建出一个 Web 应用。

开发环境配置

        如果开发环境为Eclipse,Spring Boot推荐我们安装它的插件Spring Tool Suite,可以快速实现Spring Boot的项目搭建等

        实现热部署
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-devtools</artifactId>
</dependency>
        代码有修改(修改代码、新增方法、新增类等),会自动编译修改的代码。
        关于Spring Boot 热部署介绍: http://blog.csdn.net/zhoujinyu0713/article/details/46843115
        IDEA 无法实现热部署配置: http://blog.csdn.net/wjc475869/article/details/52442484
        
        Spring 官方还提供一种热部署的方式,不用重启,但是新增方法和类是无法热部署的,具体参考: http://docs.spring.io/spring-boot/docs/current/reference/html/howto-hotswapping.html

创建项目

        使用 IntelliJ IDEA 创建 Spring Boot项目
        
        其他一般都默认,后生成标准的maven项目,update下maven project 即可下载对应依赖,下载完的项目结构
        

        我们可以来分析下pom文件,只有一个如下的配置
<artifactId>spring-boot-starter-web</artifactId>
        查看依赖时会发现其中包含了 Spring MVC 框架、SLF4J、Jackson和 Tomcat 等依赖。这实际上 Spring 推荐的 Web 应用中使用的开源库的组合
        
        
编写并访问API

        创建TestController 类
@RestController
@RequestMapping("test")
public class TestController {

/**
* 不区分get post
* localhost/test
* @author [email protected]
* @return
*/
@RequestMapping("")
String test() {
return "hello world";
}
}
        启动*Application.java 即可启动默认的内嵌容器
        
        访问
        

 直接返回json

        直接返回json,自动编译序列化为json格式
/**
* 返回Mapjson
*
* @return
*/
@RequestMapping("testMap")
Map<String, Object> testMap() {
Map<String, Object> map = new HashMap<>();
map.put("name", "jerome");
map.put("age", 26);
return map;
}

/**
* 返回Listjson
*
* @return
*/
@RequestMapping("testList")
List<String> testList() {
List<String> list = new ArrayList<>();
list.add("苏志达");
list.add("jerome");
return list;
}

/**
* 返回实体的json
*
* @return
*/
@RequestMapping("testModel")
User testModel() {
User user = new User("苏志达", 26, 0, new Date(), 99.6);
return user;
}
返回格式效果:
        

        (对于以上时间格式的问题可以修改配置文件: application.properties
#时间格式化
spring.jackson.date-format=yyyy-MM-dd HH:mm:ss
#时区设置
spring.jackson.time-zone=Asia/Chongqing

访问资源


        我们只要将静态资源放到  resources/ static 即可通过项目跟路径直接访问
        
打包部署

        在项目根路径下使用maven命令打包: mvn clean package  

        将target目录下的jar拷贝,并运行项目: java –jar  demo_spring_boot-0.0.1-SNAPSHOT.jar  


参考
        
代码


发布了201 篇原创文章 · 获赞 98 · 访问量 77万+

猜你喜欢

转载自blog.csdn.net/Jerome_s/article/details/54291307