【Java】基于SpringBoot创建Web页面并热更新

news2025/1/9 3:53:11

😏★,°:.☆( ̄▽ ̄)/$:.°★ 😏
这篇文章主要介绍基于SpringBoot创建Web页面并热更新。
学其所用,用其所学。——梁启超
欢迎来到我的博客,一起学习,共同进步。
喜欢的朋友可以关注一下,下次更新不迷路🥞

文章目录

    • :smirk:1. SpringBoot介绍
    • :blush:2. 环境安装与配置
    • :satisfied:3. 应用示例
    • :satisfied:4. 开发环境热更新

😏1. SpringBoot介绍

官网:https://spring.io/

Spring Boot 是一个用于快速开发单个微服务的框架,它基于 Spring 框架,简化了 Spring 应用的初始化过程和开发流程。Spring Boot 提供了一套默认的配置,使得开发人员可以快速搭建和运行基于 Spring 的应用程序。

Spring Boot 的特点包括:

1.简化配置:Spring Boot 提供了约定优于配置的理念,大部分的应用都可以使用默认的配置,减少了开发人员对配置文件进行繁琐设置的需求。

2.内嵌容器:Spring Boot 支持内嵌 Tomcat、Jetty、Undertow 等 Servlet 容器,可直接通过 main 方法启动应用,无需额外部署。

3.自动化配置:Spring Boot 可以根据项目的依赖和环境自动配置 Spring 应用程序,大大减少了开发人员的工作量。

4.独立运行:Spring Boot 应用程序可以作为独立的 Java 程序运行,不需要外部部署容器。

5.集成测试:Spring Boot 内建了对单元测试和集成测试的支持,提供了方便的测试工具。

😊2. 环境安装与配置

在IDEA社区版中创建SpringBoot项目,可以安装Spring Boot Helper插件,code可以用:

I1VGAYWU90-eyJsaWNlbnNlSWQiOiJJMVZHQVlXVTkwIiwibGljZW5zZWVOYW1lIjoic2lnbnVwIHNjb290ZXIiLCJhc3NpZ25lZU5hbWUiOiIiLCJhc3NpZ25lZUVtYWlsIjoiIiwibGljZW5zZVJlc3RyaWN0aW9uIjoiIiwiY2hlY2tDb25jdXJyZW50VXNlIjpmYWxzZSwicHJvZHVjdHMiOlt7ImNvZGUiOiJQU1BSSU5HQk9PVElERUEiLCJmYWxsYmFja0RhdGUiOiIyMDI1LTA4LTAxIiwicGFpZFVwVG8iOiIyMDI1LTA4LTAxIiwiZXh0ZW5kZWQiOmZhbHNlfV0sIm1ldGFkYXRhIjoiMDEyMDIyMDkwMlBTQU4wMDAwMDUiLCJoYXNoIjoiVFJJQUw6LTkyNjI5NTY5MiIsImdyYWNlUGVyaW9kRGF5cyI6NywiYXV0b1Byb2xvbmdhdGVkIjpmYWxzZSwiaXNBdXRvUHJvbG9uZ2F0ZWQiOmZhbHNlfQ==-dXDw3NXs9u2WveCuTUBmSo6rW6aL6x4BAubU3MvgG1ZxywEH+CMrfRjkHsCqobws/zuaegUkJ9anYcZ3Udkm3xVDDKkb0Vy7xevzhhajbFPH41JRNiySLGcVkjVfUjFigoY1ZBrpvsJ421nfKhsr8Wj1mCYh5O9JTjKRoOB0+s1Yd72ETgvl9YTt3/maE9sRONPW2/3aN0gjtwfPdfTnWk+Cn2+JAsmtlloPD2kwUNjD0ddWpfdFnNvvOP4OhDdNE9tlNmcWOjQs5YRVjwl4UNQiv6szb4j89Mkb8puQ0G3wkhmaMypnUIEEBUBly4FVngj3KHoZnyed0U7j1JWemQ==-MIIETDCCAjSgAwIBAgIBDTANBgkqhkiG9w0BAQsFADAYMRYwFAYDVQQDDA1KZXRQcm9maWxlIENBMB4XDTIwMTAxOTA5MDU1M1oXDTIyMTAyMTA5MDU1M1owHzEdMBsGA1UEAwwUcHJvZDJ5LWZyb20tMjAyMDEwMTkwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQCUlaUFc1wf+CfY9wzFWEL2euKQ5nswqb57V8QZG7d7RoR6rwYUIXseTOAFq210oMEe++LCjzKDuqwDfsyhgDNTgZBPAaC4vUU2oy+XR+Fq8nBixWIsH668HeOnRK6RRhsr0rJzRB95aZ3EAPzBuQ2qPaNGm17pAX0Rd6MPRgjp75IWwI9eA6aMEdPQEVN7uyOtM5zSsjoj79Lbu1fjShOnQZuJcsV8tqnayeFkNzv2LTOlofU/Tbx502Ro073gGjoeRzNvrynAP03pL486P3KCAyiNPhDs2z8/COMrxRlZW5mfzo0xsK0dQGNH3UoG/9RVwHG4eS8LFpMTR9oetHZBAgMBAAGjgZkwgZYwCQYDVR0TBAIwADAdBgNVHQ4EFgQUJNoRIpb1hUHAk0foMSNM9MCEAv8wSAYDVR0jBEEwP4AUo562SGdCEjZBvW3gubSgUouX8bOhHKQaMBgxFjAUBgNVBAMMDUpldFByb2ZpbGUgQ0GCCQDSbLGDsoN54TATBgNVHSUEDDAKBggrBgEFBQcDATALBgNVHQ8EBAMCBaAwDQYJKoZIhvcNAQELBQADggIBABqRoNGxAQct9dQUFK8xqhiZaYPd30TlmCmSAaGJ0eBpvkVeqA2jGYhAQRqFiAlFC63JKvWvRZO1iRuWCEfUMkdqQ9VQPXziE/BlsOIgrL6RlJfuFcEZ8TK3syIfIGQZNCxYhLLUuet2HE6LJYPQ5c0jH4kDooRpcVZ4rBxNwddpctUO2te9UU5/FjhioZQsPvd92qOTsV+8Cyl2fvNhNKD1Uu9ff5AkVIQn4JU23ozdB/R5oUlebwaTE6WZNBs+TA/qPj+5/we9NH71WRB0hqUoLI2AKKyiPw++FtN4Su1vsdDlrAzDj9ILjpjJKA1ImuVcG329/WTYIKysZ1CWK3zATg9BeCUPAV1pQy8ToXOq+RSYen6winZ2OO93eyHv2Iw

在这里插入图片描述

然后新建项目就有Spring Initializr,界面如下:

在这里插入图片描述

选择Spring Web依赖:

在这里插入图片描述

然后Maven就会自动安装SpringBoot的依赖。

😆3. 应用示例

下面就开始创建一个简单的Web页面:

新建一个controller包和类:

在这里插入图片描述

DemoController.java

package com.example.java_springboot.controller;

import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RestController;

@RestController
public class DemoController {

//    http://localhost:8080/hello 协议+地址+请求页面
    @GetMapping("/hello")
    public String hello() {
        return "你好,世界";
    }
}

然后运行项目,就可以打开地址http://localhost:8080/hello显示了。

在这里插入图片描述

😆4. 开发环境热更新

热更新之后,每次改了web的页面,就不用重启项目,IDEA将自动重启刷新。

要实现热更新,首先在pom.xml增加依赖:

<dependency>
	<groupId>org.springframework.boot</groupId>
	<artifactId>spring-boot-devtools</artifactId>
	<optional>true</optional>
</dependency>

在配置application.properties里新增,设置好监视的目录:

spring.devtools.restart.enabled=true
spring.devtools.restart.additional-paths=src/main/java

然后在设置-编译器中,勾选“自动构建项目”

在这里插入图片描述

设置-高级设置中,勾选编译器的“允许自动make启动”

在这里插入图片描述

这样设置好之后,就可以更改代码并随时刷新Web页面了。

请添加图片描述

以上。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1186450.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

在微信小程序中怎么实现报名功能

在当今数字化时代&#xff0c;微信小程序已经成为各行各业进行营销和客户管理的必备工具。其中&#xff0c;报名功能作为微信小程序的一个重要应用场景&#xff0c;为企业或组织提供了方便、高效、实时的数据收集与管理方式。本文将为你详细介绍如何在微信小程序中实现报名功能…

shm4mn.dll没有被指定

每次打开excel&#xff0c;都会弹出提示“shm4mn.dll没有被指定” 网上各种方法都试了一次&#xff0c;没效果 解决方案&#xff1a; 直接在设置中删除所有添加的打印机

基于斑马算法的无人机航迹规划-附代码

基于斑马算法的无人机航迹规划 文章目录 基于斑马算法的无人机航迹规划1.斑马搜索算法2.无人机飞行环境建模3.无人机航迹规划建模4.实验结果4.1地图创建4.2 航迹规划 5.参考文献6.Matlab代码 摘要&#xff1a;本文主要介绍利用斑马算法来优化无人机航迹规划。 1.斑马搜索算法 …

查看apk签名

cmd 命令&#xff1a; keytool -v -list -keystore "E:\xxx\release.jks"

01MyBatisPlus入门案例,常见注解,常用配置

一、入门案例 需求&#xff1a;基于课前资料提供的项目&#xff0c;实现下列功能&#xff1a; 新增用户功能根据id查询用户根据id批量查询用户根据id更新用户根据id删除用户 1.引入MybatisPlus的起步依赖 MybatisPlus官方提供的starter&#xff0c;其中集成了Mybatis和Myba…

Navicat16连接不上mysql

博主是因为服务里MySQL没启动&#xff0c; 如果确定自己的数据库正确无误的朋友就可以退出寻找其它解决办法了。 如图&#xff0c;一打开navicat就初始化&#xff0c;啥都没有&#xff0c;也连接不上 1&#xff0c;搜索里搜【服务】找到MySQL&#xff0c; 发现MySQL未启动。点击…

Map(关联数组)和Set(集合)

目录 Map和Set是用来专门查找的数据结构,查找效率非常高 Map是key-value模型(对应了两个东西) Set是纯key模型(只对应i一个东西) Map的使用 Map的方法 Map的put()方法 Map的get()方法 Map的getOrdefault()方法 Map的keySet()方法 Map的entrySet()方法 Entry是Map的内部接口类​…

OpenAI开发者大会掀起风暴:GPT模型价格狂降50%,应用商店即将亮相,AI技术将引爆全球!

OpenAI首届开发者大会召开了&#xff01; 关键信息&#xff1a; GPT-4升级版GPT-4 Turbo来了&#xff0c;上下文窗口达到128k&#xff0c;为GPT-4的4倍&#xff1b;OpenAI还降低了几乎所有模型的API使用价格&#xff0c;整体便宜了一半多&#xff1b;GPT-4系列的多模态能力向B…

OAuth2.0双令牌

OAuth 2.0是一种基于令牌的身份验证和授权协议&#xff0c;它允许用户授权第三方应用程序访问他们的资源&#xff0c;而不必共享他们的凭据。 在OAuth 2.0中&#xff0c;通常会使用两种类型的令牌&#xff1a;访问令牌和刷新令牌。访问令牌是用于访问资源的令牌&#xff0c;可…

关于Python hydra库(OmegaConf)(yaml)

这为博友介绍的很清晰&#xff0c;就给大家引荐一下&#xff1a; Python hydra库(OmegaConf)(yaml)_hxxjxw的博客-CSDN博客 安装Python hydra-core我遇到的问题&#xff1a; which pip 确实是虚拟环境&#xff08;pytorch_gpu&#xff09; 依然报错 &#xff1a;ModuleNotF…

字节8年经验之谈 —— 如何从0开始做自动化测试?

自动化测试是使用软件工具在应用程序上自动运行测试的过程&#xff0c;无需任何人为干预。这可以通过减少手动测试的需要来保存时间并提高软件开发过程的效率。由于人为错误或不一致性&#xff0c;手动测试可能容易出错&#xff0c;这可能导致错误未被检测到。自动化测试通过提…

Jenkins 部署.net core 项目 - NU1301错误

/root/.jenkins/workspace/householdess/services/host/fdbatt.monitor.HttpApi.Host/fdbatt.monitor.HttpApi.Host.csproj : error NU1301: 本地源“/root/.jenkins/workspace/householdess/​http:/x.x.x.x:9081/repository/nuget.org-proxy/index.json”不存在。 [/root/.je…

uni-app多端开发

uni-app 多端开发 一、命令创建uni-app 项目二、在微信小程序后台找到 appId 填写 appId三、运行项目四、使用 uni-ui4-1、下载4-2、自动导入4-3、ts项目下载类型校验 &#xff08;uni-ui 组件库&#xff09;4-3-1、下载4-3-2、配置 五、持久化 pinia六、数据请求封装七、获取组…

【FastCAE源码阅读6】C++与Python的集成,实现相互调用

分析FastCAE代码之前先看看C与Python如何相互调用的。 一、C调用Python 先写个C调用Python的例子&#xff0c;然后再来看FastCAE集成Python就比较简单了。直接上代码&#xff1a; #include <iostream> #include "python.h"int main() {Py_Initialize();PyRu…

Android开发自定义实现炫酷的进度条

本篇文章主要记录自定义View实现的水平进度条&#xff0c;包含的主要内容:水平进度条可设置渐变的颜色、在水平进度条上添加开始好结束的图片以及动态添加进度条下面的进度文字说明。下面是效果图展示&#xff1a; 实现的以上效果的主要代码分析说明&#xff1a; 第一步&#…

【开源】基于Vue和SpringBoot的电子元器件管理系统

项目编号&#xff1a; S 002 &#xff0c;文末获取源码。 \color{red}{项目编号&#xff1a;S002&#xff0c;文末获取源码。} 项目编号&#xff1a;S002&#xff0c;文末获取源码。 目录 一、摘要1.1 项目简介1.2 项目录屏 二、研究内容三、界面展示3.1 登录&注册&主页…

一个基于百度飞桨封装的.NET版本OCR工具类库 - PaddleOCRSharp

前言 大家有使用过.NET开发过OCR工具吗&#xff1f;今天给大家推荐一个基于百度飞桨封装的.NET版本OCR工具类库&#xff1a;PaddleOCRSharp。 OCR工具有什么用&#xff1f; OCR&#xff08;Optical Character Recognition&#xff09;工具可以将图像或扫描文件中的文本内容转…

“找不到emp.dll,无法继续执行代码”的问题要如何修复

今天我想和大家分享的是关于emp.dll缺失的4种解决方法。首先&#xff0c;让我们来了解一下emp.dll缺失的原因以及它是什么文件。 emp.dll是一个动态链接库文件&#xff0c;它位于系统的安装目录下。它是Windows操作系统的一部分&#xff0c;用于支持某些应用程序的正常运行。当…

Python批量导入及导出项目中所安装的类库包到.txt文件(补充)

Python批量导入及导出项目中所安装的类库包到.txt文件 生成requirements文件 建议使用&#xff0c;该方式形成文档最简洁&#xff1a; pip list --formatfreeze > requirements.txt

js树形数组遍历练习,扁平化、格式化、获取节点父级

1.树形数组扁平化 数组扁平化的方式很多&#xff0c;这里主要是用递归处理&#xff0c;除此之外还有正则、扩展运算符等等 const list [{name:1,id:1,children:[{name:11,id:11,children:[{name:111,id:111}]},{name:12},]},{name:2,id:2,children:[{name:21,id:21,children:…