Springboot之初入江湖
Hello,各位小伙伴大家好,我是小栈君。
今天的分享主题是关于Springboot主题分享,其实在写这个系列主题之前有想过一些关于分享技术的顺序问题,因为我在创建“IT干货栈”这个公众号之初就是想要分享关于后端技术的一些干货。
想要各位感兴趣的小伙伴都能够学习到或是能够温故知新一些技术或者技能点,后端技术并不限于java还涉足于go、Python、区块链、人工智能和大数据等方面。
所以想将这些学习到的东西做成笔记分享给各位,避免实战中的踩坑,共同进步。
正是因为涉及的技术较多,反而在系列主题分享的时候会产生一丝顾虑,思前想后还是决定各个语言的教程系统的穿插发布。
如果小伙伴有比较好的建议或者意见欢迎给小栈君进行留言。搜索“IT干货栈”,每天都有有趣且实用的干货等你,我们共同进步,一起成长!
1、Springboot前传
闲话不多说,我们这段时间围绕着Springcloud微服务框架的基石Springboot进行系列讲解。
后期会对SpringCloud微服务的技术进行从零到一的完整讲解和实战。让大家对关于java后端技术有更加深入和具体的理解,循序渐进的掌握好技术。
java开发者之于Spring好比是骑士之于矛,战士之于剑。在java开发者必掌握的框架排行前三的就是Spring家族系列。
因为其中包含的IOC和AOP两大利器大大简化了软件开发的程度复杂性,并以其优良的设计模式在众多的开源框架中夺得头筹,属于名副其实的老大哥。
那么作为Spring家族的一重要成员,在目前以java语言开发的软件的不完全统计中以Springboot作为框架的已经涵盖了90%以上。
所以Spring的官网上也将Springboot放在了C位。
(图片来源于Spring官网)
算下来Spring已经经历了4个时代的变迁,Spring1.0时代主要是针对于通过XML的方式配置实体Bean。如图所示:
随着JDK的发展,Spring2.X进入了一个新的时代,可以通过注解对于Bean进行声明和注入,大大减少了XML的配置文件的体量,加速了软件开发的速度。
但是针对于资源文件和数据库的配置文件当然是十分推荐写在XML中的。从Spring3.x开始提供了Java配置方式,使用Java配置方式可以更好的理解你配置的Bean。
现在我们就处于这个时代,并且Spring4.x和Spring boot都推荐使用java配置的方式。
如果所示,在这个类上我们使用了三个注解,第一个@Configuration 作用在类上,相当于一个XML的配置文件。
这个标志的含义就是在容器启动的时候会自动加载这个类,@Bean 作用于方法上,其类比作用就和在XML中配置的Bean一样。
当然还有一个@LoadBalanced 注解方法属于在Springcloud中的负载均衡,这个在后面一个专题会详细进行讲解。
其实随着互联网的发展和公司产品的迭代,大家可以发现在技术选型上我们也是经历了从struts 到 SpringMVC 然后到Springboot 和Springcloud这一变迁,其实万变不离其宗。
Spring内核机制和设计模式依旧是我们需要研究和学习的。毕竟Spring全家桶已经占据了大半江山。
2、Springboot初探
官方解释springboot 是可以简单轻松的创建单体以及企业级应用项目,你可以“直接运行”这些运用程序。
并且我们也对Spring平台和第三方库有自己的简介,你可以轻松入门,许多Springboot项目只需要非常少的配置。综上所述Springboot就是采用了“习惯优于配置”,化繁为简。
3、构建项目
既然官方所讲的构建一个项目需要极少的配置,那么我们就进行实战一下是否真的如官方所言呢?
为了方便测试,首先我们在Spring官网上进行创建我们的项目框架
官方网站 :https://start.spring.io/
其实大家都可以都可以看到Spring官网可以很轻松的创建你想要的项目,并且在语言类型上支持了Maven和gradle ,语言的类型上也同样支持java、kotlin、Groovy。
版本方面有2.20、2.19、2.18 三个版本可供选择。并且对于第三方插件支持也是像官网上所讲的一样简单上手。
将预先设定好的项目下载下来可以用eclipse或idea工具打开即可看到我们项目的结构目录和相关的引用
从pom文件可以看出 Springboot的项目结构相对于我们传统的jar包引用和以前用pom文件的构建是简化了不少,并且在项目结构中已经生成了相关的启动类。
直接使用run方法就可以启动项目。是不是很简单呢,大家也可以试试哦
今天的分享就到这里就结束啦,如果你喜欢我的分享,麻烦你点击再看,分享或留言,我是小栈君,我们下期见,拜了个拜~
本文由博客一文多发平台 OpenWrite 发布!
Springboot之初入江湖的更多相关文章
- 解决 Springboot Unable to build Hibernate SessionFactory @Column命名不起作用
问题: Springboot启动报错: Caused by: org.springframework.beans.factory.BeanCreationException: Error creati ...
- 【微框架】Maven +SpringBoot 集成 阿里大鱼 短信接口详解与Demo
Maven+springboot+阿里大于短信验证服务 纠结点:Maven库没有sdk,需要解决 Maven打包找不到相关类,需要解决 ps:最近好久没有写点东西了,项目太紧,今天来一篇 一.本文简介 ...
- Springboot搭建web项目
最近因为项目需要接触了springboot,然后被其快速零配置的特点惊呆了.关于springboot相关的介绍我就不赘述了,大家自行百度google. 一.pom配置 首先,建立一个maven项目,修 ...
- Java——搭建自己的RESTful API服务器(SpringBoot、Groovy)
这又是一篇JavaWeb相关的博客,内容涉及: SpringBoot:微框架,提供快速构建服务的功能 SpringMVC:Struts的替代者 MyBatis:数据库操作库 Groovy:能与Java ...
- 解决 SpringBoot 没有主清单属性
问题:SpringBoot打包成jar后运行提示没有主清单属性 解决:补全maven中的bulid信息 <plugin> <groupId>org.springframewor ...
- SpringBoot中yaml配置对象
转载请在页首注明作者与出处 一:前言 YAML可以代替传统的xx.properties文件,但是它支持声明map,数组,list,字符串,boolean值,数值,NULL,日期,基本满足开发过程中的所 ...
- springboot 学习资源推荐
springboot 是什么?对于构建生产就绪的Spring应用程序有一个看法. Spring Boot优先于配置的惯例,旨在让您尽快启动和运行.(这是springboot的官方介绍) 我们为什么要学 ...
- Springboot框架
本片文章主要分享一下,Springboot框架为什么那么受欢迎以及如何搭建一个Springboot框架. 我们先了解一下Springboot是个什么东西,它是干什么用的.我是刚开始接触,查了很多资料, ...
- 如何在SpringBoot中使用JSP ?但强烈不推荐,果断改Themeleaf吧
做WEB项目,一定都用过JSP这个大牌.Spring MVC里面也可以很方便的将JSP与一个View关联起来,使用还是非常方便的.当你从一个传统的Spring MVC项目转入一个Spring Boot ...
随机推荐
- java hdu A+B for Input-Output Practice (IV)
A+B for Input-Output Practice (IV) Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/327 ...
- [在线+源码]vue全家桶+Typescript开发一款习惯养成APP
# vue-ts-daily 基于Vue.js的2.5.13版本和TypeScript编写的模仿原生应用的WebApp. [源码地址](https://github.com/xiaomuzhu/vue ...
- webpack多页应用架构系列(一):一步一步解决架构痛点
这系列文章讲什么? 前些时间,写过一个项目,前后端分离,没有借助任何框架,项目页面特别的多,页面都是html直接写的,许多公共html,写了好多处,有一个地方需要改就得改好多地方,js也是随意写,每个 ...
- CSS3 01. CSS3现状、属性选择器、伪类选择器、结构伪类、伪元素选择器、颜色、文本阴影shadow、盒子模型、私有化前缀
CSS 3 现状 兼容性差,需添加私有前缀/移动端优于PC端/不断改进中/渐进增强原则/考虑用户群体/遵照产品的方案 : CSS3手册 需要阅读其--阅读及使用指引 []表示全部的可选项 || 或者 ...
- 【Offer】[55-1] 【二叉树的深度】
题目描述 思路分析 测试用例 Java代码 代码链接 题目描述 输入一棵二叉树的根节点,求该树的深度.从根节点到叶节点依次经过的节点(含根.叶节点)形成树的一条路径,最长路径的长度为树的深度. 牛客网 ...
- Python二元操作符
def quiz_message(grade): outcome = 'failed' if grade<50 else 'passid' print ('grade', grade, 'out ...
- spring中的XML Catalog配置
XML Catalog配置: 1.window-->preferences-->XML Catalog 2.如图: 点击File System,选择下图中的最后一个 图二中的key时sch ...
- 微软发布.Net Core 3.0 RC1,最终版本定于9月23日
2019.9.17 微软 宣布推出.NET Core 3.0 Release Candidate 1.就像Preview 9一样,主要专注于为 .NET Core 3.0 发布最终版本 .现在变得非常 ...
- 编译gaia
./rkst/mkimage.sh rk3066-eng -j8 gaia 分别是编译文件路径 编译的输出类型 处理器分配数 待编译模块 //flash gaia1. adb remount2. ad ...
- 03 jvm的组成
声明:本博客仅仅是一个初学者的学习记录.心得总结,其中肯定有许多错误,不具有参考价值,欢迎大佬指正,谢谢!想和我交流.一起学习.一起进步的朋友可以加我微信Liu__66666666 这是简单学习一遍之 ...