spring boot 入门_Spring Boot入门要知道的7件事

v2-0b01ca4743fed9b382903d09741d51c7_1440w.jpg?source=172ae18b

Spring Boot是一个难以理解的框架。在针对Spring Boot初学者的本教程中,我们将介绍Spring Boot的基础知识,并帮助您了解重要的概念-入门项目,自动配置和入门父母。

了解Spring Boot的架构

Spring Boot的构建基块是:

· Spring Boot入门项目

· Spring Boot Starter父级

· 自动配置

我们将通过与Spring和Spring MVC进行比较来了解Spring Boot想要实现的目标。一旦了解了这一点,就应该从Spring Boot的构建基块入手。

Spring Boot与Spring MVC与Spring

最重要的要了解的是:

Spring Boot无法与Spring或Spring MVC竞争。它使使用它们变得容易。

Spring Boot框架

Spring Framework最重要的功能是依赖注入。所有Spring模块的核心是依赖注入或IOC(控制反转)。

如果正确使用DI或IOC,我们可以开发松耦合的应用程序。松耦合的应用程序可以轻松地进行单元测试。

Spring BootMVC

Spring MVC提供了一种分离的方式来开发Web应用程序。通过使用诸如Dispatcher Servlet,ModelAndView和View Resolver的简单概念,可以轻松开发Web应用程序。

Spring Boot

Spring和Spring MVC的问题在于所需的配置数量:

<bean

class="org.springframework.web.servlet.view.InternalResourceViewResolver">

<property name="prefix">

<value>/WEB-INF/views/</value>

</property>

<property name="suffix">

<value>.jsp</value>

</property>

</bean>

<mvc:resources mapping="/webjars/**" location="/webjars/"/>

Spring Boot通过结合自动配置和入门项目解决了这个问题。Spring Boot还提供了一些功能,可以更快地构建可用于生产环境的应用程序。

Spring Boot自动配置

Spring和Spring MVC应用程序具有很多XML或Java Bean配置。

Spring Boot围绕此引入了新的思维过程。

我们可以为它带来更多情报吗?将Spring MVC JAR添加到应用程序后,我们可以自动配置一些bean吗?

· 如果Hibernate JAR位于类路径中,如何自动配置数据源呢?

· 如果Spring MVC JAR位于类路径中,如何自动配置Dispatcher Servlet呢?

将提供一些设置来覆盖默认的自动配置。

Spring Boot着眼于a)CLASSPATH上可用的框架b)应用程序的现有配置。基于这些,Spring Boot提供了使用这些框架配置应用程序所需的基本配置。这称为Auto Configuration。

Spring Boot入门项目

这是Spring Boot文档关于入门的内容。

入门程序是一组方便的依赖项描述符,您可以在应用程序中包括它们。您可以一站式购买所需的所有Spring和相关技术,而不必遍历示例代码并复制依赖项描述符的粘贴负载。例如,如果要开始使用Spring和JPA进行数据库访问,只需在项目中包括spring-boot-starter-data-jpa依赖项,就可以了。

让我们考虑一个示例启动器-Spring Boot Starter Web。

如果要开发Web应用程序或公开RESTful服务的应用程序,Spring Boot Start Web是首选。

以下屏幕快照显示了将Spring Boot Start Web添加到项目的依赖项时添加到我们的应用程序中的不同依赖项。

v2-929ba1227b99578731c39527c9cce425_b.jpg

这是通常用于开发Web应用程序的各种组件。Spring Boot Starter Web将它们组合在一起,并提供了一种简单的方法来使用它们。

· Spring Boot-核心,bean,上下文,AOP

· Web MVC —(Spring MVC)

· Jackson-用于JSON绑定

· 验证-Hibernate Validator,验证API

· 嵌入式Servlet容器-Tomcat

· 日志记录-logback,slf4j

任何典型的Web应用程序都将使用所有这些依赖项。Spring Boot Starter Web预装了这些。作为开发人员,我无需担心这些依赖项或其兼容版本。

Spring Boot提供了广泛的入门项目。Spring Initializr支持所有其他功能。各种入门项目和支持的选项包括:

· 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 JPA

· spring-boot-starter-cache:启用Spring框架的缓存支持

· spring-boot-starter-data-rest:使用Spring Data REST公开简单的REST服务

Spring Boot Starter父级

所有的Spring Boot项目通常在pom.xml中使用spring-boot-starter-parent作为父项。


<parent>

<groupId>org.springframework.boot</groupId>

<artifactId>spring-boot-starter-parent</artifactId>

<version>2.0.0.RELEASE</version>

</parent>

父POM允许您管理多个子项目和模块的以下内容:

· 配置:Java版本和其他属性

· 权限管理:依赖项的版本

· 默认插件配置

Spring Initializr:以F1速度创建Spring Boot项目

Spring Initializr 是引导您的Spring Boot项目的好工具。

它使您可以通过非常简单的UI创建各种基于Spring Boot的应用程序。您可以引导的一些应用程序类型包括:

· 网络应用

· 宁静的应用程序

· 批量申请

让我们以使用Spring Initializr创建Web应用程序为例。

v2-45baf4b43d7edc27e7a242191e202191_b.jpg

如上图所示,必须采取以下步骤:

· 启动Spring Initializr并选择以下内容

o 选择com.in28minutes.springboot为组

o 选择student-services作为工件

o 选择以下依赖性

§ 卷筒纸

· 单击页面底部的“生成项目”按钮。

· 将项目导入Eclipse。

Spring Boot和嵌入式服务器

创建可部署的应用程序时,可以将服务器(例如Tomcat)嵌入可部署的内部。

例如,对于Spring Boot应用程序,您可以生成包含嵌入式Tomcat的应用程序JAR。您可以将Web应用程序作为普通的Java应用程序运行!

嵌入式服务器意味着我们的可部署单元包含服务器的二进制文件(例如,tomcat.jar)。

让我们快速了解一下 spring-boot-starter-web


<dependency>

<groupId>org.springframework.boot</groupId>

<artifactId>spring-boot-starter-tomcat</artifactId>

<version>2.0.0.M6</version>

<scope>compile</scope>

</dependency>

您可以看到,默认情况下,Starter Web包含对Starter Tomcat的依赖关系。

· Tomcat是Spring Boot的默认嵌入式服务器。

· Spring Boot还支持Jetty和Undertow。

Spring Boot数据

Spring Data的任务是为数据访问提供一个熟悉且一致的,基于Spring的编程模型,同时仍保留基础数据存储的特​​殊特征。它使使用数据访问技术,关系和非关系数据库,map-reduce框架以及基于云的数据服务变得容易。

为了简化起见,Spring Data提供了可以使用的抽象(接口),而与基础数据源无关。

Spring Data中的一些子模块是:

· Spring Data JPA —关系数据库

· Spring Data MongoDB

· Spring Data REST-在Spring Data Repository周围展示很棒的REST API

最后,开发这么多年我也总结了一套学习Java的资料与面试题,如果你在技术上面想提升自己的话,可以关注我,私信发送领取资料或者在评论区留下自己的联系方式,有时间记得帮我点下转发让跟多的人看到哦。

v2-4e1102cdccfd291ccc6884b71f19a3ba_b.jpg

v2-4305b23102bcccd5bf91a4fb85090744_b.jpg
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值