微架构 springcloud-01. springBoot Hello World!

什么是Springboot?

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

Springboot 特点

  1. 创建独立的Spring应用程序
  2. 嵌入的Tomcat,无需部署WAR文件
  3. 简化Maven配置
  4. 自动配置Spring
  5. 提供生产就绪型功能,如指标,健康检查和外部配置
  6. 绝对没有代码生成和对XML没有要求配置

第一个Springboot 程序:hello World!

  1. 首先进入Springboot 官网 https://projects.spring.io/spring-boot,了解相关信息,如maven 配置:

    org.springframework.boot
    spring-boot-starter-parent
    1.5.10.RELEASE


    
        org.springframework.boot
        spring-boot-starter-web
    

  1. 新建一个 maven web 项目
├─src
│  └─main
│      ├─java
│      ├─resources
│      └─webapp
└─pom.xml
  1. 在pom.xml 文件中添加 [01] 步中maven 依赖
  1. 新建启动类,person.jack.App.java,代码如下:
package person.wuchao;

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

@SpringBootApplication
public class App {
    public static void main(String[] args) {
        SpringApplication.run(App.class, args);
    }
}
  1. 新建Controller 类 person.jack.controller.Hello.java,代码如下:
package person.wuchao.controller;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.context.ApplicationContext;
import org.springframework.web.bind.annotation.*;
import person.wuchao.bean.Person;

/**
* 定义一个REST 风格 Controller
*/
@RestController 
public class Hello {

    @ResponseBody
    @GetMapping("/hello") //定义一个Get 请求映射
    public String hello(){
        return "Hello SpringBOOT!";
    }
    
}

  1. 运行[04]步中的main 方法,即:启动项目
"C:\Program Files\Java\jdk1.8.0_91\bin\java" "-javaagent:C:\Program Files\JetBrains\IntelliJ IDEA 2017.3.2\lib\idea_rt.jar=50720:C:\Program Files\JetBrains\IntelliJ IDEA 
  .   ____          _            __ _ _
 /\\ / ___'_ __ _ _(_)_ __  __ _ \ \ \ \
( ( )\___ | '_ | '_| | '_ \/ _` | \ \ \ \
 \\/  ___)| |_)| | | | | || (_| |  ) ) ) )
  '  |____| .__|_| |_|_| |_\__, | / / / /
 =========|_|==============|___/=/_/_/_/
 :: Spring Boot ::       (v1.5.10.RELEASE)
2018-02-05 23:14:44.808  INFO 22712 --- [  restartedMain] o.s.b.d.a.OptionalLiveReloadServer       : LiveReload server is running on port 35729
2018-02-05 23:14:44.853  INFO 22712 --- [  restartedMain] o.s.j.e.a.AnnotationMBeanExporter        : Registering beans for JMX exposure on startup
2018-02-05 23:14:44.955  INFO 22712 --- [  restartedMain] s.b.c.e.t.TomcatEmbeddedServletContainer : Tomcat started on port(s): 8080 (http)

# 服务启动成功,springboot 默认采用tomcat容器,默认http端口为:8080

  1. 启动浏览器,访问:http://localhost:8080/hello
# 页面打印
Hello SpringBOOT!
  1. 至此,第一个Springboot程序完成!
  1. 分析:
  1. 从业务使用来看,似乎同SpringMVC很类似;不错,SpringBoot 采用的本身就是SpringMVC

  2. 没有了SpringMVC 繁琐的xml 配置文件

  3. maven 配置大大简化,该例我们只写入了一个maven 依赖

  4. 启动方式发生了改变,没有再手动配置容器(Tomcat)

    这就是Spirngboot,可以简单的把它看成是对Springmvc 的开发优化

  1. 热部署,在实际开发工程中源代码经常更改,若每次手动重启则太浪费时间,Springboot 提供了一个devtools 包,自动重启以节约时间提高开发效率,使用方法:在maven 中添加devtools依赖即可:

  org.springframework.boot
  spring-boot-devtools

# 这个时候再改动源码,idea(或eclipse)并重新编译(Ctrl+B or Ctrl+F9),服务就会自动重启

你可能感兴趣的:(微架构 springcloud-01. springBoot Hello World!)