SpringBoot基础入门
一、Spring Boot 自述
世界上最好的文档来源自官方的《Spring Boot Reference Guide》,是这样介绍的:
Spring Boot makes it easy to create stand-alone, production-grade Spring based Applications that you can "just run"…Most Spring Boot applications need very little Spring configuration.
Spring Boot(英文中是"引导"的意思),是用来简化Spring应用的搭建到开发的过程。应用开箱即用,只要通过 "just run"(可能是 java -jar 或 tomcat 或 maven插件run 或 shell脚本),就可以启动项目。二者,Spring Boot 只要很少的Spring配置文件(例如那些xml,property)。
因为"习惯优先于配置"的原则,使得Spring Boot在快速开发应用和微服务架构实践中得到广泛应用。
Java JDK环境和Maven工具安装完,就可以Spring Boot学习啦!二、HelloWorld实战详解(一)、创建Spring Boot项目的两种方式
创建Spring Boot项目有两种方式,一个是通过Spring Initalizr脚手架来创建一个spring Boot工程,也可通过普通的maven工程来改造成一个spring Boot工程。1、脚手架方式创建Spring Boot项目
IDEA开发工具为我们提供的一种快速创建spring Boot项目的一个功能(可视化界面),我们只需要点点鼠标就可以快速创建,缺点:必须在有网络的环境下才能创建,等下步骤会说到。
1).点击创建项目 file>new>project,选择Spring Initializr(脚手架),完成点击 next即可
选择好你的JDK版本环境(Project SDK)
https://start.spring.io/ 为脚手架的服务连接,是一个在线服务功能,需要联网才能使用,可以试着点进去看看。
2)编辑项目的信息,编辑完成点击 next即可
· groupId:域名倒叙
· ArtifactId:项目名称
· 其他默认即可
3)配置springboot项目的基础依赖,添加完成点击 next即可
· 选择项目需要添加的依赖勾选即可,已选择的依赖会在右侧显示处理
· 基础的springboot我们选择一个Spring Web依赖即可
4)确认项目的的信息以及路径,确认无误finish即可
5)选择新窗口打开,项目界面如下,可以通过自动生成的启动类启动项目了
6)我们可以查看项目的pom.xml文件
<? xml version ="1.0" encoding ="UTF-8" ?>
< project xmlns ="http://maven.apache.org/POM/4.0.0" xmlns: xsi ="http://www.w3.org/2001/XMLSchema-instance"
xsi :schemaLocation ="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd" >
< modelVersion > 4.0.0 modelVersion >
< parent >
< groupId > org.springframework.boot groupId >
< artifactId > spring-boot-starter-parent artifactId >
< version > 2.7.7 version >
< relativePath />
parent >
< groupId > com.learn groupId >
< artifactId > springboot artifactId >
< version > 0.0.1-SNAPSHOT version >
< name > springboot name >
< description > Demo project for Spring Boot description >
< properties >
< java.version > 1.8 java.version >
properties >
< dependencies >
< dependency >
< groupId > org.springframework.boot groupId >
< artifactId > spring-boot-starter-web artifactId >
dependency >
< dependency >
< groupId > org.springframework.boot groupId >
< artifactId > spring-boot-starter-test artifactId >
< scope > test scope >
dependency >
< dependency >
< groupId > junit groupId >
< artifactId > junit artifactId >
< version > 4.12 version >
dependency >
dependencies >
< build >
< plugins >
< plugin >
< groupId > org.springframework.boot groupId >
< artifactId > spring-boot-maven-plugin artifactId >
plugin >
plugins >
build >
project >
脚手架创建spring Boot工程步骤完毕。
总结:可以通过IDEA工具的脚手架(Spring Initializr)来配置spring Boot工程,初始化我们的项目信息,还能给我们的项目添加一些依赖,并且为我们生成了包路径,生成了启动类,可直接启动,缺点:需要网络。 2、Maven方式创建Spring Boot项目
通过更改pom.xml中的配置把项目变成spring Boot项目,优点:没有网络也可以创建spring Boot项目,只要我们mavne已经下载spring Boot项目的必要依赖。
· 步骤的核心就是修改我们maven文件中pom.xml文件,修改成上面的脚手架生成的pom.xml文件即可。
我们还是从创建maven项目实操开始吧。
1)创建maven项目(file> new > project),点击下一步
2)编辑好项目的信息,点击next完成,在新窗口打开
3)编辑好项目的信息,点击finish完成,在新窗口打开
4)配置项目的pom.xm文件
这是刚创建好的maven空项目,我们可以给他配置成为一个springboot项目
· 父工程依赖
org.springframework.boot
spring-boot-starter-parent
2.5.2
· Spring Web依赖
org.springframework.boot
spring-boot-starter-web
· 写项目的启动类 package com.learn.springboot; import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; @SpringBootApplication public class SpringbootApplication { public static void main(String[] args) { SpringApplication.run(SpringbootApplication.class, args); } }
5)启动项目
6)我们可以查看项目的pom.xml文件
<? xml version ="1.0" encoding ="UTF-8" ?>
< project xmlns ="http://maven.apache.org/POM/4.0.0" xmlns: xsi ="http://www.w3.org/2001/XMLSchema-instance"
xsi :schemaLocation ="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd" >
< modelVersion > 4.0.0 modelVersion >
< parent >
< groupId > org.springframework.boot groupId >
< artifactId > spring-boot-starter-parent artifactId >
< version > 2.7.7 version >
< relativePath />
parent >
< groupId > com.learn groupId >
< artifactId > springboot artifactId >
< version > 0.0.1-SNAPSHOT version >
< name > springboot name >
< description > Demo project for Spring Boot description >
< properties >
< java.version > 1.8 java.version >
properties >
< dependencies >
< dependency >
< groupId > org.springframework.boot groupId >
< artifactId > spring-boot-starter-web artifactId >
dependency >
< dependency >
< groupId > junit groupId >
< artifactId > junit artifactId >
< version > 4.12 version >
dependency >
dependencies >
< build >
< plugins >
< plugin >
< groupId > org.springframework.boot groupId >
< artifactId > spring-boot-maven-plugin artifactId >
plugin >
plugins >
build >
project >
maven方式创建springboot项目步骤完毕。
总结:通过修改maven 项目的pom.xml文件,添加父工程以及相关依赖我们就可手动创建springboot一个简单的工程了,当然它仅仅就是一个基础的springboot的工程而已,我们需要根据项目的实际需求,手动添加插件和依赖。 (二)、HelloWorld编写1、Controller层
HelloWorldController的代码如下:
/**
* Spring Boot HelloWorld案例
*
* Created by xiaobai on 2023/1/4.
*/
@RestController
public class HelloWorldController {
@RequestMapping("/")
public String sayHello() {
return "Hello,World!";
}
}
@RestController和@RequestMapping注解是来自SpringMVC的注解,它们不是SpringBoot的特定部分。
1. @RestController:提供实现了REST API,可以服务JSON,XML或者其他。这里是以String的形式渲染出结果。
2. @RequestMapping:提供路由信息,"/"路径的HTTP Request都会被映射到sayHello方法进行处理。
具体参考,世界上最好的文档来源自官方的《 Spring Framework Document 》 2、启动应用类
和第一段描述一样,开箱即用。如下面Application类:
/**
* Spring Boot应用启动类
*
* Created by xiaobai on 2023/1/4
*/
@SpringBootApplication
public class Application {
public static void main(String[] args) {
SpringApplication.run(Application.class,args);
}
}
1. @SpringBootApplication:Spring Boot 应用的标识
2. Application很简单,一个main函数作为主入口。SpringApplication引导应用,并将Application本身作为参数传递给run方法。具体run方法会启动嵌入式的Tomcat并初始化Spring环境及其各Spring组件。 3、Controller层测试类
/**
* Spring Boot HelloWorldController 测试 - {@link HelloWorldController}
*
* Created by xiaobai on 2023/1/4.
*/
public class HelloWorldControllerTest {
@Test
public void testSayHello() {
assertEquals("Hello,World!",new HelloWorldController().sayHello());
}
}三、运行
Just Run的宗旨,运行很简单,直接右键Run运行Application类。同样你也可以Debug Run。可以在控制台中看到:
Tomcat started on port(s): 8080 (http)
Started Application in 5.986 seconds (JVM running for 7.398)
然后访问 http://localhost:8080/ ,即可在页面中看到Spring Boot对你 say hello: Hello,World!
查干湖冬捕再刷纪录,一网拉出50万斤,为何能做到年年大丰收?说起查干湖,于我们而言,印象最为深刻的当然属它的冬捕盛况了。每年的12月26日开始,就是查干湖最为热闹的时候,这也是查干湖冬捕的开始。此时的查干湖不仅渔民热火朝天的准备,同时也能吸
俄罗斯美女在中国边境小城卖力赚钱,直言中国更像老家?众所周知,俄罗斯女性们都有着金发碧眼,高挑性感的身材。正是由于俄罗斯当地有着遍地如云的美女们,这里也就成为了我国多数男性游客们出国旅游的首选地了。(此处已添加小程序,请到今日头条客
外地人去海南过冬,去哪个城市比较温暖?一不小心选错城市太冷了长年无冬,温暖如春,面朝大海,春暖花开。这是你认识的海南。但是,来过之后,你会发现,真实的海南,可能比你的老家还冷。很多人第一次到海南过冬,以为找房子才是重点。殊不知选错城市才是最
政策大变!未来看好的方向关于新十条,权威解读看这里新十条有关政策,进一步减少出行限制,不再开展落地检,大部分场所不需要核酸证明和健康码了。就拿我自己来说,目前已经7天没做核酸了。这意味着投资策略也要发生改
累了吗?停下脚步,喝点鸡汤吧感想人生是一个很漫长的过程,在不同的人生阶段,在不同的时代,本身就会有不一样的内容。所以去接受失败就此摆烂,还是调整心态重新起航,没有对错可言。关键在于你选择什么,那就坚持什么!失
游在乌镇的故事(三)冬日生活打卡季纵然是在雨中,但乌镇依旧美的炫目。深褐色的木桥栏杆旁,笔直的水杉耸立,间或有鸡爪械的红叶印衬着,红的耀眼绿的深沉,一如穿城而过的运河,悠悠地唱着古老韵味的歌,牵连着厚
英吉沙县旅游景点有哪些?英吉沙县英吉沙县旅游景点有穆孜鲁克湿地公园英吉沙国家湿地公园英吉沙县土陶村景区英吉沙古城墙英吉沙县北湖公园英吉沙古街新疆英吉沙萨罕国家沙漠公园英吉沙县南湖旅游度假区英吉沙县文化馆英
贝莱德2023年能源股和医疗保健股机会最大过去40年的大稳健时期已经结束,我们将进入一个新时期。全球最大的资产管理公司贝莱德(BlackRock)认为,2023年投资者需要制定新的投资策略。贝莱德投资研究所(BII)负责人
买手机建议一步到位,目前只有这3款手机符合要求,能用到2025年买手机建议一步到位,目前只有这3款手机符合要求,能用到2025年。真我GT大师探索版配置CPU搭载骁龙870处理器LPDDR4XUFS3。1屏幕三星E3柔性曲面屏,支持1080P分
河南7村3镇(乡)入选全国乡村旅游重点村镇(乡)近日,文化和旅游部国家发展改革委联合开展全国乡村旅游重点村镇遴选推荐工作,确定了第四批200个全国乡村旅游重点村和第二批98个全国乡村旅游重点镇(乡)名单。河南省济源市承留镇花石村
智能手机可能被时代淘汰?比尔盖茨预言下一个主角已登场随着信息时代的发展,电子设备已然成为人们日常必不可少的工具,比如电脑智能手机家用电器等。尤其是智能手机,它在我们的日常工作生活娱乐社交等方面扮演了一个重要的角色。可以说,如果没有智
这三个复姓被误认为是日本姓氏,其实来源于中国,且历史源远流长俗话说行不更名,坐不改姓,姓名在很早开始就不仅仅是一个人的代号,尤其是对于十分看重荣誉的古人来说,姓氏背后可能代表着自己的家族荣誉和个人威望,所以姓名对于一个人来说是十分重要的存在
杨鸣被禁赛,韩德君锻炼新人这两天的CBA可真是太热闹了,原因就在于CBA联赛开出了多笔罚款和停赛。事情还要从第二阶段开始,其中最多的当属西热力江,他已经被罚款了3次,而且还被停赛五场,而且每次的理由都不一样
官方津门虎国安退赛!三镇净胜球优势夺中超冠军,泰山卫冕失败在此前媒体连续曝光天津津门虎和北京国安末轮中超退赛之后,中超官方随即也宣布,津门虎与武汉三镇的比赛国安与泰山的比赛,津门虎和国安两队选择退赛,三镇与泰山均不战而胜,不过在三镇和泰山
丁俊晖誓夺第15冠世锦赛冠军,60横扫奥斯卡文,2023再次出击北京时间12月30日消息,随着马克塞尔比以96战胜卢卡布雷切尔,夺得2022年斯诺克英格兰公开赛冠军,本年度最后一项比赛结束。即将开始的2023年,中国一哥丁俊晖能否上演王者归来好
亲子的欢乐时刻,感受不同的地域特色酒店住上瘾杭州漫旅为亲子旅客带来了不一样的互动体验空间,感受各地的地域特色!曼居酒店(南昌八一广场省电视台店)昌大南疆,南方昌盛,来到这座人杰地灵的城市南昌。白天游玩于滕王阁与绳金
穿上花毛衣,时刻为新年做好准备节日季来袭,花毛衣穿起来如何迎接马上到来的节日季?特意买来的新年战衣美丽冻人,不如一件厚厚的花毛衣更有节日氛围,12月到1月份的节日季,正是把鲜艳颜色和花纹全部穿在身上的好时机。英
诗歌时刻丨王峰遗忘将揭开孩子陌生的面孔,捧出澄澈的黎明捧出最澄澈的黎明王峰新诗选摘最醒觉的明亮新年初启。一个寂静的下午自成都返航济南蓝色的穹顶下,航路铺满白细的雾不见大地,不见山川不见河流只有侧窗外的半枚皎月,在层云间忽隐忽现是谁燃起
盘点2022这些人,成就了5G的高光时刻!20222022年,5G商用发展成效显著,正在加速产业数字化,全面赋能经济社会发展。运营商5G投资超过4000亿元,共带动8。6万亿元的经济产出。而这一切离不开奋战在ICT行业的5
汪小菲回应深夜怒斥大S,到底身患何病,天天躺着不管孩子?昨夜汪小菲直播称大S每日躺在家,不能带孩子户外活动。小S之前也说姐姐每日都在家不出门,s妈妈也曾说大S不出门不工作。小s甚至说过姐姐整日躺床上,连厕所都是韩国欧巴带去上的。有的说她
写给高三的儿子2022生机大会在头条看见彼此你敢说出你心中最爱的人吗见信如我!儿子,你一岁的时候,我实在无法忍受与你们母子分居两地,放弃了上海的生活回到济南。还清晰地记得在那个小广场,你在我跟你
一个内心强大的人都经历过了什么?内心的强大,大致上可以分为两种,一种是能力或技能的强大,这是一个人的硬实力一种是心理或者精神上的强大,这是一个人的软实力,二者互为依存缺一不可的。内心强大的人,他们都经历过什么?除