Spring boot 基础web入门搭建

Spring Boot编程之旅——项目搭建及常用组件介绍 Spring Boot 是由 Pivotal(支付公司)推出的全新框架,其设计目的是用来简化新版 Java EE 的应用开发,并通过自动配置来简化 Spring 配置。对于刚接触 Spring Boot 的开发人员来说,需要熟悉 Spring Boot 的主要功能特性、基本配置选项、依赖管理机制、集成开发环境、web 支持等,并且了解一些扩展模块比如 Spring Security、WebSocket、Actuator 等。 阅读详情

springBoot 基础入门


简介
spring boot 现在已经成为java 搭建微服务系统的基础技能,生态圈已经越发的完善;网上的资料也很丰富了,学习之余总结下,巩固巩固。一下是一系列的创建使用流程,更多的适用一些有过了解和使用过的人员。

知识点:
1. 创建一个简单的springboot web项目
2. 打包可执行jar 和传统war包
3. 熟悉springboot 项目的基本结构

源码

源码链接地址

下一节 Spring boot Banner和icon

Spring boot Banner和icon

开启springboot应用程序

环境

 JDK: 1.8+
 springboot version: 2.1.6.RELEASE
 maven 项目环境
 开发工具  idea

首先创建一个父pom工程project
在这里插入图片描述

1. 父工程

xml 中使用 集成

<parent>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-parent</artifactId>
        <version>2.1.6.RELEASE</version>
    </parent>

不 过 我 们 通 常 使 用 依 赖 管 理 的 方 式 使 用 s p r i n g b o o t \color{red}{不过我们通常使用依赖管理的方式使用springboot} 不过我们通常使用依赖管理的方式使用springboot
(本教程使用parent方式)

 <dependencyManagement>
        <dependencies>
            <dependency>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-dependencies</artifactId>
                <version>${spring-boot.version}</version>
                <scope>import</scope>
                <type>pom</type>
            </dependency>
        </dependencies>
    </dependencyManagement>
2. 创建 demo项目

new 一个module, 创建 maven项目, 这样我们继承了 父项目,也就依赖了 spring-boot-starter-parent
在这里插入图片描述
demo 项目 pom中 添加 spring-boot-starter-web的依赖

 <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
        </dependency>

创建启动类,添加注解@SpringbootApplication

@SpringBootApplication
public class ApplicationStart {
    public static void main(String[] args) {
        SpringApplication.run(ApplicationStart.class);
    }
}

运行 main 方法

...
  .   ____          _            __ _ _
 /\\ / ___'_ __ _ _(_)_ __  __ _ \ \ \ \
( ( )\___ | '_ | '_| | '_ \/ _` | \ \ \ \
 \\/  ___)| |_)| | | | | || (_| |  ) ) ) )
  '  |____| .__|_| |_|_| |_\__, | / / / /
 =========|_|==============|___/=/_/_/_/
 :: Spring Boot ::        (v2.1.6.RELEASE)

2021-03-22 10:35:50.825  INFO 52572 --- [           main] c.x.springboot.demo.ApplicationStart     : Starting ApplicationStart on DESKTOP-N5K2GI1 with PID 52572 (F:\workSpaces\idea\xiaodu\spring-boot-all\com-xiaodu-springboot-demo-web\target\classes started by huayu in F:\workSpaces\idea\xiaodu\spring-boot-all)
2021-03-22 10:35:50.827  INFO 52572 --- [           main] c.x.springboot.demo.ApplicationStart     : No active profile set, falling back to default profiles: default
2021-03-22 10:35:51.973  INFO 52572 --- [           main] o.s.b.w.embedded.tomcat.TomcatWebServer  : Tomcat initialized with port(s): 8080 (http)
2021-03-22 10:35:51.991  INFO 52572 --- [           main] o.apache.catalina.core.StandardService   : Starting service [Tomcat]
2021-03-22 10:35:51.991  INFO 52572 --- [           main] org.apache.catalina.core.StandardEngine  : Starting Servlet engine: [Apache Tomcat/9.0.21]
2021-03-22 10:35:52.157  INFO 52572 --- [           main] o.a.c.c.C.[Tomcat].[localhost].[/]       : Initializing Spring embedded WebApplicationContext
2021-03-22 10:35:52.157  INFO 52572 --- [           main] o.s.web.context.ContextLoader            : Root WebApplicationContext: initialization completed in 1302 ms
2021-03-22 10:35:52.433  INFO 52572 --- [           main] o.s.s.concurrent.ThreadPoolTaskExecutor  : Initializing ExecutorService 'applicationTaskExecutor'
2021-03-22 10:35:52.572  INFO 52572 --- [           main] o.s.b.w.embedded.tomcat.TomcatWebServer  : Tomcat started on port(s): 8080 (http) with context path ''
2021-03-22 10:35:52.574  INFO 52572 --- [           main] c.x.springboot.demo.ApplicationStart     : Started ApplicationStart in 2.187 seconds (JVM running for 3.485)

启动成功,日志显示端口 8080

验证访问
在这里插入图片描述

配置文件

如上我们成功了启动了springboot 项目,现在我们使用配置文件, 配置端口

application.properties
resources 目录下创建application.properties 配置文件,并编辑
在这里插入图片描述
从新启动,访问,这时候端口发生了变化

使用ymal 文件

更多的时候我们使用yml 文件充当配置文件,层次结构更加明了
application.yml
server:
  port: 8171
spring:
  application:
    name: springboot-web-demo

编写controller

@RestController
@RequestMapping("/demo")
public class DemoController {

    @GetMapping("/hello")
    public String hello() {
        return "hello";
    }

}

注 意 创 建 类 要 在 启 动 类 的 包 路 径 下 \color{#FF0000}{注意创建类要在启动类的包路径下} 注意创建类要在启动类的包路径下

启动访问 hello
在这里插入图片描述

3. 打包
创建可执行jar

添加maven插件

 <build>
        <plugins>
            <plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
            </plugin>
        </plugins>
    </build>

运行maven命令 或者使用idea工具直接点击

mvn package -DskipTests
生成target下的jar

运行jar
java -jar com.xiaodu.springboot-demo-web-1.0-SNAPSHOT.jar

打包war,使用传统容器运行

-pom文件修改
修改packaging 为war,并排除掉嵌入的tomcat

 <packaging>war</packaging>
 ...
  <dependencies>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
            <exclusions>
                <!--排除掉嵌入的tomcat容器-->
                <exclusion>
                    <groupId>org.springframework.boot</groupId>
                    <artifactId>spring-boot-starter-tomcat</artifactId>
                </exclusion>
            </exclusions>
        </dependency>
        <!-- 添加tomcat容器,并设置scope provided-->
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-tomcat</artifactId>
            <scope>provided</scope>
        </dependency>
    </dependencies>

配置类

继承SpringbootServletInitializer, (没有特殊的配置也可以不重写configure方法)
@SpringBootApplication
public class ApplicationStart extends SpringBootServletInitializer {
    public static void main(String[] args) {
        SpringApplication.run(ApplicationStart.class, args);
    }

    @Override
    protected SpringApplicationBuilder configure(SpringApplicationBuilder builder) {
        return builder.sources(ApplicationStart.class);
    }
}

打包到tomcat运行

打包好的war,修改为demo.war,(自动生成的名字过长,tomcat默认path是项目名称),放到webapps目录下,然后去bin目录下startup.bat 点击启动, tomcat 默认端口8080,项目path为项目名称demo。
当然也可是在idea或者eclipse总配置server直接部署运行。

在这里插入图片描述

以上完成了打包运行。

如需切换容器,只需要修改依赖即可
例如:

切换嵌入式容器jetty
  <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
            <exclusions>
                <!--排除掉嵌入的tomcat容器-->
                <exclusion>
                    <groupId>org.springframework.boot</groupId>
                    <artifactId>spring-boot-starter-tomcat</artifactId>
                </exclusion>
            </exclusions>
  <!--添加 jetty-->
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-jetty</artifactId>
            <scope>compile</scope>
        </dependency>

下一节:Spring boot Banner和icon

1、OAuth 2.0 基础入门与环境搭建 本文介绍了OAuth 2.0的基础概念、核心组件及开发环境的搭建过程,涵盖JDK、Maven、MySQL、Redis等工具的配置,并通过Spring Boot快速构建Web应用。进一步演示了如何使用OAuth 2.0与Facebook、LinkedIn和Google等平台的API进行交互,实现用户授权与受保护资源的访问。文章还强调了在实际开发中需要注意的安全、权限、令牌管理和错误处理等问题,帮助开发者快速入门并安全地集成OAuth 2.0。 阅读详情

相关推荐

Spring Boot快速入门与实践案例分析

本文还有配套的精品资源,点击获取 简介:Spring Boot入门实例通过简化Spring应用的搭建和开发过程,帮助开发者快速掌握其核心特性。本实例详细介绍了Spring Boot的自动配置、内嵌式Web服务器、起步依赖、运行独立等关键特性,并通过项目结构、源码、测试应用等实际内容,指导用户理解如何进行配置、处理HTTP请求和数据库操作,为实际项目应用打下基础。 ...

weixin_36474966的博客 1162

SpringBoot快速创建web项目

关于SpringBoot Web项目的快速搭建 上一篇:SpringBoot入门

qq_51325652的博客 1795

整理的15个公开且可直接使用的电力视觉输电线路领域数据集

而巡检数据是目前来说影响我们做科研的最大阻碍,为此本内容主要总结了,现有的且公开免费的巡检数据集,供大家使用。STN PLAD数据集133个航拍图像,五个电力部件:电力塔及其塔的ID、绝缘子,防震锤,联板(yoke),图像的尺寸在5472×3648到5472×3078。IDID数据集:2000张图像,包含三个类别,正常绝缘子,破损绝缘子和闪络绝缘子三个类别,用于目标检测的实验。TTPLA数据集,用于实例分割,1100张尺寸为3840×2160,包含两个类别,电力杆塔和电力线。主要用于电力杆塔的目标检测。

weixin_42048361的博客 5007

SpringBootWeb入门

SpringBootWeb入门

weixin_62646853的博客 1794

【SimPy系列博客之官方example学习与解读】—— Example 1: Bank Renege

Hello,优快云的各位小伙伴们,拖更了几年后,又重新开始记录这段时间准备学习的东西啦!最近博主在学习 SimPy 的相关知识,发现国内关于 SimPy 的介绍还是相对较少,且缺乏系统性,因此博主打算用1~2周的时间,边学边记,打算从 SimPy 官方给出的几个例子出发分析 SimPy 的使用场景和用法,希望能和大家互勉!那废话不多说,我们直接开始吧!今天要学习的例程是 Bank Renege。

凝望,划过星空的博客 2007

运算放大器电路仿真实践:从零实现完整示例

通过一个完整的运算放大器电路仿真示例,深入掌握电路仿真的关键步骤与技巧,帮助电子爱好者和工程师快速上手实际项目设计。

weixin_34725745的博客 1317

快速入门:使用 Spring Boot 构建 Web 应用程序

Spring Boot 是一个流行的 Java Web 应用程序开发框架,它能够减少开发人员的工作量并加速应用程序的开发。本文将向您介绍如何开始使用 Spring Boot。

记录我的学习历程 1435

蛋白质组学进阶指南 | (八)差异蛋白筛选与功能解析实战

本文是蛋白质组学差异蛋白筛选与功能解析的实战指南。详细讲解了如何利用R语言的limma包进行差异表达分析,结合FDR校正和差异倍数设定筛选关键蛋白,并通过火山图可视化结果。进一步介绍了使用clusterProfiler进行GO与KEGG功能富集分析,以及利用STRING数据库和Cytoscape构建蛋白互作网络以识别枢纽分子,最终串联分析形成可验证的生物学假说。

weixin_29208077的博客 737

2024最新版本idea SpringBoot创建web项目(详细介绍如何搭建和配置spring boot web,以及写出一个简单的前后端交互界面)

新建项目 -> Spring Boot ->自定义写你的项目名称、项目位置等、语言java、类型选择maven,最后选择JDK版本,这里推荐17以上,对应Java也一样,最后选jar包 -> next首先选择springboot版本,我这里为3.3.5,接下来导入依赖,springboot功能强大, 能直接导入而不需要手敲,按图先导入这几种(可以直接搜索),下面为对这几种依赖的个人解释:接下来点击创建,等待idea构建完毕。

2201_75459501的博客 1万+

【重识云原生】第四章云网络4.7.5节vDPA方案——virtio的半硬件虚拟化实现

vDPA(vhost Data Path Acceleration)即是让virtio数据平面不需主机干预的解决方案。该框架由Redhat提出,实现了virtio数据平面的硬件卸载。控制平面仍然采用原来的控制平面协议,当控制信息被传递到硬件中,硬件完成数据平面的配置之后,数据通信过程由硬件设备(智能网卡)完成,虚拟机与网卡之间直通。中断信息也由网卡直接发送至虚拟机不需要主机的干预。......

junbaozi的专栏 2187

手把手教你学Simulink——基于Simulink的多用户MIMO系统仿真建模示例

多用户MIMO概述在多用户MIMO系统中,基站配备多个天线,可以同时与多个用户进行通信。利用空间复用技术,不同用户的信号被分配到不同的空间流上,从而实现频谱资源的高效利用。多用户MIMO的核心挑战包括信道估计、波束成形设计以及干扰管理。关键技术点波束成形:通过调整发射信号的相位和幅度,在特定方向上增强信号强度并减少干扰。信道估计:获取每个用户的信道状态信息(CSI),用于优化波束成形矩阵。调制与解调:选择合适的调制方式(如QPSK、16-QAM等)以适应不同用户的信道条件。干扰消除。

MHD0815的博客 268

【springboot基础】如何搭建一个web项目?

【springboot基础】如何搭建一个web项目?

tutu6663的博客 4332

PCIe Link Training 深度解析:从物理检测到高速数据传输

本文深入解析PCIe链路训练(Link Training)的技术细节,揭示了这一复杂协商过程的五个关键阶段:物理检测阶段通过电气特性识别设备连接;轮询阶段建立时钟和符号同步;配置阶段确定链路宽度并处理拓扑异常;恢复阶段完成速率切换和信号均衡;最终进入正常工作状态。文章特别强调了高速率下的均衡技术挑战,以及验证工程师需要关注的多个维度,包括状态机跳转、有序集内容、均衡算法和错误恢复能力。随着PCIe速率不断提升,理解这一底层机制对高速接口设计具有重要价值。

元直的博客 1655

【Spring Boot入门】保姆级教程,新手0基础也能快速搭建Web项目!

家人们谁懂啊😭!学完Spring+SpringMVC,配置文件一大堆、Maven依赖导到崩溃、还要手动配置Tomcat... 直到我遇见了!Spring Boot不是新框架,而是Spring的懒人开发神器!今天带大家从0到1入门Spring Boot,小白也能10分钟跑通Web项目!✅不是增强Spring功能✅是快速开发Spring应用的工具Spring Boot:简化Spring开发,零XML、内嵌Tomcat、自动管理依赖继承父工程 → 导starter → 写启动类。

smile_WangDuoduo的博客 297

从 VL02N 拣配到 ABAP 自动化,读懂 SD_DELIVERY_UPDATE_PICKING 的位置和风险

文章摘要:SAP SD模块中,SD_DELIVERY_UPDATE_PICKING函数模块用于处理出库交货单的拣配确认,更新交货项目的拣配数量。该函数适用于未启用WM/EWM的传统SD流程,能确保拣配状态与标准交货处理逻辑同步,比直接修改数据库更安全。但在S/4HANA Cloud等新环境中,应优先使用API_OUTBOUND_DELIVERY_SRV等公开发布接口。使用该函数时需注意参数完整性和按交货单整体处理的原则,避免逐项提交导致的数据不一致问题。(149字)

2007 年 ~ 2025 年,深耕 SAP 技术 18 年 243

大中型超市收银系统(可直接运行)

光步前台收银系统系统功能:商品销售、商品退货、挂单、收银员权限、会员销售、单品取消、整单取消、商品查询、脱机销售、脱机数据上传,基本资料下载,开钱箱、小票打印、收款结算,支持多币种付款方式(现金、储值卡、礼券、微信等),支持多种促销。运行环境:.net 4.0登陆信息用户名:1001 密码:123456内置商品信息,商品编码可输入00001000 - 00010000,测试效果相关功能键F5 结算 F9挂单 F11商品查询 F8退货 Insert单品取消 Del整单取消 F12开钱箱F2 会员 Ctrl+Z退出系统 Home 锁屏 相关源码待公开

Spring Boot 从入门到实战:体系化学习指南

本文系统介绍了SpringBoot开发的学习路径,从基础入门到实战应用。主要内容包括:1)项目搭建与环境配置;2)数据访问技术(MyBatis/JPA);3)Web开发(RESTful接口、Thymeleaf模板);4)进阶功能(Redis缓存、安全认证、RabbitMQ异步通信);5)实用工具(Swagger、Postman)和项目部署。通过个人博客项目实战,帮助开发者掌握SpringBoot核心技能,构建完整的开发能力体系。文章采用"基础→核心→进阶→实战"的递进结构,适合具备Jav

kk_m_kk的博客 900

IMSL CNL 7.0.0 (x86-64)Crack

IMSL CNL 7.0.0 (x86-64)Crack intel的算法库破解文件,这是C++版本的破解文件

SpringBoot Web 入门指南:从零搭建第一个SpringBoot程序

一个强大的、开源的 Java 应用程序开发框架和容器,提供一站式企业级应用开发解决方案。Spring官方网站核心思想控制反转 (IoC):将对象的创建和管理权交给容器依赖注入 (DI):容器自动注入对象所需的依赖主要优势松耦合设计:组件间依赖关系减弱,提高灵活性易于测试:依赖注入使单元测试更简单模块化结构:可按需选择使用不同功能模块特性定位基础框架,提供全面解决方案开发加速器,简化Spring使用配置方式需要大量显式配置约定大于配置,自动配置依赖管理手动管理依赖和版本Starter。

Sagittarius_A*的博客 1845

计算机控制技术及应用

《计算机控制技术及应用》通过总结作者的科研成果和吸收国内外的先进理论、方法和技术,以计算机控制系统的网络化、开放化、智能化和集成化发展趋势为主线索,主要介绍计算机控制系统的基本概念和计算机控制系统的典型形式,计算机控制系统的数学描述与基本分析方法,以及数字PID控制器、最少拍控制系统、达林算法、状态变量设计法等设计方法及其各种改进算法。重点突出计算机控制系统输入输出通道接口的设计方法和典型控制系统的设计案例与实现方法等。

复分析 阿尔福斯(Ahlfors) 第三版答案 英文

答案分为十章,有部分习题没有答案,全英文复分析阿尔福斯(Ahlfors) 第三版答案

JavaWeb 基础 - Spring Boot Web 入门

HTTP(HyperText Transfer Protocol)是超文本传输协议,用于客户端与服务器之间的通信。它是 Web 开发中最核心的协议之一。Spring Boot 是当前企业主流的 Java Web 框架;使用 Spring Initializr 快速搭建项目;编写简单的 RESTful API;理解 HTTP 协议的基本概念;将项目部署到阿里云服务器。

吾为热爱计科,致力于知识分享的践行者,此博客是我在这条道路上留下的足迹。 1015

Spring Boot

Spring Boot 是一个开源的 Java 框架,用于简化 Spring 应用程序的创建和开发过程。它旨在让开发者能够轻松地“起步”并运行 Spring 应用程序,而无需进行繁琐的配置。Springboot 有简化配置,独立运行,自动配置,监控和管理,跨平台,快速开发等优势(内存身份认证)、(JDBC 身份认证)等,我们要用的就是内存身份自证。

2301_80387142的博客 1402

如何在10分钟内搭建第一个Spring Boot应用?Spring Boot Learning Examples入门教程

Spring Boot Learning Examples是一个全面的Spring Boot工程实践项目,提供了丰富的学习案例和模块,帮助开发者快速上手Spring Boot开发。本文将带你在10分钟内完成第一个Spring Boot应用的搭建,让你轻松开启Spring Boot之旅。 ## 📋 准备工作 在开始搭建Spring Boot应用之前,确保你的开发环境中已经安装了以下工具: -

gitblog_01112的博客 1025

Spring Boot Web 应用开发实战指南

Spring Boot 是 Pivotal 团队在 Spring 框架的基础上研发的全新框架,它的设计目的是为了简化 Spring 应用的初始搭建以及开发过程。通过约定大于配置的理念,Spring Boot 提供了一系列的开箱即用的依赖模块,减少了大量的样板代码、配置文件以及手动依赖管理工作,让开发者能够更专注于业务逻辑的实现。

ing11230的博客 1380

第2章:Spring Boot 入门

本章将引导您进入Spring Boot的世界。我们将从一个简单的“Hello World”应用开始,逐步深入了解Spring Boot的启动原理、核心特性——自动配置,以及如何通过配置文件灵活地管理您的应用

766

#Spring boot 自我学习参考

1. Spring boot 概述与课程概要介绍 2. Spring4 快速入门 3. Spring4 扩展分析 4. Spring boot 快速入门 5. Spring boot 配置分析 6. Spring boot 自动配置 7. Spring boot @Enable* 注解的工作原理 8. Spring boot @EnableAutoConfiguration深入分析

DingSJ 的博客 351

go go go 出发咯 - go web开发入门系列(三) 项目基础框架搭建与解读

这篇博客介绍了如何从零搭建一个生产级的Go Web应用框架。文章首先回顾了前两期的Go Web开发入门内容,然后针对项目复杂度提升时面临的代码组织问题,提出了一套清晰的分层架构方案。 核心内容包括: 项目目录结构设计,包括cmd/server入口、configs配置、internal内部模块等 代码分层实现: main.go作为总装车间负责组装各组件 Repository层作为数据访问唯一入口 Service层处理核心业务逻辑 Handler层负责HTTP请求处理 展示了各层的典型代码实现.

Jerrylau213的博客 914

Spring从入门到精通

Spring诞生于2003年,是由Rod Johnson开发并开源的Java开发框架。其设计初衷是为了解决企业级应用开发中复杂的依赖管理和业务逻辑分离问题。它提供了全面的编程和配置模型,用于构建企业级应用程序。Spring的核心是控制反转(IOC)和面向切面编程(AOP),这两个特性帮助开发者解耦应用组件,提高代码的可维护性和可测试性。在早期的Java企业级开发中,开发者往往需要编写大量繁琐的样板代码来管理对象之间的依赖关系,并且横切关注点(如日志记录、事务管理)与业务逻辑紧密耦合,使得代码的维护

Java学习 1178

Spring Boot HelloWorld 入门项目

这是一个最简单的 Spring Boot 入门项目,展示了如何创建支持四种 HTTP 方法的 RESTful API。

2301_82323273的博客 307
上一篇: 自用- git命令
下一篇: Spring boot Banner和icon
xiaoduup
博客等级 码龄9年 23粉丝 83原创
评论 2
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值