SpringBoot入门系列(一)如何快速创建SpringBoot项目
这段时间也没什么事情,所以就重新学习整理了Spring Boot的相关内容。今天开始整理更新Spring Boot学习笔记,感兴趣的朋友可以关注我的博客:https://www.cnblogs.com/zhangweizhong/category/1657780.html,希望能对你有所帮助。
注意:为了让大家更快的入门学习,我后面整理的文章都是基于SpringBoot 2.2版本。这个系列课程的完整源码,也会提供给大家。大家关注我的微信公众号(架构师精进),回复:springboot源码 获取这个系列课程的完整源码。或者点此链接直接下载完整源码
下面就简单介绍下Spring Boot,然后创建SpringBoot项目。
什么是 Spring Boot?
Spring Boot设计目的是用来简化新 Spring 应用的初始搭建以及开发过程,是为了让开发人员尽可能快的创建并允许Spring 应用程序,尽可能减少项目的配置文件。
从最根本上来讲,Spring Boot 就是一些库的集合,它能够被任意项目的构建系统所使用。它使用 “习惯优于配置” (项目中存在大量的配置,此外还内置一个习惯性的配置)的理念让你的项目快速运行起来。所以 spring boot 其实不是什么新的框架,它默认配置了很多框架的使用方式,就像 maven 整合了所有的 jar 包,spring boot 整合了所有的框架。
总结起来就是:
(1)为所有 Spring 开发提供一个更快更广泛的入门体验。
(2)零配置。无冗余代码生成和XML 强制配置,遵循“约定大于配置” 。
(3)集成了大量常用的第三方库的配置, Spring Boot 应用为这些第三方库提供了几乎可以零配置的开箱即用的能力。
(4)提供一系列大型项目常用的非功能性特征,如嵌入式服务器、安全性、度量、运行状况检查、外部化配置等。
(5)Spring Boot 不是Spring 的替代者,Spring 框架是通过 IOC 机制来管理 Bean 的。Spring Boot 依赖 Spring 框架来管理对象的依赖。Spring Boot 并不是Spring 的精简版本,而是为使用 Spring 做好各种产品级准备。
环境准备
(1)JDK 环境必须是 1.8 及以上。
(2)开发工具建议使用 IDEA,也可以 Eclipse。我这边一直都是
用 idea 快速搭建 Spring Boot
创建一个新SpringBoot应用程序的方式有多种:
1、使用IDEA内置的Spring Initializr创建(File -> New -> Project -> Spring Initializr)
2、创建基础Maven项目,修改pom.xml添加spring-boot-parent
3、访问 https://start.spring.io 选择依赖后,生成项目并下载,导入到Idea即可。
一般我们是使用第一种,用IDEA直接新建项目,下面我们就一步一步讲解如何创建Spring Boot项目。
第一步:新建 Spring Initializr 项目:
(1)选择 Spring Initializr
(2)选择 SDK,点击【new】这里就是使用 JDK 要求版本 1.8+,选择你安装的JDK目录:
(3)然后选择默认的 url (不用管)点击【Next】:

(4)然后填写一下项目的信息:

(5)先勾选上 Web 依赖:
(6)根据自己的项目选择相关的依赖,也可以不选,后面需要的时候再加上:

(7)选择好项目的位置,点击【Finish】:

(8)如果是第一次配置 Spring Boot 的话可能需要等待一会儿 IDEA 下载相应的 依赖包。默认创建好的项目结构如下:

上图可以看到,整个项目结构还是看上去很简单没有太多的配置文件,SpringBoot不需要太多配置文件,我们来了解一下默认生成的有什么:
SpringbootApplication: 带有 main() 方法的类,用于启动应用程序。
application.properties:整个应用程序的配置文件,默认是空的 properties 文件,配置应用程序的端口号,程序名等属性,后面我们会一一讲到。
pom.xml: 包依赖文件。
第二步:创建控制器Controller
没有控制器,项目运行起来是看不出效果的,下面我们创建一个控制器,验证下项目创建成功了没有。
在 【src/main/java/com.weiz.controller】包下新建一个【HelloController】:
package com.weiz.controller; import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController; @RestController
public class HelloController { @RequestMapping("/hello")
public String hello() {
return "Hello Spring Boot!";
}
}
@RestController:为Spring Boot 封装的Rest接口的Controller。
@RequestMapping:和SpringCloud 一样。
第三步:启动 Spring Boot
(1)我们回到 SpringbootApplication 这个类中,然后右键点击运行:

(2)IDEA 不需要在项目中没有手动配置 Tomcat 服务器,因为 Spring Boot 内置了 Tomcat。
项目成功运行的提示信息可以看到我们的程序 运行在 8080 端口。

(3)访问http://localhost:8080/hello/index 地址:

最后
以上,就把如何创建运行Spring Boot项目简单的介绍完了,后面会深入介绍Spring Boot的各个功能和用法。
这个系列课程的完整源码,也会提供给大家。大家关注我的微信公众号(架构师精进),回复:springboot源码。获取这个系列课程的完整源码。

SpringBoot入门系列(一)如何快速创建SpringBoot项目的更多相关文章
- springboot入门系列(五):SpringBoot连接多RabbitMQ源
SpringBoot连接多RabbitMQ源 在实际开发中,很多场景需要异步处理,这时就需要用到RabbitMQ,而且随着场景的增多程序可能需要连接多个RabbitMQ.SpringBoot本身提供了 ...
- springboot入门系列(二):SpringBoot整合Swagger
上一篇<简单搭建SpringBoot项目>讲了简单的搭建SpringBoot 项目,而 SpringBoot 和 Swagger-ui 搭配在持续交付的前后端开发中意义重大,Swagger ...
- springboot入门系列(四):SpringBoot和Mybatis配置多数据源连接多个数据库
SpringBoot和Mybatis配置多数据源连接多个数据库 目前业界操作数据库的框架一般是 Mybatis,但在很多业务场景下,我们需要在一个工程里配置多个数据源来实现业务逻辑.在SpringBo ...
- springboot入门系列(三):SpringBoot教程之RabbitMQ示例
SpringBoot教程之RabbitMQ示例 SpringBoot框架已经提供了RabbitMQ的使用jar包,开发人员在使用RabbitMQ的时候只需要引用jar包简单的配置一下就可以使用Rabb ...
- SrpingBoot入门到入坟03-基于idea快速创建SpringBoot应用
先前先创建Maven项目然后依照官方文档再然后编写主程序写业务逻辑代码才建立好SpringBoot项目,这样太过麻烦,IDE都支持快速创建,下面基于idea: 使用Spring Initializer ...
- 【SpringBoot学习一】开发入门--快速创建springboot程序
前言 本片博客记录快速创建springboot工程的两种方式.一种是使用maven创建,一种是使用spring initializr创建.开发环境JDK1.8.IDEA.maven. SpringBo ...
- SpringBoot入门系列(十二)统一日志收集
前面介绍了Spring Boot 异常处理,不清楚的朋友可以看看之前的文章:https://www.cnblogs.com/zhangweizhong/category/1657780.html. 今 ...
- SpringBoot入门系列(十一)统一异常处理的实现
前面介绍了Spring Boot 如何整合定时任务已经Spring Boot 如何创建异步任务和定时任务.不清楚的朋友可以看看之前的文章:<Spring Boot 入门系列文章> 接下来主 ...
- springboot入门(一)--快速搭建一个springboot框架
原文出处 前言在开始之前先简单介绍一下springboot,springboot作为一个微框架,它本身并不提供Spring框架的核心特性以及扩展功能,只是用于快速.敏捷地开发新一代基于Spring框架 ...
- 2springboot:快速创建springboot项目
使用IDEA快速创建springboot项目流程: 创建新的项目选择 项目的命名以及包名 需要什么包就导入什么包 进行测试的单元 <dependency> <groupId>o ...
随机推荐
- mysql批量删除报1064原因
DELETE FROM table_name t where t......; 报1064 错误,原因MySQL 中delete 语句不能给表名起别名. 另外.如果记录不存在,delete from ...
- windows10系统激活方法
我使用的是第一种方法,很好用,企业版 https://blog.csdn.net/qq_39146974/article/details/82967054
- 二十六、linux邮件服务器
1.安装: yum install -y sendmail 因为是最小安装,需要包没有安装 yum install -y mailx 2.日志:/var/log/maillog 3.启动:/etc ...
- mac用python读取文件常见问题(未完成)
python读取文件常见问题(mac版) 让python的默认编码,和文件的编码保持一致
- Python实现求1-1000以内的素数
def func(): for i in range(2,1000): # count表示被整除的次数 count = 0 for j in range(1,i+1): if i%j==0: coun ...
- 被这个C程序折腾死了
The C programming language 的第13页,1.5.3 行计数的那里,那个统计换行符个数的程序我好像无法运行,无论输入什么,按多少下enter,什么都出不来. #include& ...
- shiro遇到的坑-重写sessionManager遇到的坑
最近公司开发一个微信小程序项目加shiro的项目.因为微信小程序是不使用cookie,使用的是 storage .那么我们就不能使用传统的方式来保持登录状态了. 1.首先和网上的一样,先重写一个Ses ...
- 65)PHP,跨脚本周期存变量(会话技术)
(1)写入变量,常量,全局变量都不行, (2)试一下用文件存那个变量: 但是有一个问题:就是文件,只要一个用登陆成功了,其余的所有用户都可以直接用那个登录许可的标志了,然后只要用户名和密码登录成功,那 ...
- python语法基础-基础-控制语句
############### if条件控制语句 ############### # 以下实例 x 为 0-99 取一个数,y 为 0-199 取一个数,如果 x>y 则输出 x,如 ...
- WebService如何根据WSDL文件转换成本地的C#类
WebService有两种使用方式,一种是直接通过添加服务引用,另一种则是通过WSDL生成. 添加服务引用大家基本都用过,这里就不讲解了. 那么,既然有直接引用的方式,为什么还要通过WSDL生成呢? ...