Hello , Spring Boot

Spring Boot

Spring Boot主要目的是简化了Spring的引用开发,遵循约定大于配置的思想,不需要我们再去配置就能运行Spring应用,Spring Boot管理Spring容器,第三方插件,并且提供了很多默认系统级的服务。大部分Spring应用,无论是简单的WEB系统还是构建复杂的系统,都自需要少量配置和代码就能完成,去繁从简,这样的结果就能让我们很快的创建一个独立的,产品级别的应用。

背景:J2EE笨重的开发、繁多的配置、低下的开发效率、复杂的部署流程、第三方技术集成难度大。

解决:

  • “Spring全家桶”时代
  • Spring Boot -> J2EE一站式解决方案
  • Spring Cloud -> 分布式整体解决方案
用户解决方案

Spring Boot 通过 Starter 来提供微服务,Spring Boot 已经提供了一系列 Starter,你也可以开发自己的starter,比如需要开发一个Web应用,只需要在pom.xml中进行一下声明即可。

<!-- https://mvnrepository.com/artifact/org.springframework.boot/spring-boot-starter-web -->
<!-- 这是引用一个WEB应用,很简单吧 -->
<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-web</artifactId>
    <version>2.0.3.RELEASE</version>
</dependency>

Spring Boot 相对与Spring框架的优点有哪些?

  • 实现约定大于配置,是一个低配置的应用系统框架。不像Spring那样“地狱般的配置体验”,想一下你们配置SSM整合的过程(难受啊!),Spring Boot 不需要配置或者极少配置,就能使用Spring大量的功能。
    • 大量的自动配置,简化开发,也可修改默认值
    • 无需配置XML,无代码生成,开箱即用
  • 提供了内置的Tomcat或者Jetty容器,应用无需打成WAR包。
  • starters 自动依赖与版本控制,通过依赖的jar包管理,自动装配技术,容易支持与其他技术体系,工具集成。
  • 支持热加载(无需重新服务器),开发体验好。
  • 支持Spring Boot 系统监控,方便了解系统运行状况。
  • 与云计算的天然集成

Hello,Spring Boot

体验完成一个简单的WEB应用"Hello,Spring Boot!!",示例中使用的环境为

- JDK1.8
- Maven 3.X
- Intellij IDE 2018
- Spring Boot 2.0.3.RELEASE

Maven的设置

<profile>
  <id>jdk-1.8</id>
  <activation>
    <activeByDefault>true</activeByDefault>
    <jdk>1.8</jdk>
  </activation>
  <properties>
    <maven.compiler.source>1.8</maven.compiler.source>
    <maven.compiler.target>1.8</maven.compiler.target>
    <maven.compiler.compilerVersion>1.8</maven.compiler.compilerVersion>
  </properties>
</profile>

一个功能:浏览器发送hello请求,服务器接受请求并处理,响应Hello World字符串;

(1) 创建项目,选择Spring starter Project

image

(2)点击Next,填写跟项目相关的各种信息(我们要做WEB项目)

image

(3) 选择需要的Dependency,然后Next

在这里的版本,我没有使用最新版,因为在使用的阿里云中心中无法下载,所以我使用的2.0.4的版本

image
image

(4) 最后"Finish",就开始下载jar包了,这个过程需要的时间比较长

image

(5) 等待完毕之后的效果图如下,我调整了一下核心Application启动的位置

要将Application类放在最外侧,即包含所有子包
原因:spring-boot会自动加载启动类所在包下及其子包下的所有组件.

image

(6) 新建controller包,完成相关的测试

package com.hanpang.controller;

import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.servlet.ModelAndView;

@Controller
public class Demo01Controller {

    @GetMapping("/test01")
    public ModelAndView test01() {
        System.out.println("Hello World");
        return null;
    }
}

(7) 右键运行Demo01Application启动类

image

(8) 在地址栏中访问,没有发布路径

image
image

其实整个过程你感觉很简单,中间过程也是遇到了各种错误,希望大家增加动手能力和解决问题的能力

备注:Spring Boot默认启动的是8080端口,WEB上下文是“/”,可以通过application.properties来进行重新配置

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 近期目标:2.10前额外收入2W元 种子实践: 1.今天是孩子们舞蹈汇演的时间。一大早起来,精心准备了热可可装在保...
    jessie娟子阅读 301评论 0 0
  • 今天猪猪半夜给我拿了吃的
    烟涩寒阅读 153评论 0 0
  • 鲜花盛开在无痕的教育之路上 初见李凤老师是在市教育局举办...
    昔日从来阅读 597评论 0 1
  • 在2018年的凌晨,这个时候,我没有睡。我也不知道我为什么没有睡,意识让我的身体不要睡着。而我又为什么这样做了,...
    章天阅读 263评论 0 0