今天打算整理一下 Spring Boot 的基础篇,这系列的文章是我业余时间来写的,起源于之前对微服务比较感兴趣,微服务的范畴比较广包括服务治理、负载均衡、断路器、配置中心、API网关等,还需要结合 docker,K8s 等一套新的容器技术。后面就了解 Spring BootSpring Cloud ,主要是因为相对其他技术平台生态与成熟性都比较完善,站在巨人的肩膀上嘛; 文章都是想到哪个主题写哪一篇,并没有什么顺序,这几天我在构思我一直在构思基础篇怎么去写,基本概述性质性的文章,Google 一下 N 篇,这里我想简述一些演变的过程与一些实用性比较适用的知识点来讲好了。学习新技术最快方式就是先阅读下官方的文档然后参考 Github 上的例子,后面就是善用 Google 搜索问题、Github 检索示例、StackOverflow 查找答案。

docs: https://docs.spring.io/spring-boot/docs/current/reference/htmlsingle/
github: https://github.com/spring-projects/spring-boot/tree/master/spring-boot-samples

演变过程概述

Spring 作为当前主流 JavaEE 全功能栈应用程序企业开发框架,旗下提供了一套完整的生态 相关项目 ,其中 Spring Framework 作为最重要的项目之一 (Spring Boot 的依赖项,简称 Spring)包含结构如下:

从最基础的 IOC 与 AOP,到整合 Servlet 的简化 Web 开发,到后面 JDBC 与 ORM ,JMS 等等,我们统称 Spring 中的 Web 为 SpringMVC;之前开发一个 Web 项目可能配置一堆繁琐的 XML 配置与包含如下相关 Jar 包:

Spring Boot 依赖于 Spring Framework,目前为止已经非常成熟了,是由 Pivotal 团队提供的全新框架,其设计目的是用来简化新 Spring 应用的初始搭建以及开发过程,它就是把 SpringMVC 繁琐的配置进行了封装和组合,并不是对 Spring 技术栈的重构,遵循约定大于配置的原则,很多情况你不需要任何配置,就可以把一个 Web 容器运行起来,如果之前熟悉 SpringMVC 基本看看官方的文档与例子就可以快速上手了。

项目组成结构

最简单的方式就是使用 IDEA 向导快速创建一个基于 Maven(或Gradle) 的空项目,创建好目录结构大致如下:

未完成

项目目录与约定配置

Web 容器的选择

数据库连接池的选择

模板引擎的选择

Spring Boot 基础概述与相关约定配置的更多相关文章

  1. Spring Boot 基础,理论,简介

    Spring Boot 基础,理论,简介 1.SpringBoot自动装配 1.1 Spring装配方式 1.2 Spring @Enable 模块驱动 1.3 Spring 条件装配 2.自动装配正 ...

  2. 让Spring Boot项目启动时可以根据自定义配置决定初始化哪些Bean

    让Spring Boot项目启动时可以根据自定义配置决定初始化哪些Bean 问题描述 实现思路 思路一 [不符合要求] 思路二[满足要求] 思路三[未试验] 问题描述 目前我工作环境下,后端主要的框架 ...

  3. SpringCloud 微服务一:spring boot 基础项目搭建

    spring cloud是建立在spring boot的基础上的,而之前虽然听说过,也随便看了一下spring boot,却没有真正使用,因此还必须先花时间学一下spring boot. spring ...

  4. 51. spring boot属性文件之多环境配置【从零开始学Spring Boot】

    原本这个章节是要介绍<log4j多环境不同日志级别的控制的>但是没有这篇文章做基础的话,学习起来还是有点难度的,所以我们先一起了解下spring boot属性文件之多环境配置,当然文章中也 ...

  5. spring boot基础学习教程

    Spring boot 标签(空格分隔): springboot HelloWorld 什么是spring boot Spring Boot是由Pivotal团队提供的全新框架,其设计目的是用来简化新 ...

  6. spring boot集成mybatis(3) - mybatis generator 配置

    Spring Boot 集成教程 Spring Boot 介绍 Spring Boot 开发环境搭建(Eclipse) Spring Boot Hello World (restful接口)例子 sp ...

  7. Spring Boot 2.4 对多环境配置的支持更改

    在目前最新的Spring Boot 2.4版本中,对配置的加载机制做了较大的调整.相关的问题最近也被问的比较多,所以今天就花点时间,给大家讲讲Spring Boot 2.4的多环境配置较之前版本有哪些 ...

  8. Spring Boot 基础

    Spring Boot 基础 Spring Boot 项目(参考1) 提供了一个类似ASP.NET MVC的默认模板一样的标准样板,直接集成了一系列的组件并使用了默认的配置.使用Spring Boot ...

  9. Spring Boot 基础教程系列学习文档

    Spring Boot基础教程1-Spring Tool Suite工具的安装 Spring Boot基础教程2-RESTfull API简单项目的快速搭建 Spring Boot基础教程3-配置文件 ...

随机推荐

  1. SGU 271 Book Pile (双端队列)

    题意:n,m,k,表示有一个长度为 n 的序列,有 m 个操作,操作有 2 种,第一种是 ADD 在前面添加一个串,第二种是把前 k 个进行翻转,问你最后的序列是什么样的. 析:很明显,如果直接模拟, ...

  2. 20155205《Java程序设计》实验五(网络编程与安全)实验报告

    20155205 <Java程序设计>实验五(网络编程与安全)实验报告 一.实验内容及步骤 (一) 两人一组结对编程 参考http://www.cnblogs.com/rocedu/p/6 ...

  3. silverlight学习之页面传值篇

    1.silverlight 实现页面导航跳转   (1)利用根视图    A.修改App.xmal.cs     //使用根视图实现页面导航跳转        //申明一个Grid对象         ...

  4. linux之vim配置及使用示例

    作者:tongqingliu 转载请注明出处:http://www.cnblogs.com/liutongqing/p/7056193.html linux之vim配置及使用示例 vi的三种模式: 一 ...

  5. Windows 8.1 Update中的小改变

    在Build 2014大会中,发布了Windows 8.1 Update的更新,并将于4月8日通过Windows Update进行推送.但是,在MSDN订阅下载中,带有该更新的镜像已经可以在4月3号放 ...

  6. 《mysql必知必会》学习_第七章_20180730_欢

    第七章:数据过滤 P43 select prod_id,prod_price,prod_name from products where vend_id =1003 and prod_price &l ...

  7. java锁的种类以及辨析(转载)

    java锁的种类以及辨析(一):自旋锁 锁作为并发共享数据,保证一致性的工具,在JAVA平台有多种实现(如 synchronized 和 ReentrantLock等等 ) .这些已经写好提供的锁为我 ...

  8. iOS笔记之UIKit_UILable

    UILabel*label3 = [[UILabel alloc]initWithFrame:CGRectMake(0, 60+10+60+10+60+10, 320, 60)]; label3.ba ...

  9. Git项目下载部分文件或文件夹

    我们常常要在Github下载一些源码.示例等,但有时候项目库会比较大,而我关心的只是其中很少的一部分内容,由于众所周知的原因,我们下载git库是比较慢的,过大的项目经常会下载失败,所以只下载部分内容就 ...

  10. Python地理位置信息库geopy的使用(二):根据中心点坐标,方向,距离计算坐标

    上一篇文章我们介绍了geopy的基本使用,这一篇文章我们根据中心点坐标,方向,距中心点距离计算出对应的坐标点,这种用法官网并没有给出详细的文档,我们这里做一下说明 生成坐标点的具体方法 import ...