今天准备开一个新系列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. C语言编程入门之--第五章C语言基本运算和表达式-part2

    5.1.4 再来一个C库函数getchar吸收回车键 回车键也是一个字符,在使用scanf的时候,输入完毕要按下回车键,这时候回车键也会被输入到stdin流中,会搞乱我们的程序. 注意:stdin是输 ...

  2. UVA - 1152 --- 4 Values whose Sum is 0(二分)

    问题分析 首先枚举a和b, 把所有a+b记录下来放在一个有序数组,然后枚举c和d, 在有序数组中查一查-c-d共有多少个.注意这里不可以直接用二分算法的那个模板,因为那个模板只能查找是否有某个数,一旦 ...

  3. c语言实现基本的数据结构(一) 线性表

    #include <stdio.h> #include <tchar.h> #include <stdlib.h> #define LIST_INIT_SIZE 1 ...

  4. python历史背诵

    一.python简介 python2:源代码不统一 有重复功能的代码 默认编码是ascii 没有中文 输出中文需要用头文件 #-*-coding=utf-8-*- 进行转换 py3:源代码统一 没有重 ...

  5. python+appium自动化测试(一)-----环境搭建

    基础背景: windows7系统 +python3.4版本 环境搭建目标: 使用python编写app自动化测试脚本并成功执行. 搭建步骤:   1.安装python3,安装步骤详见:https:// ...

  6. Hive 系列(五)—— Hive 分区表和分桶表

    一.分区表 1.1 概念 Hive 中的表对应为 HDFS 上的指定目录,在查询数据时候,默认会对全表进行扫描,这样时间和性能的消耗都非常大. 分区为 HDFS 上表目录的子目录,数据按照分区存储在子 ...

  7. Oracle cursor学习笔记

    目录 一.oracle库缓存 1.1.库缓存简介 1.2.相关概念 1.3.库缓存结构 1.4.sql执行过程简介 二.oracle cursor 2.1.cursor分类 2.2.shared cu ...

  8. 用java自制简易线程池(不依赖concurrent包)

    很久之前人们为了继续享用并行化带来的好处而不想使用进程,于是创造出了比进程更轻量级的线程.以linux为例,创建一个进程需要申请新的自己的内存空间,从父进程拷贝一些数据,所以开销是比较大的,线程(或称 ...

  9. 一个最简单的通过自定义注解形式实现AOP的例子

    1.首先实现AOP实例的第一步即声明切面类,两种方式(1.基于注解形式@Aspect,2.基于xml配置,一般都通过注解来声明切面类) 2.切入点表达式大致也有两种,一种是直接根据方法的签名来匹配各种 ...

  10. 启xin宝app的token算法破解——token分析篇(三)

    前两篇文章分析该APP的抓包.的逆向: 启xin宝app的token算法破解--抓包分析篇(一) 启xin宝app的token算法破解--逆向篇(二) 本篇就将对token静态分析,其实很简单就可以搞 ...