Python工程师Java之路(t)SpringBoot部署步骤 java -jar

基于YOLOv8与SpringBoot的目标检测系统设计与实现 目标检测是计算机视觉领域的核心技术之一,通过深度学习模型在图像或视频中定位和识别特定对象。YOLOv8作为当前最先进的实时目标检测算法,采用无锚点设计和任务特定头结构,显著提升了检测精度和速度。结合SpringBoot和Vue的B/S架构,可以构建高性能的Web应用系统,实现模型服务的便捷访问和集中管理。这种技术组合特别适合智能监控、工业质检等需要实时分析的场景。本系统通过Flask封装YOLOv8模型服务,采用MVC分层架构实现前后端分离,支持图像/视频检测、实时流分析等多种功能模式,并整合了RBAC权限 阅读详情

步骤

1、开发环境

WIN10+IDEA2021+Maven3.6.3+JDK1.8

2、新建工程

选择Spring和Java版本

添加依赖

3、新建controller

package com.example.demo.controller;

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

@RestController
@RequestMapping("/war3")
public class HeroController {
    @RequestMapping("/heroes")
    public String getHeroes() {
        System.out.println("Jaina Proudmoore\nArthas Menethil");
        return "Jaina Proudmoore\nArthas Menethil";
    }
}
  • @RestController
    相当于 @Controller + @ResponseBody,可用来返回JSON数据
  • @RequestMapping
    可添加在 控制类 或 方法 上,用于建立 请求URL 和 请求方法 之间的对应关系
    value指定请求URL;method指定请求方式,默认GET
    @RequestMapping(value="/a",method=RequestMethod.GET)可简写为@RequestMapping("/a")
    上面代码 类和方法 叠加URL为/war3/heroes

4、开发环境试运行和测试

点击绿色三角进行测试

浏览器访问http://localhost:8080/war3/heroes

5、打包+运行命令

打包

在WIN10或CentOS7上的运行命令都如下

java -jar demo2-0.0.1-SNAPSHOT.jar

补充

新建工程后,pom.xml内容如下

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>
    <parent>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-parent</artifactId>
        <version>2.7.6</version>
        <relativePath/> <!-- lookup parent from repository -->
    </parent>
    <groupId>com.example</groupId>
    <artifactId>demo2</artifactId>
    <version>0.0.1-SNAPSHOT</version>
    <name>demo2</name>
    <description>Demo project for Spring Boot</description>
    <properties>
        <java.version>1.8</java.version>
    </properties>
    <dependencies>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
        </dependency>

        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-test</artifactId>
            <scope>test</scope>
        </dependency>
    </dependencies>

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

</project>
  • starter
    SpringBoot中常见项目名称,定义了当前项目使用的所有项目坐标,以达到减少依赖配置的目的
  • parent
    所有SpringBoot项目要继承的项目,定义了若干个坐标版本号(依赖管理,而非依赖),以达到减少依赖冲突的目的
英🔉中
starter/ˈstɑːrtər/n. adj. (机器或引擎的)启动装置;发车信号;起步时使用的
artifact/ˈɑːrtɪfækt/n. 历史文物;非自然存在物体;遗物

新建工程后,会自动创建@SpringBootApplication,可以启动SpringBoot程序

package com.example.demo;

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;

@SpringBootApplication
public class Demo2Application {
    public static void main(String[] args) {
        SpringApplication.run(Demo2Application.class, args);
    }
}
  • SpringBoot在创建项目时,采用jar的打包方式
  • SpringBoot的引导类是项目的入口,运行main方法就可以启动项目
  • 使用maven依赖管理变更起步依赖项
  • Jetty比Tomcat更轻量,可扩展性更强;
    谷歌应用引擎(GAE)已切换为Jetty
    修改依赖可切换为Jetty,如下
<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-web</artifactId>
    <!--web起步依赖环境中,排除Tomcat起步依赖-->
    <exclusions>
        <exclusion>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-tomcat</artifactId>
        </exclusion>
    </exclusions>
</dependency>
<!--添加Jetty起步依赖,版本由SpringBoot的starter控制-->
<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-jetty</artifactId>
</dependency>
SpringBoot+Vue+MySQL企业员工薪酬关系系统设计与实战部署 在企业数字化转型中,员工薪酬管理是每家企业都离不开的核心业务场景,而Java前后端分离架构正是中小型公司最主流的技术实践。本文从通用技术概念切入:SpringBoot作为后端框架,通过约定大于配置与自动装配大幅降低整合成本;Vue凭借响应式数据绑定与组件化开发提升前端开发效率;MySQL以InnoDB事务保障薪酬数据的强一致性。在此基础上,引入RBAC权限模型管理三类角色的菜单与按钮权限,利用索引设计优化月度薪资查询性能,并结合EasyExcel实现报表导出。系统覆盖员工档案、部门管理、薪资核算、审批流转等 阅读详情

相关推荐

Web应用部署实战:从传统部署到Docker容器化全流程详解

项目部署是将本地开发环境中的应用迁移至服务器,使其能够对外提供稳定服务的关键环节。其核心原理在于实现环境的一致性、服务的可靠性与访问的可用性。从技术价值看,自动化、标准化的部署流程是提升开发运维效率、保障线上服务稳定性的基石。在应用场景上,无论是单体应用、前后端分离项目,还是微服务架构,都需要根据项目特点选择合适的部署策略。本文聚焦于两种主流部署路径:传统手动部署与基于Docker的容器化部署。传统部署通过SSH、SCP等工具,在服务器上直接配置运行环境、安装依赖并配置Web服务器(如Nginx)与进程管理

culuo8053的博客 483

springboot python整合_Spring Boot 整合 Redis

简介Redis 是目前使用十分广泛的内存数据库。Redis 比 Memcached 支持更丰富的数据类型,如 Lists, Hashes, Sets 及 Ordered Sets 等,支持数据持久化、备份;除此之外,Redis 还支持事务,HA,主从库,同时兼具了非关系型数据库与关系型数据的特性,有着丰富的应用场景。使用1、引入依赖org.springframework.bootspring-bo...

weixin_39926613的博客 215

SpringBoot+Vue3整合AI模型:构建智能旅游推荐系统全栈实战

在当今的软件开发领域,AI能力集成已成为提升应用智能化的关键技术路径。其核心原理在于通过API调用或模型部署,将机器学习算法与传统业务逻辑相结合。这种技术融合的价值在于,能够将数据驱动的智能决策无缝嵌入到Web应用中,从而显著提升用户体验和系统价值。在工程实践中,开发者常面临如何将AI模块与现有技术栈高效整合的挑战,尤其是在前后端分离架构下。典型的应用场景包括个性化推荐、智能客服和内容分析等。本文聚焦于一个具体案例:基于SpringBoot和Vue3的智能旅游推荐助手。该项目通过引入NLP处理和推荐算法,演

weixin_33937778的博客 538

SpringBoot应用:调用Python脚本,并传递数据库信息

创建一个SpringBoot项目 pom.xml : <?xml version="1.0" encoding="UTF-8"?> <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.ap

Carlos的博客 4661

Java+YOLO工业缺陷检测实战:从模型训练到产线部署

目标检测技术作为计算机视觉的核心任务,通过深度学习模型实现物体定位与分类。YOLO系列算法因其实时性优势,在工业质检场景展现巨大潜力。结合Java生态的工程化能力,可构建高稳定性的生产级系统。本文基于真实工业案例,详解YOLOv5模型训练技巧、Java JNI接口设计、TensorRT加速等关键技术,分享在汽车零部件缺陷检测中实现99.2%准确率的实战经验,涵盖数据采集规范、多线程优化、Docker部署等工程细节,为制造业智能化转型提供可靠技术方案。

weixin_34166472的博客 581

SpringBoot+Vue智慧停车场系统:从零部署到核心模块解析

在Java Web开发领域,SpringBoot以其简化配置、快速构建RESTful API的特性,成为后端开发的主流框架。其核心原理在于通过自动配置和约定大于配置的理念,极大提升了开发效率。Vue.js作为渐进式前端框架,凭借其响应式数据绑定和组件化开发,能够高效构建复杂的单页面应用。两者结合构成的前后端分离架构,在提升开发体验与维护性的同时,也带来了环境配置、依赖管理与**前后端联调**的挑战。这种架构模式广泛应用于需要快速迭代、清晰职责分离的管理系统开发中。本文将以一个融合了车辆进出管理、收费计算等典

congjukun0600的博客 296

springboot python整合_Shiro用starter方式优雅整合到SpringBoot中

Shiro用starter方式优雅整合到SpringBoot中网上找到大部分文章都是以前SpringMVC下的整合方式,很多人都不知道shiro提供了官方的starter可以方便地跟SpringBoot整合。本文介绍我的3种整合思路:1.完全使用注解;2.完全使用url配置;3.url配置和注解混用,url配置负责鉴权控制,注解负责权限控制。三种方式各有优劣,需考虑实际应用场景使用。代码Talk ...

weixin_39573981的博客 398

Vue+SpringBoot个人博客项目实战:从零搭建到部署全流程

前后端分离架构是现代Web应用开发的主流模式,它将前端交互与后端服务解耦,通过RESTful API通信,既提升了开发效率,也便于独立部署和扩展。在个人博客这类业务场景中,实现这一架构需要掌握Vue Router路由控制、Pinia状态管理、axios请求封装,以及SpringBoot接口设计、JWT鉴权和MyBatis-Plus持久化等关键技术。同时,生产环境还要面对XSS攻击防护、m3u8视频播放等实际问题,这些都是工程实践中的高频需求。本文以个人博客项目为载体,完整梳理从技术选型、数据库建模、前后端联

weixin_33804582的博客 442

springboot python整合_SpringCloud 整合 Python - Flask

前言该篇文章分享如何将Python Web服务融入到Spring Cloud微服务体系中,并调用其服务,Python Web框架用的是Flask方案Sidecar+ Flask,在这里,我们会使用Sidecar将Python接口注册到SpringCloud中,将Python接口当作Java接口进行调用(通过SpringCloud去调用Sidecar,然后通过Sidecar去转发我们的程序请求)Si...

weixin_39645343的博客 1175

SpringBoot集成FFmpeg:Java视频处理服务实战与踩坑记录

视频处理能力正成为许多业务系统的基础需求,但如何在Java后端工程中高效集成始终是难点。FFmpeg作为业界标准的音视频处理工具,通过命令行调用与Java调度层结合,能够实现稳定、可控的视频剪辑、拼接、音频混音与字幕烧录。SpringBoot提供了完善的异步任务管理与状态机设计,配合Redis进度缓存,可构建高可用的视频处理服务。本文从FFmpeg核心命令避坑、JavaCV等方案对比,到任务队列与并发压测实践,完整记录了一套基于SpringBoot的视频处理服务落地过程,为需要嵌入视频处理能力的Java工程

weixin_33797791的博客 431

SpringBoot+MyBatis+Vue医院急诊系统:从环境搭建到部署避坑全解析

在JavaWeb全栈项目开发中,SpringBoot、MyBatis、MySQL与Vue的组合已成为高校课设和初级工程师接单的经典选型。SpringBoot通过自动配置简化了Spring应用搭建,MyBatis以半自动化SQL控制让多条件动态查询更加灵活,MySQL负责数据持久化,Maven则贯穿依赖管理与构建打包。理解这套技术栈的分工协作,是快速上手全栈工程的关键。在实际落地时,数据库编码与连接参数、前端代理与路由模式、后端事务与并发控制往往决定项目能否稳定运行。以医院急诊系统为例,其分诊排序、挂号并发、

weixin_33861800的博客 413

Python工程师Java之路(t)使用Shell脚本部署SpringBoot

maven Git仓库 服务器 进程 编译、打包、重启

ArYe 2066

spring-boot-python-demo

spring-boot-python-demo

SpringBoot项目读取外置配置文件步骤:_springboot jar包获取外置配置文件(1)

当在prod环境下打jar时,Profiles选择prod,这样不会带上配置文件,本地不能运行和且不会读取配置文件,一般选择prod时都是部署到服务器使用。当在local环境下打jar时,Profiles选择local,这样就会带上配置文件,并且本地可以正常运行和读取配置文件。将部分目录大纲截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且后续会持续更新**当使用生产环境配置文件时,springboot项目打jar时不带上配置文件。

2401_84010884的博客 598

Zotero PDF Translate插件实战:DeepL API免费申请与高效翻译配置指南

本文提供Zotero PDF Translate插件配置DeepL API的完整实战指南。详细介绍了如何免费申请DeepL API密钥,解决国内访问问题,并在插件中完成精细配置,实现文献阅读时的无缝划词翻译,大幅提升科研人员和学生的英文文献阅读效率。

rum55的博客 464

STM32与SD卡SPI接口硬件设计:从原理图到调试的完整指南

SPI(串行外设接口)作为一种广泛应用的同步串行通信协议,以其接线简单、驱动成熟的特点,成为连接微控制器与各类外设的经典方案。其工作原理基于主从架构,通过时钟、数据线和片选信号实现全双工通信,在嵌入式系统中具有极高的技术价值,常用于连接传感器、存储设备和显示模块等。在数据存储场景中,SD卡凭借其大容量和便携性成为首选,而通过SPI模式驱动SD卡,则平衡了性能与设计复杂度。本文聚焦于使用Altium Designer进行硬件设计的工程实践,详细解析了STM32微控制器与SD卡通过SPI通信时,电源管理、上拉电

weixin_34101784的博客 555

SpringBoot社区医疗预约挂号平台:从环境部署到核心业务实战

在Java后端开发中,SpringBoot已成为构建企业级Web应用的主流框架,其自动配置、起步依赖和快速启动特性,让开发者能够更专注于业务逻辑实现。而医疗预约挂号系统作为典型的业务管理场景,涵盖了用户认证、医生排班、号源管理、预约事务处理等核心环节,非常适合用来串联SpringBoot、MyBatis、MySQL等关键技术与工程实践。理解REST接口设计、数据库表关系、事务与并发控制原理,不仅有助于完成毕业设计或课程设计,也能提升实际项目开发中排查问题和优化性能的能力。从本地环境准备、数据库初始化到项目启

weixin_30879833的博客 352

MCU工程迁移实战:从STM32到MSPM0L1306的完整指南

在嵌入式系统开发中,MCU工程迁移是开发者常面临的核心挑战,涉及从旧平台向新芯片的完整适配。其原理在于不同MCU在硬件架构、外设寄存器映射、时钟树及开发工具链上存在差异,迁移的本质是将应用逻辑与底层硬件实现解耦。这一过程的技术价值在于提升代码复用性、降低硬件切换成本,并确保产品能快速响应供应链或技术栈变化。典型应用场景包括产品升级换代、芯片缺货替代以及技术生态统一。本文以TI MSPM0L1306为例,详解如何通过对比清单分析、DriverLib API替换及分步调试,高效完成从STM32等平台到Arm C

weixin_27625589的博客 330

整合Java、Python、SpringBoot,Django等框架实现安卓WEB应用系统,实现本地环境搭建及演示

MyBatis是一个优秀的持久层框架,它解决了传统JDBC编程中的大量冗余代码和数据库记录与Java对象(POJO)映射的繁琐问题。Java作为一种面向对象、跨平台的高级编程语言,以其“一次编写,到处运行”的特性、强大的性能、卓越的稳定性和丰富的生态系统,长期占据着企业级开发的核心地位。Java、Python、C#、Nodejs、PHP、GO、Rust等 SpringBoot、springmvc、Django、Flask、MySQL、Redis、Mongodb、Hadoop、Spark、HDFS等。

qq_2934918046的博客 517

如何通过 GitHub Actions 使用 SSH 自动化部署到阿里云 ECS 实例

通过 GitHub Actions 和 SSH 自动化部署,可以显著提高你的开发效率和部署的可靠性。本文介绍了如何生成 SSH 密钥、将公钥添加到阿里云 ECS 实例、将私钥添加到 GitHub Secrets,以及编写 GitHub Actions 工作流来实现自动化部署。希望这篇文章对你有所帮助!

吃面不喝汤的博客 1512

使用 ABAP Development Tool 登录 SAP BTP ABAP 环境时,遇到弹出框应该怎么办?

但在实际环境里,隐私模式、第三方 Cookie 禁止、跨站追踪限制、缓存代理误命中、混合内容拦截等因素,都可能让这条跳转链路被打断。等),浏览器会弹出系统原生登录框,请求用户输入账号和口令或做集成认证。只要它们在响应头里出现,浏览器就会理直气壮地弹框,这是协议层的强约定。,最终弹出原生登录框。前端与网关领域有个通用的经验规则:如果你看到了原生登录框,而期望的是带样式的。环境里的登录方式表述为基于浏览器的前端认证,也就是这类重定向式的交互。环境的具体落地,拆出几类常见诱因与排障路径,并穿插真实世界的案例。

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

OpenCV安装全攻略:从Python快速部署到C++源码编译避坑指南

计算机视觉作为人工智能的核心领域之一,其开发通常依赖于成熟的开源库。OpenCV作为最广泛使用的计算机视觉库,提供了丰富的图像处理、视频分析和机器学习算法。其模块化架构允许开发者根据需求选择核心功能或扩展模块,但这也带来了环境配置的复杂性。在工程实践中,OpenCV的安装方式直接影响开发效率和项目部署,特别是在处理视频编解码、GPU加速等高级功能时。对于Python开发者,通过pip安装预编译包是最快捷的入门方式;而对于追求性能优化或需要特定功能(如CUDA支持、专利算法)的C++项目,源码编译成为必要选择

weixin_34161029的博客 478

Unity内存优化:从崩溃到流畅的终极指南

Emscripten 为 WebAssembly 设定的内存布局(Static、Stack 和 Heap)为开发者提供了一个清晰的内存管理框架。理解这些内存区域的特性和用途,有助于开发者在 WebGL 项目中更有效地管理内存,优化性能,减少内存使用峰值。在 Unity WebGL 中,Dynamic Memory 是 UnityHeap 的主要组成部分,负责存储游戏运行时所需的各种数据。Dynamic Memory 主要分为两类:Managed Memory 和 Native Memory。

本博客聚焦游戏开发技巧、创业实战心得及大学热门课程干货。这里既有技术深度,也有思维广度,无论你是开发者、创业者还是高校学子,都能在这里找到适合自己的成长之路! 358
上一篇: 记一些女装数据分析
下一篇: Python工程师Java之路(t)SpringBoot配置文件
小基基o_O
博客等级 码龄9年 4414粉丝 467原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

小基基o_O

您的鼓励是我创作的巨大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值