失眠网,内容丰富有趣,生活中的好帮手!
失眠网 > boot入门思想 spring_(第一讲)Spring Initializr-快速入门Spring Boot的最好选择

boot入门思想 spring_(第一讲)Spring Initializr-快速入门Spring Boot的最好选择

时间:2022-10-12 22:46:11

相关推荐

boot入门思想 spring_(第一讲)Spring Initializr-快速入门Spring Boot的最好选择

1讲:Spring Initializr-快速入门Spring Boot的最好选择

Spring Initializr [http://start.spring.io/]是引导你快速构建Spring Boot项目的不二选择。

它允许你通过简单的操作步骤,就可以构建出一个完整的Spring Boot应用程序。你可以通过Spring Initializr引导界面构建如下类型的Spring Boot应用:

Web应用程序 Restful 应用程序Batch应用程序

Spring Boot对很多第三方框架提供了良好的支持,可以通过对应的artifactId获得他们,这里列举其中的一部分供参考:

spring-boot-starter-web-services:用于构建可与外界交互的SOAP Web服务应用程序spring-boot-starter-web:可用于构建Web应用程序或者基于Restful风格的应用程序spring-boot-starter-test:可用于构建并编写单元测试和集成测试spring-boot-starter-jdbc:构建基于JDBC的应用程序spring-boot-starter-hateoas:通过引入HATEOAS功能,让你轻松实现RESTful服务spring-boot-starter-security:使用Spring Security对系统用户进行身份验证和鉴权spring-boot-starter-data-jpa:基于Hibernate实现的Spring Data JPAspring-boot-starter-cache:开启基于Spring Framework的缓存支持spring-boot-starter-data-rest:使用Spring Data REST提供REST服务

在本讲中,我将通过使用Spring Initializr来演示如何快速创建一个简单的Web应用程序。

使用Spring Initializr构建Web应用程序

使用Spring Initializr构建Web应用程序是一件非常简单快速的事情。

如上图所示,我们需要执行如下的几个操作:

通过浏览器访问Spring Initializr官网 ,然后再执行下面的几个选择项设置groupId :com.ramostear.spring.boot设置artifactId:spring-boot-quick-start项目名称:默认为spring-boot-quick-start基础包名:默认即可(你也可以选择修改)(通过点击More options展开)在搜索框中分别检索并选择如下几个组件:Web,Actuator,DevTools最后,点击“Generate Project”生成并下载项目将项目导入到IntelleJ IDEA中

Spring Boot项目目录结构

下图显示了在IDEA中导入刚才下载的项目目录结构:

SpringBootQuickStartApplication.java:Spring Boot运行的主文件,它负责初始化Spring Boot自动配置和Spring应用程序上下文

application.properties: 应用程序配置文件SpringBootQuickStartApplicationTests: 用于单元测试的简单启动器pom.xml: Maven构建项目的配置文件,包括了Spring Boot Starter Web等相关依赖项。特别指出,它会自动将Spring Boot Starter Parent作为整个工程的父依赖。

核心的代码

src/main/java包下放置我们主要的逻辑代码,src/test/java包下放置项目的测试代码,src/main/resources包下放置项目的配置文件以及一些静态资源文件,如页html文件,css文件和js文件等。我们从上到下依次进行介绍。

SpringBootQuickStartApplication.java

package com.ramostear.spring.boot.springbootquickstart;import org.springframework.boot.SpringApplication;import org.springframework.boot.autoconfigure.SpringBootApplication;@SpringBootApplicationpublic class SpringBootQuickStartApplication {public static void main(String[] args) {SpringApplication.run(SpringBootQuickStartApplication.class, args);}}

@SpringBootApplication: 负责初始化Spring Boot 自动化配置项和Spring应用程序上下文SpringApplication.run(): 负责启动Spring Boot应用程序的静态方法

application.properties

Spring Boot应用程序的配置文件,这里我们简单的设置一下项目启动的端口为8080(默认端口8080)和应用名称为Spring Boot Quick Start:

server.port= 8080spring.application.name= Spring Boot Quick Start

SpringBootQuickStartApplicationTests

package com.ramostear.spring.boot.springbootquickstart;import org.junit.Test;import org.junit.runner.RunWith;import org.springframework.boot.test.context.SpringBootTest;import org.springframework.test.context.junit4.SpringRunner;@RunWith(SpringRunner.class)@SpringBootTestpublic class SpringBootQuickStartApplicationTests {@Testpublic void contextLoads() {}}

集成了对Spring Boot应用程序进行单元测试所需要的全部环境

运行应用程序

如上如所示,点击运行按钮一键运行Spring Boot应用程序,成功启动后你将看到控制台中输出的如下日志信息:

"C:Program FilesJavajdk1.8.0_144binjava" .... _____ __ _ _/ / ___'_ __ _ _(_)_ __ __ _ ( ( )___ | '_ | '_| | '_ / _` | / ___)| |_)| | | | | || (_| | ) ) ) )' |____| .__|_| |_|_| |___, | / / / /=========|_|==============|___/=/_/_/_/:: Spring Boot :: (v2.1.4.RELEASE)...-04-21 16:44:16.784 INFO 2320 --- [ restartedMain] o.s.b.a.e.web.EndpointLinksResolver: Exposing 2 endpoint(s) beneath base path '/actuator'-04-21 16:44:16.849 INFO 2320 --- [ restartedMain] o.s.b.w.embedded.tomcat.TomcatWebServer : Tomcat started on port(s): 8080 (http) with context path ''-04-21 16:44:16.852 INFO 2320 --- [ restartedMain] .r.s.b.s.SpringBootQuickStartApplication : Started SpringBootQuickStartApplication in 3.526 seconds (JVM running for 5.448)

总结

现在,你已经掌握了如何通过Spring Initializr来快速构建Spring Boot Weby9应用程序,你可以在Github上获取本次内容的全部源码。

作者: 谭朝红

原文:

(第一讲)Spring Initializr-快速入门Spring Boot的最好选择​link.juejin.im

如果觉得《boot入门思想 spring_(第一讲)Spring Initializr-快速入门Spring Boot的最好选择》对你有帮助,请点赞、收藏,并留下你的观点哦!

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。