跟我学SpringBoot之HelloWorld 曾经终败给现在 2022-11-02 00:59 144阅读 0赞 > 只需低头努力,剩下的交给时光,时间会公平地帮你处理一切 #### 概述 #### 提到Spring框架,相信只要是学过Java的都很熟悉,那SpringBoot是个什么框架呢? 我们学习一个框架首先需要搞清楚这个框架是做什么的?为了解决什么问题? #### SpringBoot是什么? #### Spring Boot可以很容易地创建独立的、基于Spring的生产级应用程序,致力于以“最少的配置”来完成应用的开发 从字面上理解,就是SpringBoot的使命就是减少配置,让开发变得更高效 #### 为了解决什么问题? #### 在Spring时代,我们需要开发一个功能或者使用第三方的组件,都需要进行一系列的配置,才能完成组件最基础功能的开发 SpringBoot的到来,简化了开发过程中配置,让应用以更少的配置来完成功能的运行。 其实从根本上讲SpringBoot并没有减少配置,只是把一些约定俗成的配置变成了自动配置, SpringBoot会根据依赖的Jar来“猜测”你可能需要用到的功能,从而加载应用的默认配置, 让你在使用第三方的组件时可以用很少的配置来完成基本的功能 #### SpringBoot相比Spring有什么新特性 #### * SpringBoot直接内嵌Tomcat、Jetty等应用服务器,你开发的应用直接运行,不用打成war包,这应该是对SpringBoot最直观的印象 * SpringBoot提供了很多"Starter"依赖包用来简化配置,比如redis、rabbitmq等中间件都有现成的"Starter",引入时可以以很少的配置来完成基本的功能 * 尽可能的自动配置Spring和引入的第三方库 * SpringBoot提供了生产环境的监控、运行状态检查以及外部化配置 以上是我认为SpringBoot最重要的几个特性,这些特性能让我们的应用看起来更简洁,使研发人员更专注于业务功能的实现。 #### 第一个SpringBoot程序:HelloWorld #### 也不知道是从什么时候开始的,不管学习什么编程语言,大家都习惯从HelloWorld开始,HelloWorld是一切学习的开端。下面我们就用SpringBoot来构建一个最简单的HelloWorld应用程序 环境说明: * JDK1.8 * SpringBoot2.4.3 * gradle4.4 ##### 1、创建一个gradle项目,并引入依赖 ##### compile 'org.springframework.boot:spring-boot-starter-parent:2.4.3' compile 'org.springframework.boot:spring-boot-starter-web:2.4.3' 引入依赖后,默认会从maven中央仓库拉取依赖项,慢到你怀疑人生!!! 这里建议使用国内的maven私服,比如阿里云的maven私服,需要在gradle配置里面新增配置 allprojects { repositories { maven { url 'https://maven.aliyun.com/repository/public/' } mavenLocal() mavenCentral() } } ##### 2、写一个HelloWorld类 ##### @RestController @EnableAutoConfiguration public class HelloWorld { @RequestMapping("/hello") String index(){ return "hello world"; } public static void main(String[] args){ SpringApplication.run(HelloWorld.class,args); } } 这里使用到了几个注解,@RestController和@RequestMapping是SpringMVC中的注解,只要是做过SpringMVC开发的同学肯定很熟悉这两个注解,@RestController用来标记Controller,@RequestMapping用来声明一个Http接口 @EnableAutoConfiguration注解是SpringBoot中的,该注解会根据你添加的依赖jar包来“猜测”你希望如何配置Spring 举个例子,你某天出门上班,看到别人带了雨伞,你立马意识到可能是要下雨了 这里SpringBoot也是一样,看到你的依赖项里面有某个组件,就会帮你做好自动配置 上面例子中依赖的web,SpringBoot会识别出来自动完成web相关的配置 ##### 3、运行程序 ##### . ____ _ __ _ _ /\\ / ___'_ __ _ _(_)_ __ __ _ \ \ \ \ ( ( )\___ | '_ | '_| | '_ \/ _` | \ \ \ \ \\/ ___)| |_)| | | | | || (_| | ) ) ) ) ' |____| .__|_| |_|_| |_\__, | / / / / =========|_|==============|___/=/_/_/_/ :: Spring Boot :: (v2.4.3) 2021-02-22 20:13:46.544 INFO 11344 --- [ main] o.s.s.concurrent.ThreadPoolTaskExecutor : Initializing ExecutorService 'applicationTaskExecutor' 2021-02-22 20:13:47.069 INFO 11344 --- [ main] o.s.b.w.embedded.tomcat.TomcatWebServer : Tomcat started on port(s): 8080 (http) with context path '' 2021-02-22 20:13:47.089 INFO 11344 --- [ main] c.gzb.springboot.helloworld.HelloWorld : Started HelloWorld in 4.994 seconds (JVM running for 8.934) 如果看到如上的信息,说明你的项目已经启动成功了,访问http://localhost:8080/hello可以在网页上显示出来 hello world 至此一个SpringBoot版的HelloWorld就完成了,可以看到自始至终你只做了两件事:加入依赖、写Java代码。 完全没有写一行配置,SpringBoot帮你完成了自动配置,让你专注于功能开发 ### 把项目打成jar包运行 ### 使用gradle把项目打成jar包,可以直接以jar包的形式启动应用 在项目中引入boot插件 plugins { id 'java' id 'org.springframework.boot' version '2.0.0.RELEASE' } 增加打包配置,指定mainClassName bootJar { mainClassName = 'com.gzb.springboot.helloworld.HelloWorld' } 运行 gradle build 在项目根目录下会生成一个build目录,在build/lib目录下就会生成项目的jar包 直接运行 java -jar springBoot-demo-1.0-SNAPSHOT.jar即可启动应用 源码已上传至https://github.com/pzjtian/springboot-demo,请持续关注~ > 如果感觉对你有些帮忙,请收藏好,你的关注和点赞是对我最大的鼓励! > 如果想跟我一起学习,坚信技术改变世界,请关注【Java天堂】公众号,我会定期分享自己的学习成果,第一时间推送给您 ![在这里插入图片描述][watermark_type_ZmFuZ3poZW5naGVpdGk_shadow_10_text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3B6anRpYW4_size_16_color_FFFFFF_t_70_pic_center_pic_center_pic_center_pic_center_pic_center_pic_center_pic_center_pic_center_pic_center_pic_center_pic_center_pic_center] [watermark_type_ZmFuZ3poZW5naGVpdGk_shadow_10_text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3B6anRpYW4_size_16_color_FFFFFF_t_70_pic_center_pic_center_pic_center_pic_center_pic_center_pic_center_pic_center_pic_center_pic_center_pic_center_pic_center_pic_center]: /images/20221024/dd0cfc1062a9472b9a1715b8e3186b9e.png
还没有评论,来说两句吧...