SpringBoot之路(3)第一个SpringBoot项目实例,到底是咋跑起来的呢原创手记

兄弟们,学习SpringBoot不能光说不练,下面是第一个案例,让我们了解下SpringBoot是怎么运行起来的吧。

SpringBoot项目可以基于maven构建的,实际上maven是一个Java项目的外挂,当使用maven之后,项目的构建、编译、运行都交给这个外挂管理了,但是也要符合maven对项目结构等方面规范要求。

maven就像一个应用生产的流水线,按规矩来,可以快速批量生产标准应用。

所以基于maven构建的SpringBoot应用,那也是标准件,所以Spring官方也提供了标准件的生产工具,通过该工具可以直接生成一个SpringBoot应用,我们直接导入开发工具(eclipse或idea或其他工具)使用即可,省的一步步配置麻烦,反正都是按maven规范定好的项目结构。

OK,这个可以直接生成SpringBoot的工具就是SpringInitializr啦。

maven项目的结构都是确定的,然后maven会根据pom.xml配置自动导入相应的jar包,并自动帮我们构建项目,我们只需要运行项目即可,就是这么舒心。

spring-boot-hello:项目名称--src/man/java:java源代码--src/main/resources:配置文件、图片、网页等静态资源----application/properties:项目配置文件,配置项目访问路径、启动端口等信息--src/test/java:测试代码--target:项目编译打包后存储位置--pom.xml:maven配置文件,用于配置jar包依赖及项目构建所需信息项目如何运行的详解1、pom.xml分析既然是maven管理的,就得看maven是怎么把这个项目跑起来的,首先maven先看配置文件pom.xml,文件内容如下。

org.springframework.bootspring-boot-starter-parent2.2.4.RELEASE然后看下项目标志信息部分如下,说明了该maven项目所属的机构groupId,项目名称name,还有maven标志名artifactId,也就是说规定了该项目的身份信息,以便于被其他项目定位调用使用什么的。

org.springframework.bootspring-boot-starterorg.springframework.bootspring-boot-starter-testtestorg.junit.vintagejunit-vintage-engine然后看下插件部分,spring-boot-maven-plugin非常厉害,能将项目打包为jar或者war应用,而且可以执行SpringBoot应用。

@SpringBootApplicationpublicclassSpringBootHelloApplication{publicstaticvoidmain(String[]args){SpringApplication.run(SpringBootHelloApplication.class,args);}}说实话,看到这段代码,太平庸了,就是一个main方法,然后SpringApplication.run表示启动程序,启动改程序需要的参数是SpringBootHelloApplication.class和args,很显然,args是启动参数,我们啥也没设置,所以真正的内涵都在SpringBootHelloApplication.class这个类里面。

然后我们自信看下这个类,就是光秃秃的一个普通类嘛,搞不懂为啥这么牛能启动大名鼎鼎的SpringBoot,等等,好像这个类有一个注解@SpringBootApplication,这个注解是唯一跟我们之前普通类不同的地方,看来所有的窍门都在这个注解上。

刚刚我们分析了,SpringBoot启动时,有用的参数也就SpringBootHelloApplication.class,也是就是SpringBootHelloApplication类信息。

@SpringBootConfiguration@EnableAutoConfiguration@ComponetScan这几个很眼熟啊,看到这几个注解,我就基本明白咋回事了。

首先@SpringBootConfiguration,看到Configuration这是个Spring配置类,也就是说本类会被Spring容器管理,并加载里面的配置信息,比如bean定义等,此处虽然啥也没定义,但是现在已经有Spring容器啦。

其次,@EnableAutoConfiguration,这个是启动自动配置的意思,啥是自动配置,就是把所有配置类都加载到容器,比如项目中有多个@Configuraion,统统纳入Spring管理,这样项目中所有的配置、bean定义都可以在容器中管理啦。

最后,@ComponetScan,制定了扫描包的范围,当然配置类很多,也不能不分你我统统都用了,可以通过该注解指定扫描的包的范围。注意默认情况下,就是不写参数的情况下,SpringBoot会扫描@SpringBootApplication注解的类所在的包及其子包。

哈哈,到这就很清晰了,首先maven通过pom.xml的配置,为项目的启动奠定了编译基础。

然后当我们启动时,通过@SpringBootApplication注解,启动了Spring容器,并将符合扫描范围的配置类及bean统统纳入了容器管理。

看明白了,就是通过注解整合和自动配置,将之前啰里啰嗦的各类配置自动化了,完事。

所以只要对Spring技术很熟悉,只要稍微了解下SpringBoot的结构,就能上手了,就这么简答。

THE END
1.34个经典javaweb项目实例javaweb项目完整案例学生宿舍管理系统源码+数据库(高分毕业设计).zip 浏览:180 5星 · 资源好评率100% javaweb项目完整案例学生宿舍管理系统源码+数据库(高分毕业设计).zip 本项目是一套基于JavaWeb实现的学生管理系统 或 学生宿舍管理系统,主要针对计算机相关专业的正在做毕设的学生与需要项目实战练习的java人群。包含https://download.csdn.net/download/m0_58466526/87575554
2.java项目开发完整案例javaweb项目开发案例精粹java项目开发完整案例 javaweb项目开发案例精粹 项目实例: 客户管理系统 先写原型:只有页面,并没有实际的功能; 功能分析: 添加客户;查询;编辑;删除;多条件组合查询; 创建表 创建包:公司名.项目名.分层 com.haut.damain com.haut.Dao com.haut.servicehttps://blog.51cto.com/u_13354/6862578
3.Java简单项目案例详解及代码分享21xrx.com在学习编程语言时,一个好的理解方式是通过练习来巩固自己的知识。本文将介绍一些Java的简单项目案例,并提供代码分享和详细讲解,以帮助Java初学者们更好地理解Java。 一、基于Java的简单计算器 这是一个基于Java的简单计算器项目。该项目使用Java Swing框架来构建用户界面,并在后台使用Java语言进行计算。 https://21xrx.com/Articles/read_article/83767
4.Java项目开发案例精粹出版年: ?xvi, 416页/CNY55.00 页数/价格: 2010 简介: 本书以61个案例给用户讲解了使用Java语言进行各种常见项目开发的技术和方法, 由于面向的是初中级用户, 因此技术主要涉及Windows窗体程序开发和简单的Web程序开发, 项目类型主要包括Windows系统类、游戏类、网络类、数据库类和其他的一些类型。名称http://www.lib.wh.sdu.edu.cn/multimedia/DiskShow16762.html
5.精通JavaEE项目案例(豆瓣)本书结构脉络清晰,内容深入浅出,适合Java初、中级读者学习使用,对没有项目开发经验的读者是一本实例指导用书,同时也可以作为IT培训机构的培训教材。 我来说两句 短评 ··· 热门 / 最新 / 好友 还没人写过短评呢 我要写书评 精通JavaEE项目案例的书评 ··· ( 全部0 条 ) 论坛 ··· 在这本书https://book.douban.com/subject/2363663/
6.Java项目开发案例全程实录PHP 项目开发案例全程实录 作者:刘中华 ISBN:9787302241928 出版社:清华大学出版社 出版年:2011 Visual C++项目开发案例全程实录 作者:刘锐宁 ISBN:9787302241935 出版社:清华大学出版社 出版年:2011 JSP项目开发案例全程实录 作者:明日科技 ISBN:9787302241904 出版社:清华大学出版社 出版年:2011 Java项目开发全程https://www.las.ac.cn/front/book/detail?id=ba56241291356c499e47760f19aea295
7.JAVA项目开发案例全程实录(超级高清).PDFJava程序设计与项目实战全程实录光盘 简介:本书从初学者学习Java编程的角度出发,根据作者多年的程序设计经验,按照科学的学习规律,由浅入深、循序渐进地向读者讲述了Java开发环境的搭建、Java基础语法知识、Java算法流程、面向对象高级特性、Java的输入/输出、多线程机制、Swing界面编程、Applet的基本知识、Java 2D/3D、Javhttps://www.iteye.com/resource/cwl110120-10981881
8.Java项目开发案例全程实录(第2版)PDF扫描版[90MB]电子书下载《Java项目开发案例全程实录(第2版)》以进销存管理系统、企业内部通信系统、企业人事管理系统、酒店管理系统、图书馆管理系统、企业快信、欣想电子商城、医药管理系统、企业门户网站、BBS系统、手机网络游戏和棋牌游戏系统之网络五子棋12个实际项目开发程序为案例,从软件工程的角度出发,按照项目的开发顺序,系统、全面地介绍https://www.jb51.net/books/196795.html
9.JavaWeb项目开发案例精粹视频与源码合集(免费)如果您想要了解更多的Java后端开发知识,请访问我的个人博客吧 本文档为Java Web项目开发案例精粹视频与源码,每集按照项目的开发顺序,系统且全面地介绍了程序的开发流程。 资源合集 资源名称资源地址 Java Web项目开发案例精粹01-企业日常事务管理系统http://down.51cto.com/data/494328 https://www.jianshu.com/p/565bb6d85d5b
10.JavaWeb程序设计与项目案例实验指导汇总清华实验01WEB开发JavaWeb程序设计与项目案例实验指导 实验一WEB开发基础 一、实验目的 1.了解JSP、Servlet运行环境,熟悉Tomcat服务的配置。 2,会运行一个JSP程序,能够完成简单的JSP程序的编写。 二、实验要求 1.编写一个Hello.jsp的JSP程序,它在浏览界面上输出一个字符串Hello。 https://max.book118.com/html/2024/0328/6131131003010110.shtm
11.39套Java进阶高级架构师教程第十套:【项目实战】设计模式综合项目(实战),设计模式综合应用的实战案例视频教程 第十一套:【项目实战】软件系统功能设计(实战)训练(6个设计案例,真实项目功能需求)视频教程 第十二套:【系统学习】Java数据结构和算法精讲版(数组、栈、队列、链表、递归、排序、二叉树、红黑树、堆、哈希表)视频课程 https://www.soft1188.com/java/618.html
12.《JavaWeb项目开发案例实战—SpringBoot+MyBatis+Hibernate+SprJava Web项目开发案例实战—Spring Boot+MyBatis+Hibernate+Spring Cloud(微课视频版)java核心技术编程思想框架开发程序设计 自营 中国水利水电出版社京东自营官方旗舰店 Java Web项目开发案例实战—Spring Boot+M 尹有海著 京东价 ¥ 促销 展开促销 配送至 https://item.jd.com/12995355.html
13.《Java项目开发全程实录(第3版)(配光盘)(软件项目开发全程实录Java17官方入门教程Java17官方编程手册Java入门经典Java开发实例大全(基础卷)Java开发实例大全(提高卷)Java实例大全1卷Java项目案例Java开发实战Java视频教程Java入门经典(实例版)Java从入门到精通(实例第2版)Java从入门到精通(第4版)Java编程入门官方教程(第7版)JavaJDK9学习笔记Java9编程(第10版)Java11官方教程JSP&http://product.dangdang.com/23360432.html
14.Android案例开发项目实战施冬梅PDF下载Java知识分享网Android案例开发项目实战 施冬梅 PDF 下载分享到: 0 时间:2024-04-11 11:27来源:http://www.java1234.com 作者:转载侵权举报 本书以Android Studio为开发环境,对Android基础编程和Android网络编程中最重要的基础内容分任务进行了讲解,知识的学习与任务的实施得到了很好的结合。http://www.java1234.com/a/javabook/javabase/2024/0411/25094.html
15.Java实训范文7篇(全文)通过游戏的开发练习后,引入Java在WEB开发项目中的实训案例,让学生能够熟练掌握开发工具的使用、学会配制Tomcat服务器和一些有关设计模式的知识。恰当案例能起到提纲挈领的作用,也有助于学生在学习过程中积极进行思考,使学生带着问题有目的去进行学习,所学的知识有能去解决问题。在不断的思考与应用的过程中加深学生对https://www.99xueshu.com/w/ikeyy0230yrz.html
16.JAVA案例开发集锦(1000多种开发案例附源码)开发技术JAVA案例开发集锦java与Applet,java特效,xml其他,java与游戏,java文件操作,java与安全,java与数据库,java与servlet,java与网络,java综合https://www.coder100.com/index/index/content/id/1612483
17.Java中常见PDF报表生成方式"F:\\Java项目案例(手动完成)\\传智健康项目\\itcast_health\\health_parent\\jasperReportsDemo\\src\\main\\resources\\demo.jrxml"; // 生成编译文件的位置 String jasperPath = "F:\\Java项目案例(手动完成)\\传智健康项目\\itcast_health\\health_parent\\jasperReportsDemo\\src\\main\\resources\\demohttps://maimai.cn/article/detail?fid=1742066107&efid=uixBJpMEdBhp6ajSpdtjXA