001 SpringBoot 介绍

简介: Spring Boot 概述Spring Boot 是一个轻量级框架,可以完成基于 Spring 的应用程序的大部分配置工作。

Spring Boot 概述

Spring Boot 是一个轻量级框架,可以完成基于 Spring 的应用程序的大部分配置工作。在本教程中,将学习如何使用 Spring Boot 的 starter、特性和可执行 JAR 文件结构,快速创建能直接运行的基于 Spring 的应用程序。

简单介绍 Spring Boot 后,我将引导您设置并运行两个 Spring Boot 应用程序:一个简单的 “Hello, World” 应用程序和一个稍微复杂一点的 Spring MVC RESTful Web 服务应用程序。请注意,我在应用程序示例中使用的是 Spring Boot V1.5.2。推荐您使用 V1.5.2 或更高版本,但这些示例应适用于任何高于 1.5 的版本。

Spring Boot 是什么

Spring Boot 的目的是提供一组工具,以便快速构建容易配置的 Spring 应用程序。

问题:Spring 很难配置!

如果您编写过基于 Spring 的应用程序,就会知道只是完成 “Hello, World” 就需要大量配置工作。这不是一件坏事:Spring 是一个优雅的框架集合,需要小心协调配置才能正确工作。但这种优雅的代价是配置变得很复杂(别跟我提 XML)。

解决方案:Spring Boot

开始介绍 Spring Boot。Spring Boot 官网 对它的介绍比我的简介更为简洁:

Spring Boot 使您能轻松地创建独立的、生产级的、基于 Spring 且能直接运行的应用程序。我们对 Spring 平台和第三方库有自己的看法,所以您从一开始只会遇到极少的麻烦。

基本上讲,这意味着您只需极少的配置,就可以快速获得一个正常运行的 Spring 应用程序。这些极少的配置采用了注释的形式,所以没有 XML。

这一切听起来很不错,对吧?但 Spring Boot 到底是怎么工作的?

首先,它很有主见

Spring Boot 拥有观点。换句话说,Spring Boot 拥有合理的默认值,所以您可以使用这些常用值快速构建应用程序。

例如,Tomcat 是一个非常流行的 Web 容器。默认情况下,Spring Boot Web 应用程序使用了一个嵌入式 Tomcat 容器。

其次,它可以自定义

如果无法改变其想法,具有主见的框架就不是很好的框架。您可以根据自己的喜好轻松地自定义 Spring Boot 应用程序,无论是在进行初始配置时还是在开发周期的后期阶段。

例如,如果喜欢 Maven,可以轻松地在 POM 文件中更改 来替换 Spring Boot 默认值。教程后面会这么做。

开始使用 Spring Boot

Starter

starter 是 Spring Boot 的一个重要组成部分,用于限制您需要执行的手动配置依赖项数量。要想有效地使用 Spring Boot,您应该了解 starter。

starter 实际上是一组依赖项(比如 Maven POM),这些依赖项是 starter 所表示的应用程序类型所独有的。

所有 starter 都使用以下命名约定:spring-boot-starter-XYZ,其中 XYZ 是想要构建的应用程序类型。以下是一些流行的 Spring Boot starter:

  • spring-boot-starter-web 用于构建 RESTful Web 服务,它使用 Spring MVC 和 Tomcat 作为嵌入式应用程序容器。
  • spring-boot-starter-jersey 是 spring-boot-starter-web 的一个替代,它使用 Apache Jersey 而不是 Spring MVC。
  • spring-boot-starter-jdbc 用于建立 JDBC 连接池。它基于 Tomcat 的 JDBC 连接池实现。

Spring Boot starter 参考页面 还列出了其他许多 starter。您可以访问该页面来了解每个 starter 的 POM 和依赖项。

自动配置

如果您允许的话,Spring Boot 会使用其 @EnableAutoConfiguration 注释自动配置您的应用程序。自动配置基于类路径中的 JAR 和定义 bean 的方式:


  • Spring Boot 使用您在 CLASSPATH 中指定的 JAR,形成一个有关如何配置某个自动行为的观点。例如,如果类路径中有 H2 数据库 JAR,而且您没有配置任何其他 DataSource bean,您的应用程序会自动配置一个内存型数据库。
  • Spring Boot 使用您定义 bean 的方式来确定如何自动配置自身。例如,如果您为 JPA bean 添加了 @Entity 注释,Spring Boot 会自动配置 JPA,这样您就不需要 persistence.xml 文件。

查看配置:使用 –debug 选项启动您的 Spring Boot 应用程序,然后将向控制台生成一个自动配置报告。
转摘地址

目录
打赏
0
0
0
0
1
分享
相关文章
制造业ERP源码,工厂ERP管理系统,前端框架:Vue,后端框架:SpringBoot
这是一套基于SpringBoot+Vue技术栈开发的ERP企业管理系统,采用Java语言与vscode工具。系统涵盖采购/销售、出入库、生产、品质管理等功能,整合客户与供应商数据,支持在线协同和业务全流程管控。同时提供主数据管理、权限控制、工作流审批、报表自定义及打印、在线报表开发和自定义表单功能,助力企业实现高效自动化管理,并通过UniAPP实现移动端支持,满足多场景应用需求。
243 1
基于Java+Springboot+Vue开发的鲜花商城管理系统源码+运行
基于Java+Springboot+Vue开发的鲜花商城管理系统(前后端分离),这是一项为大学生课程设计作业而开发的项目。该系统旨在帮助大学生学习并掌握Java编程技能,同时锻炼他们的项目设计与开发能力。通过学习基于Java的鲜花商城管理系统项目,大学生可以在实践中学习和提升自己的能力,为以后的职业发展打下坚实基础。技术学习共同进步
276 7
ERP系统源码,基于SpringBoot+Vue+ElementUI+UniAPP开发
这是一款专为小微企业打造的 SaaS ERP 管理系统,基于 SpringBoot+Vue+ElementUI+UniAPP 技术栈开发,帮助企业轻松上云。系统覆盖进销存、采购、销售、生产、财务、品质、OA 办公及 CRM 等核心功能,业务流程清晰且操作简便。支持二次开发与商用,提供自定义界面、审批流配置及灵活报表设计,助力企业高效管理与数字化转型。
219 2
ERP系统源码,基于SpringBoot+Vue+ElementUI+UniAPP开发
如何使用 Spring Boot 和 Ant Design Pro Vue 实现动态路由和菜单功能,快速搭建前后端分离的应用框架
本文介绍了如何使用 Spring Boot 和 Ant Design Pro Vue 实现动态路由和菜单功能,快速搭建前后端分离的应用框架。首先,确保开发环境已安装必要的工具,然后创建并配置 Spring Boot 项目,包括添加依赖和配置 Spring Security。接着,创建后端 API 和前端项目,配置动态路由和菜单。最后,运行项目并分享实践心得,包括版本兼容性、安全性、性能调优等方面。
479 1
基于SpringBoot+Vue实现的留守儿童爱心网站设计与实现(计算机毕设项目实战+源码+文档)
博主是一位全网粉丝超过100万的CSDN特邀作者、博客专家,专注于Java、Python、PHP等技术领域。提供SpringBoot、Vue、HTML、Uniapp、PHP、Python、NodeJS、爬虫、数据可视化等技术服务,涵盖免费选题、功能设计、开题报告、论文辅导、答辩PPT等。系统采用SpringBoot后端框架和Vue前端框架,确保高效开发与良好用户体验。所有代码由博主亲自开发,并提供全程录音录屏讲解服务,保障学习效果。欢迎点赞、收藏、关注、评论,获取更多精品案例源码。
基于SpringBoot+Vue实现的家政服务管理平台设计与实现(计算机毕设项目实战+源码+文档)
面向大学生毕业选题、开题、任务书、程序设计开发、论文辅导提供一站式服务。主要服务:程序设计开发、代码修改、成品部署、支持定制、论文辅导,助力毕设!
基于SpringBoot+Vue实现的家乡特色推荐系统设计与实现(源码+文档+部署)
面向大学生毕业选题、开题、任务书、程序设计开发、论文辅导提供一站式服务。主要服务:程序设计开发、代码修改、成品部署、支持定制、论文辅导,助力毕设!
基于SpringBoot+Vue实现的大学生就业服务平台设计与实现(系统源码+文档+数据库+部署等)
面向大学生毕业选题、开题、任务书、程序设计开发、论文辅导提供一站式服务。主要服务:程序设计开发、代码修改、成品部署、支持定制、论文辅导,助力毕设!
基于Java+SpringBoot+Vue实现的车辆充电桩系统设计与实现(系统源码+文档+部署讲解等)
面向大学生毕业选题、开题、任务书、程序设计开发、论文辅导提供一站式服务。主要服务:程序设计开发、代码修改、成品部署、支持定制、论文辅导,助力毕设!
AI助理

你好,我是AI助理

可以解答问题、推荐解决方案等

登录插画

登录以查看您的控制台资源

管理云资源
状态一览
快捷访问