一.SpringBoot入门(1)

最近听到SpringBoot,微服务的关键词越来越多。问了一下在工作的朋友,他说他们好几个项目重构已经使用了SpringBoot了,感觉SpringBoot是未来的趋势,毕竟技术不断迭代,很多繁杂的东西终将会被抛弃~

1.SpringBoot简介

SpringBoot是用来简化Spring应用开发的,约定大于配置,去繁从简符合了时代的发展。just run就能创建一个独立的,产品级别的应用
背景:
回想一下我们刚学javaee的时候,学到框架知识的时候(目前流行的Spring,SpringMVC,Mybatis);整合起来脑袋非常疼,繁多的配置,不断的依赖,不断的配置bean,很多的时候时间都花在了搭建工程上面,真是想起来头都大!
解决:
发现了弊端,就要想解决方法,这个时候SpringBoot出现了,SpringBoot就是Spring的全家桶,请看以下的图片。从图片中我们可以看出SpringBoot集成了我们以前用过的很多东西,jdbc,SpringMVC等

image.png

优点:

  • 快速创建独立运行的Spring项目以及主流框架的整合
  • 使用嵌入式Servlet容器,应用无需打包成WAR包(连Tomcat也省了!!!)
  • starters自动依赖与版本控制(依赖都来这里啦!)
  • 大量的自动配置,简化开发,也可以修改默认值(还要看见xml吗?从此说拜拜!)
  • 无需配置XML,无代码生成
  • 准生成环境的运行时应用监控(随时随地,掌握信息!)
  • 与云计算的天然集成(高大上,不太懂。。。)

2.微服务

说到SpringBoot也不得不提一个最近也很火的概念----微服务;微服务是一位大牛提出来的,里面有详细的文章介绍(传送门:https://martinfowler.com/articles/microservices.html#MicroservicesAndSoa)。
单体应用
我们来看看我们以前传统的应用,我们以前一般都是All In One,就是所有功能,模块都写在同一个工程中

image.png

我们把所有的页面,代码都放在一个应用里面打包成war包放在tomcat里面,这种模式的优点是:开发测试简单,因为都是在一个应用里面,不涉及多个应用的互调等;容易部署;容易水平扩展,当我们一个服务器跑不动的时候,弄个集群,弄个负载均衡。缺点是:容易牵一发而动全身,改了某些功能,会影响整个系统的运作,又要重新部署;日益增长的软件需求,我们现在谈到一个分布式的概念,如果我们全部功能都集成在一个工程下面的话,我们的团队合作会受阻,维护也会成为问题
微服务
每一个功能元素最终都是一个可独立替换和独立升级的软件单元;

image.png

微服务由于被分割成很多服务,因此对于运维和配置、部署也太麻烦了~那么怎么解决呢?
这就要用SpringBoot啦
观察一下官方SpringBoot的图,配置我们可以用SpringBoot来快速搭建,服务之间怎么通信调用呢,我们用SpringCloud,一些批处理怎么处理呢我们利用DataFlow来解决
image.png

微服务和SOA(面向服务的架构)的区别
在了解微服务的时候由于是分布式的,这个时候想起了以前接触过的一个知识点SOA架构,分享比价好的一篇文章
https://blog.csdn.net/yingzai1010/article/details/79459463

3.环境准备

利用SpringBoot开发,要准备一下环境

  • JDK1.8(推荐使用1.7以上)
  • maven3.X(我用的是3.3.9)
  • Idea(神器,赶紧上手吧)
  • SpringBoot 1.5.2.RELEASE;

4.创建一个SpringBoot案例

1.创建一个Maven工程


image.png

2.填写对应信息


image.png

3.导入相关依赖
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring‐boot‐starter‐parent</artifactId>
<version>1.5.2.RELEASE</version>
</parent>
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring‐boot‐starter‐web</artifactId>
</dependency>
</dependencies> 

4.编写一个主程序

/**
 * @SpringBootApplication 标注一个主程序类,说明这是一个SpringBoot应用
 */
@SpringBootApplication
public class HelloApplication {

    public static void main(String[] args) {
        SpringApplication.run(HelloApplication.class,args);
    }
}

5.编写Controller

@ResponseBody
@Controller
public class HelloController {

    @RequestMapping("/hello")
    public String hello() {
        return "Hello SpringBoot";
    }
}

6.运行主程序
现在没有tomcat了我们怎么让程序跑起来呢?我们前面说了,SpringBoot有内嵌的Tomcat,因此我们直接运行主程序就好了


image.png

image.png

这样就是成功的了。
我们来访问一下这个路径,发现就是我们想要的结果


image.png

7.打成jar包部署
在pom.xml中加入
<!--这个插件,可以将应用打包成一个可执行的jar包-->
    <build>
        <plugins>
            <plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
            </plugin>
        </plugins>
    </build>

运行打包


image.png

可以看到路径


image.png

复制一份放在任意盘,运行命令
image.png

可以看到运行成功了


image.png

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

推荐阅读更多精彩内容