从SpringBoot到SpringCloudAlibaba简明教程(一):初识SpringBoot及其基础项目构建


前言

Spring框架的大名想必大家早已如雷贯耳,我们来看一下springboot诞生的初衷,以及它在springframe的基础上解决了哪些痛点。

很久以前,J2EE还是java企业级应用的标准规范之时,spring以其轻量级开发的理念顺势杀出,一路势如破竹,逐渐取代J2EE成为王者。但随着人们对spring深入使用,其中的弊端也逐渐显现出来,其中最典型的便是——配置地狱。

springboot诞生于spring后续的迭代版本,为了解决spring原框架中的一系列痛点,首次提出了“约定大于配置”的理念,以大量的默认配置、注解机制以及内嵌web服务等方式,巧妙且极大的简化了spring配置负担,并且通过统一的starters标准,配合maven实现了三方模块的极简化集成。

SpringBoot是一次真正意义上的现代化java编程思想,在其后端微服务领域的核心体现。

本节我们先来初窥一二,看看如何快速完成基于springboot的基础项目搭建。

首先ide选择IntelliJ IDEA,最好用的java开发环境没有之二,谁用谁知道哈 ^_^

大家可以到官网下载免费社区版,除了不能定制,基本功能完全够用

https://www.jetbrains.com/zh-cn/idea/download/#section=windows


1. 新建工程

我们选择新建工程(file – new project),选择Spring Initializr,如图:


这里首先是选择springboot初始化工具,图中的https://start.spring.io是官方提供的,此外官方也允许第三方服务的个性化定制,比如我常用的是阿里云提供的服务。

点击next.

2. 工程命名并选择依赖库

我们给工程命名为hellospringboot,Java版本我用了默认的java8,其他各项直接默认即可,如图点击next


接下来是依赖库的选择


这里足可以体现出springboot的强大之处,各种依赖库应有尽有,web开发、前端模板、关系型数据库、非关系型数据库、以及后续我们会涉及的微服务等相关组件都放在那里,你只需要根据项目需要勾选即可将其功能完整的整合进来。

我们先只选择一项web开发,别担心,后续有其他需求我们可以随时编写maven完成功能整合,点击next继续。

3. 完成工程构建

选择工程路径,点击finish即可完成springboot基础工程的构建。

构建完毕后的工程如图所示


其中HellospringbootApplication.java是入口文件,pom.xml是maven的工程配置文件,详细描述了整个工程的依赖关系,我们可以双击打开看其中的内容


dependencies是工程依赖的三方库清单,其中的spring-boot-starter-web对应我们先前勾选的web开发依赖项

4. 修改配置文件


我们双击打开resources下的application.properties文件,可以看到当前的工程配置信息:

# 应用名称

spring.application.name=hellospringboot

# 应用服务 WEB 访问端口

server.port=8080

可以看到springboot工程的配置形式非常简洁明了。

这里目前只有应用名称和访问端口两项配置,端口默认为8080,我们可以按需改为80或者其他端口配置。

后续随着我们逐步引入其他三方库,会继续在这个文件下逐步添加其他相关配置。

其实到这里,整个工程就可以执行了。

我们执行工程,然后浏览器访问 localhost:8080 看效果


这是因为我们尚未完成springboot相关的路由映射

5. 新增controller,并实现简单的业务逻辑

我们新建controller包,并创建MainController,如下图所示


编写相关代码:

package com.example.hellospringboot.controller;

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

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

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

@RestController

@RequestMapping("/")

public class MainController {

    @GetMapping("/")

    public String index(){

        return "hello Spring Boot !!!";

    }

}


这里我们用到了一些常用的注解,后续我会给大家逐个阐述其相关含义及作用。

我们重新打开浏览器访问localhost:8080,便会看到如下字样:



到此我们便完成了一个基础springboot项目构建的全过程,同时也对springboot有了一个大致概念上的认知。

本节就到这里,下一节给大家讲述如何使用springboot快速实现简单的web开发,敬请期待 ^_^

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 214,444评论 6 496
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 91,421评论 3 389
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 160,036评论 0 349
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 57,363评论 1 288
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 66,460评论 6 386
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 50,502评论 1 292
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 39,511评论 3 412
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 38,280评论 0 270
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 44,736评论 1 307
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,014评论 2 328
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,190评论 1 342
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 34,848评论 5 338
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 40,531评论 3 322
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,159评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,411评论 1 268
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 47,067评论 2 365
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 44,078评论 2 352

推荐阅读更多精彩内容