今天准备开一个新系列springboot,springboot结束后会更新springcloud,想要学会springcloud先学springboot吧。以后springboot和hadoop轮流更新 嘻嘻。

在开篇呢,想给大家推荐一本书,也是最近公司一直推荐阅读的,<<金字塔原理>>。

话说,刚看到这本书的时候,我以为是讲的人从如何从底层爬到顶层,走向人生巅峰。

其实并不是哈哈,这本书主要是讲我们在日常工作汇报、产品介绍、软件开发、需求沟通等等,如何去沟通,怎么让自己的听众在最短的时间听懂自己在讲什么。总之,金字塔原理在我们日常工作中还是非常有用的,熟练运用常常能事半功倍。

ok,下面开始进入正题啦。

讲springboot之前肯定要讲讲什么是springboot

什么是springboot

这玩意出来也挺久的了,也被广泛使用与各种项目中。进公司前是对它非常熟悉的了,如今大半年没用了,要一点一点捡起来啦~
随着动态语言(Ruby,Scala,Node.js),Java的开发显得格外的笨重,主要体现在繁多的配置、低下的开发效率、第三方集成难度大。 在上述环境中,springboot就应运而生了。它推崇一种思想,"习惯优于配置"。
主要体现在我们项目有大量的配置,如果此时有一种习惯的配置在,可以帮我们省去大部分配置的时间,快速启动项目。
使用springboot可以很容易的创建一个独立运行的jar(内置servlet容器),准生产级别的基于spring的项目。 总的一句话就是,用了springboot你就可以不用或者只需很少的Spring配置

Springboot快速搭建

有很多种搭建方式,但是我们常用的就两种,一种是先在网站(http://start.spring.io)上生成项目压缩包,我们解压后导入编译器。另外一种就是比较直接的,直接在idea上创建(原理还是一样的)。ecplise的话可以用STS(Spring Tool Suite)

http://start.spring.io

  1. 打开网站

  1. 填写项目信息

  1. 选择项目选用的依赖(即starter pom)

内容解释:这里备选的每一项技术都是Spring boot的starter pom,例如我们选中的Web,就是在Maven依赖spring-boot-starter-web。与这项技术相关的bean都会被自动配置。

  1. 下载代码

内容解释:下载解压后我们看到就是一个普通的maven项目,我们将这个项目导入我们常用的ide就可以了。

IntelliJ IDEA

idea神器也是我一直比较推崇的,对新技术有第一时间的支持。下面我们使用idea创建Spring boot项目
  1. 新建Spring Initializr项目

  1. 点击next

  1. 选择依赖
  2. 创建项目

创建方式基本是和网站基本是一致的,只不过在idea创建会直接帮我们导入

简单演示

新建Spring Boot项目

使用上述方法新建Spring Boot项目后,生成的项目的根包目录下会有artifactId+Application命名规则的入口类。

添加测试控制器

为了演示简单,我们不再新建控制器类,而是直接在入口类中编写代码。
@SpringBootApplication//1
@RestController
public class Createproject2Application { @RequestMapping("/")
String hello(){
return "Hello Kris";
} public static void main(String[] args) {//2
SpringApplication.run(Createproject2Application.class, args);
} }

代码解释:1⃣@SpringBootApplication是Spring Boot项目的核心注解,主要目的是开启自动配置功能。 下一篇我们再对这个注解进行详细的介绍

2⃣main方法。这是一个标准的Java应用的main方法,主要作用是作为项目启动的入口

运行效果

右上角点击运行。

当然我们也可以通过mvn命令启动

mvn spring-boot:run
访问http://localhost:8080
结果如下:

ok啦。今天就讲这么多,总体来说还是很简单的,想想之前的项目,如果需要从零开始搭建,然后访问接口。需要多长时间,多少配置。使用springboot可以说是一步到位。

至于hadoop我们上一篇讲了wordcount的计算。下一篇打算出一篇工作中也是常用到的,日志采集,汇总,清洗,保存到hdfs中。

公众号搜索:喜讯XiCent 获取更多福利资源~

Spring Boot初识的更多相关文章

  1. Spring Boot 初识

    发展到今天,spring已经是一个大家族了,如果想要使用其中的两到三个组件就会有多复杂的配置,有时候还有会版本不一致的错误,让人很无奈.于是,就有了spring Boot,spring  Boot   ...

  2. Spring Boot初识(4)- Spring Boot整合JWT

    一.本文介绍 上篇文章讲到Spring Boot整合Swagger的时候其实我就在思考关于接口安全的问题了,在这篇文章了我整合了JWT用来保证接口的安全性.我会先简单介绍一下JWT然后在上篇文章的基础 ...

  3. Spring Boot初识(3)- Spring Boot整合Swagger

    一.本文介绍 如果Web项目是完全前后端分离的话(我认为现在完全前后端分离已经是趋势了)一般前端和后端交互都是通过接口的,对接口入参和出参描述的文档就是Mock文档.随着接口数量的增多和参数的个数增加 ...

  4. Spring Boot初识(2)- Spring Boot整合Mybaties

    一.本文介绍 首先读这篇文章之前如果没有接触过Spring Boot可以看一下之前的文章,并且读这篇文章还需要你至少能写基本的sql语句.我在写这篇文章之前也想过到底是选择JPA还是Mybaties作 ...

  5. Spring Boot初识(1)-了解Spring Boot

    写在前面:半年工作经验的Java程序员一枚,奈何公司用的是自研的Web框架和RPC框架,本着good good study,day day up的精神和为以后发展的考虑觉得自己需要学点开源的东西,写的 ...

  6. 【Spring Boot&&Spring Cloud系列】Spring Boot初识

    项目代码地址:https://github.com/AndyFlower/Spring-Boot-Learn/tree/master/Spring-boot-helloworld 一.Spring B ...

  7. spring boot系列(一)spring boot 初识

    什么是spring boot Spring Boot是由Pivotal团队提供的全新框架,其设计目的是用来简化新Spring应用的初始搭建以及开发过程.该框架使用了特定的方式来进行配置,从而使开发人员 ...

  8. 初识在Spring Boot中使用JPA

    前面关于Spring Boot的文章已经介绍了很多了,但是一直都没有涉及到数据库的操作问题,数据库操作当然也是我们在开发中无法回避的问题,那么今天我们就来看看Spring Boot给我们提供了哪些疯狂 ...

  9. 初识Spring Boot框架(二)之DIY一个Spring Boot的自动配置

    在上篇博客初识Spring Boot框架中我们初步见识了SpringBoot的方便之处,很多小伙伴可能也会好奇这个Spring Boot是怎么实现自动配置的,那么今天我就带小伙伴我们自己来实现一个简单 ...

随机推荐

  1. 超全的 Vue 开源项目合集,签收一下

    超全的 Vue 开源项目合集,签收一下 xiaoge2016 前端开发 1周前 作者:xiaoge2016 链接: https://my.oschina.net/u/3018050/blog/2049 ...

  2. java多线程中wait/notify/sleep/join/yield方法以及多线程的六种状态

    刚开始学线程的时候也是被这几个方法搞的云里雾里的,尤其是一开始看的毕老师的视频,老师一直在强调执行权和执行资格,看的有点懵逼,当然不是说毕老师讲的不好,就是自己有点没听明白,后来复习看了一些其他的博客 ...

  3. 【POJ - 2387】Til the Cows Come Home(最短路径 Dijkstra算法)

    Til the Cows Come Home 大奶牛很热爱加班,他和朋友在凌晨一点吃完海底捞后又一个人回公司加班,为了多加班他希望可以找最短的距离回到公司.深圳市里有N个(2 <= N < ...

  4. G-P-M 模型

    G-P-M 模型概述 每一个OS线程都有一个固定大小的内存块(一般会是2MB)来做栈,这个栈会用来存储当前正在被调用或挂起(指在调用其它函数时)的函数的内部变量.这个固定大小的栈同时很大又很小.因为2 ...

  5. 【JVM从小白学成大佬】2.Java虚拟机运行时数据区

    目录 1.运行时数据区介绍 2.堆(Heap) 是否可能有两个对象共用一段内存的事故? 3.方法区(Method Area) 4.程序计数器(Program Counter Register) 5.虚 ...

  6. 零拷贝Zero copy-linux and java

    背景-几种拷贝方式 方式1:Copying in Two Sample System Calls read(file, tmp_buf, len); write(socket, tmp_buf, le ...

  7. ElasticSearch实战系列一: ElasticSearch集群+Kinaba安装教程

    前言 本文主要介绍的是ElasticSearch集群和kinaba的安装教程. ElasticSearch介绍 ElasticSearch是一个基于Lucene的搜索服务器,其实就是对Lucene进行 ...

  8. Vue+springboot管理系统

    About 此项目是vue+element-ui 快速开发的物资管理系统,后台用的java springBoot 所有数据都是从服务器实时获取的数据,具有登陆,注册,对数据进行管理,打印数据等功能 说 ...

  9. FastStone Capture(FSCapture) 注册码

    FastStone Capture 是一款极好用的图像浏览.编辑和截屏工具,支持 BMP.JPG.JPEG.GIF.PNG.TIFF.WMF.ICO 和 TGA 在内的主流图片格式,其独有的光滑和毛刺 ...

  10. idea设置docker远程插件

    简介 docker都是通过命令来操作容器,使用idea插件可以减少重复命令输入等. 使用步骤 Idea内安装插件 打开Idea,Preferences | Plugins 进入插件安装界面,在搜索框中 ...