springBoot--01--快速入门
笔记源码:https://gitee.com/ytfsL/springboot
1.1 原有Spring优缺点分析
1.1.1 Spring的优点分析
1.1.2 Spring的缺点分析
1.2 SpringBoot的概述
1.2.1 SpringBoot解决上述Spring的缺点
1.2.2 SpringBoot的特点
1.2.3 SpringBoot的核心功能
二、SpringBoot快速入门
2.1 代码实现
2.1.1 创建Maven工程
2.1.2 添加SpringBoot的起步依赖
SpringBoot要求,项目要继承SpringBoot的起步依赖spring-boot-starter-parent
<!-- 所有的SpringBoot工程都必须继承 spring-boot-starter-parent -->
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.2.5.RELEASE</version>
</parent>
SpringBoot要集成SpringMVC进行Controller的开发,所以项目要导入web的启动依赖
<dependencies>
<!-- web功能起步依赖 -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency> <!--热部署配置-->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-devtools</artifactId>
</dependency>
</dependencies>
2.1.3 编写SpringBoot引导类
要通过SpringBoot提供的引导类起步SpringBoot才可以进行访问
package xyz.ytfs; import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication; /**
* @author by 雨听风说
* @Classname MySpringBootApplication
* @Description TODO(SpringBoot的引导类)
* @Date 2020/5/12 1:27
*/ //申明该类是一个springboot的启动类 @SpringBootApplication
public class MySpringBootApplication { /**
* main 是java程序的入口
* @param args
*/
public static void main(String[] args) {
//run方法 表示运行springBoot的引导类 run参数就是springBoot引导类的字节码对象 SpringApplication.run(MySpringBootApplication.class); } }
2.1.4 编写Controller
在引导类MySpringBootApplication同级包或者子级包中创建QuickStartController
/**
* @author by 雨听风说
* @Classname QuickController
* @Description TODO(快速入门的controller)
* @Date 2020/5/12 1:32
*/ @Controller
public class QuickController { @RequestMapping("quick")
@ResponseBody
public String quickStart(){ return "hellow world"; } }
2.1.5 测试
执行SpringBoot起步类的主方法,控制台打印日志如下
. ____ _ __ _ _
/\\ / ___'_ __ _ _(_)_ __ __ _ \ \ \ \
( ( )\___ | '_ | '_| | '_ \/ _` | \ \ \ \
\\/ ___)| |_)| | | | | || (_| | ) ) ) )
' |____| .__|_| |_|_| |_\__, | / / / /
=========|_|==============|___/=/_/_/_/
:: Spring Boot :: (v2.2.5.RELEASE) 2020-05-12 21:00:02.770 INFO 10340 --- [ restartedMain] xyz.ytfs.MySpringBootApplication : Starting MySpringBootApplication on 一一 with PID 10340 (started by DTX in F:\project folder\winter vacation\springBoot)
2020-05-12 21:00:02.773 INFO 10340 --- [ restartedMain] xyz.ytfs.MySpringBootApplication : No active profile set, falling back to default profiles: default
2020-05-12 21:00:02.918 INFO 10340 --- [ restartedMain] .e.DevToolsPropertyDefaultsPostProcessor : Devtools property defaults active! Set 'spring.devtools.add-properties' to 'false' to disable
2020-05-12 21:00:02.918 INFO 10340 --- [ restartedMain] .e.DevToolsPropertyDefaultsPostProcessor : For additional web related logging consider setting the 'logging.level.web' property to 'DEBUG'
2020-05-12 21:00:04.144 INFO 10340 --- [ restartedMain] o.s.b.w.embedded.tomcat.TomcatWebServer : Tomcat initialized with port(s): 8080 (http)
2020-05-12 21:00:04.164 INFO 10340 --- [ restartedMain] o.apache.catalina.core.StandardService : Starting service [Tomcat]
2020-05-12 21:00:04.164 INFO 10340 --- [ restartedMain] org.apache.catalina.core.StandardEngine : Starting Servlet engine: [Apache Tomcat/9.0.31]
2020-05-12 21:00:04.242 INFO 10340 --- [ restartedMain] o.a.c.c.C.[Tomcat].[localhost].[/] : Initializing Spring embedded WebApplicationContext
2020-05-12 21:00:04.242 INFO 10340 --- [ restartedMain] o.s.web.context.ContextLoader : Root WebApplicationContext: initialization completed in 1323 ms
2020-05-12 21:00:04.421 INFO 10340 --- [ restartedMain] o.s.s.concurrent.ThreadPoolTaskExecutor : Initializing ExecutorService 'applicationTaskExecutor'
2020-05-12 21:00:04.587 INFO 10340 --- [ restartedMain] o.s.b.d.a.OptionalLiveReloadServer : LiveReload server is running on port 35729
2020-05-12 21:00:04.624 INFO 10340 --- [ restartedMain] o.s.b.w.embedded.tomcat.TomcatWebServer : Tomcat started on port(s): 8080 (http) with context path ''
2020-05-12 21:00:04.627 INFO 10340 --- [ restartedMain] xyz.ytfs.MySpringBootApplication : Started MySpringBootApplication in 2.304 seconds (JVM running for 4.797)
通过日志发现,Tomcat started on port(s): 8080 (http) with context path ''
tomcat已经起步,端口监听8080,web应用的虚拟工程名称为空
打开浏览器访问url地址为:http://localhost:8080/quick
springBoot--01--快速入门的更多相关文章
- 【原创】SpringBoot & SpringCloud 快速入门学习笔记(完整示例)
[原创]SpringBoot & SpringCloud 快速入门学习笔记(完整示例) 1月前在系统的学习SpringBoot和SpringCloud,同时整理了快速入门示例,方便能针对每个知 ...
- SpringBoot开发快速入门
SpringBoot开发快速入门 目录 一.Spring Boot 入门 1.Spring Boot 简介 2.微服务 3.环境准备 1.maven设置: 2.IDEA设置 4.Spring Boot ...
- SpringBoot介绍,快速入门小例子,目录结构,不同的启动方式,SpringBoot常用注解
SpringBoot介绍 引言 为了使用ssm框架去开发,准备ssm框架的模板配置 为了Spring整合第三方框架,单独的去编写xml文件 导致ssm项目后期xml文件特别多,维护xml文件的成本也是 ...
- MyBatis 学习总结 01 快速入门
本文测试源码下载地址: http://onl5wa4sd.bkt.clouddn.com/MyBatis0918.rar 一.Mybatis介绍 MyBatis是一个支持普通SQL查询,存储过程和高级 ...
- SpringBoot的快速入门
快速创建一个SpringBoot项目(两种方式:STS版本,IntelliJ IDEA) 1.STS方式:什么是STS?是Spring团队推荐使用的开发工具 所谓的sts就是eclipse升级版 继承 ...
- 【SpringBoot】快速入门
博客主页:准Java全栈开发工程师 00年出生,即将进入职场闯荡,目标赚钱,可能会有人觉得我格局小.觉得俗,但不得不承认这个世界已经不再是以一条线来分割的平面,而是围绕财富旋转的球面,成为有钱人不是为 ...
- SpringBoot简单快速入门操作
项目类分为: dao层 server层 controller层 Mapper → Server→ controller mapper层(必须要用interface创建) 创建后,首先要在方法前加@Ma ...
- 01快速入门-04-Map、Set和iterable(ES6)
1.Map 我们知道,在JS中其实对象的方式就跟Java中的Map极为相似,即键值对的方式.JS中,key必须是字符串,实际上Number等值作为key也是合理的,所以为了解决这个问题,在最新的ES6 ...
- [Android应用开发] 01.快速入门
前言 这一篇,主要是把之前[安卓基础]系列的东西,做一个总结和补充.并举了两个例子:电话拨号器.短信发送器做巩固,在此也参考了黑马训练营的教学大纲. Android项目的目录结构 Activity:应 ...
- AngularJS快速入门指南01:导言
AngularJS使用新的attributes扩展了HTML AngularJS对单页面应用的支持非常好(SPAs) AngularJS非常容易学习 现在就开始学习AngularJS吧! 关于本指南 ...
随机推荐
- 攻防世界 pwn welpwn
感觉好久没有水博客了,今天借助这道题来告诉自己做pwn题要多调试!!! 先检查了保护只开启了堆栈不可执行,接下来ida看一下伪代码: 这里可以往buf进行写入,接下来看一下echo函数: 大概意思就是 ...
- 深入理解css中position属性及z-index属性 https://www.cnblogs.com/zhuzhenwei918/p/6112034.html
深入理解css中position属性及z-index属性 请看出处:https://www.cnblogs.com/zhuzhenwei918/p/6112034.html 在网页设计中,positi ...
- [Elasticsearch] ES 的Mapping 设计在实际场景中应用
背景 项目中有个需求是需要几个字段作为标签,统计各个标签的文档数量,同时支持分词后的全文检索功能. 原有的mapping设计: curl -XPUT http://ip:9200/meta_es_me ...
- istio的sidecar原理学习
目的 从内嵌到应用的SDK模式转成istio servicemesh,再到最新提出来的proxyless可谓是发展太快了.刚开始我只是围绕着服务注册和发现是怎么转变来展开研究,但是发现这个话题有点大, ...
- 【LeetCode】677. Map Sum Pairs 解题报告(Python & C++)
作者: 负雪明烛 id: fuxuemingzhu 个人博客: http://fuxuemingzhu.cn/ 目录 题目描述 题目大意 解题方法 字典 前缀树 日期 题目地址:https://lee ...
- 1127 - Funny Knapsack
1127 - Funny Knapsack PDF (English) Statistics Forum Time Limit: 2 second(s) Memory Limit: 32 MB ...
- HashMap及LinkedHashMap
HashMap是Map族中最为常用的一种,也是Java Collection Framework的重要成员.HashMap和双向链表合二为一即是LinkedHashMap.所谓LinkedHashMa ...
- <学习opencv> opencv 概述及初探
目录 Opencv3 当前模块 OpenCV 贡献库(opencv_contrib) OpenCV 头文件 旧式C风格头文件 新式C++风格头文件 例程 DEMO1 - 显示图片 DEMO2 - 视频 ...
- 【jvm】09-full gc分析思路
[jvm]09-full gc分析思路 欢迎关注b站账号/公众号[六边形战士夏宁],一个要把各项指标拉满的男人.该文章已在github目录收录. 屏幕前的大帅比和大漂亮如果有帮助到你的话请顺手点个赞. ...
- Java初学者作业——分析计费规则后,编写程序输入乘坐出租车的时间和里程数,计算里程价格
返回本章节 返回作业目录 需求说明: 某城市的出租车计费规则如下: 在 7:00 - 23:00 之间,3km 以内收取起步价 10 元,超过 3km 每 km 收取 2 元. 如果不在这个时间段,在 ...