永不放弃有两个原则,第一个原则是永不放弃,第二个原则就是:当你想放弃时回头看第一个原则。
哈哈 最近看了一本SpringBoot趣味实战课,于是便做了笔记。
刘水镜老师博客:https://blog.csdn.net/liushuijinger
我们学习知识跟大侠修炼武功类似,有人天赋异禀骨骼清奇是天生的练武奇才(学神,如 萧峰);
有人天资平平,但通过后天的努力孜孜不倦,终成一代大侠(学霸,如 郭靖);
还有人一路奇遇不断,屡屡遭到高人指点,然后成为绝世高手(外挂玩家,如 虚竹)。
从他们身上可以到一些相同的特质:
读万卷书,行万里路,阅人无数,名师指路,自己开悟。这是对学习高度的抽象和概括,看似是五个部分,其实可以简单看成两个阶段: 读万卷书,行万里路,阅人无数,名师指路
和 自己开悟
。
学习金字塔:
SpringBoot 可以轻松创建独立的、基于Sring的生产级应用程序,而这只需要一些Spring很少的配置。SpringBoot 是现在最主流的开发框架,它提供一站式的开发体验,大幅度提高我们的开发效率。
官网:https://spring.io/projects/spring-boot
SpringBoot功能:
创建独立的Spring应用程序。
内嵌web容器Tomcat、Jetty或Undertow(无需部署war包,通过打好的jar包就可以直接运行应用程序)。
提供一站式的 “starter” 依赖,以简化Maven配置(需要整合什么框架,直接导对应框架的starter依赖即可)。
尽可能自动配置Spring和第三方库(除非特殊情况,否则几乎不需要我们进行配置)。
提供生产就绪功能,如:指标、运动状况检查和外部化配置。
没有代码生成,也没有XML配置要求。
1、首先点击 【spring initializr】,然后配置项目使用的jdk环境,最后点击【next】。
package com.baidou.controller;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RestController;
/**
* 接收请求并将数据响应到页面
* @author 白豆五
* @version 2022/8/24 18:05
* @since JDK8
*/
@RestController
public class HelloController {
@GetMapping("/hello")
public String hello(){
return "Hello World!";
}
}
6、启动springboot项目,跟之前运行Java程序一样,快捷键:shift+f10
。
项目启动成功后是这个样子的:
7、用浏览器访问:http://localhost:8080/hello。
ok到这里你已经学会SpringBoot项目的基本创建和运行流程啦
因为我们通过Maven方式构建,所以里面就是一个标准的Maven项目结构(约定大于配置)。
SpringBoot项目结构如下:
springboot01_quickstart //工程根目录
|---target //工程编译打包输出目录
|---.gitignore //上传Git的时候忽略一些文件和目录
|---pom.xml //管理Maven依赖
+---src
+---main //项目主目录
| +---java //Java源码文件目录
| | \---com
| | \---baidou
| | |---controller
| | |---service
| | |---dao
| | |---pojo
| | |---config
| | |---...
| | \---SpringBootDemoApplication //SpringBoot主类
| |
| \---resources //资源文件目录
| |---static //放静态资源文件,如 js、css等
| |---templates //页面模板,如 Thymeleaf、FreeMarker等
| \---application.yml //SpringBoot核心配置文件
|
\---test //单元测试目录
+---java //单元测试Java源码文件目录
| \---com
| \---baidou
| |---controller
| |---service
| |---dao
| |---pojo
| |---config
| |---...
| \---SpringBootDemoApplicationTests //SpringBoot测试主类
\---resources //单元测试资源文件目录
扩展:使用tree
命名生成目录树:
生成目录结构:tree
生成目录结构(包括文件):tree /f