当前位置: 首页 > news >正文

springboot项目怎么样排除自带tomcat容器使用宝蓝德bes web中间件?

  前言:

        由于Spring Boot 1.x和2.x不兼容,BES提供了对应的Spring Boot Starter版本。                    bes‑lite‑spring‑boot‑1.x‑starter.jar,适用于Spring Boot 1.x的版本。                  bes‑lite‑spring‑boot‑2.x‑starter.jar,适用于Spring Boot 2.x的版本。 以下文档无特殊说明,涉及bes‑lite‑spring‑boot‑2.x‑starter.jar的操作同样适用于bes‑ lite‑spring‑boot‑1.x‑starter.jar。

一、在pom.xml中排除springboot项目中Tomcat依赖:

        使用exclusion标签排除依赖,如下

<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>
</dependencies>

  二、 下载宝蓝德依赖jar,并导入本地maven。

  三、 安装核心依赖包到本地Maven仓库

        1. bes‑lite‑spring‑boot‑2.x‑starter.jar是提供给Spring Boot应用的核心依赖Jar包,可约定坐标为:

<dependency>
<groupId>com.bes.appserver</groupId>
<artifactId>bes-lite-spring-boot-2.x-starter</artifactId>
<version>9.5.5</version>
</dependency>

        2.使用mvn install将其安装到Maven本地仓库或者使用mvn deploy命令将其发布到Maven 远程仓库,例如:

mvn install:install-file –Dfile=bes-lite-spring-boot-2.x-starter.jar –DgroupId=com.bes.appserver –DartifactId= bes-lite-spring-boot-2.x-starter –Dversion=9.5.5 –Dpackaging=jar 

        3. 安装可选功能包到本地Maven仓库(可选):

除核心依赖之外,对于JSP功能,Websocket功能,国密支持等可选功能,提供了独立的功 能依赖包,相关jar说明和可约定坐标如下: JSP功能支持的依赖包可约定坐标:

<dependency>
<groupId>com.bes.appserv.packages</groupId>
<artifactId>bes-jasper</artifactId>
<version>9.5.5</version>
</dependency>

        4. WebSocket功能支持依赖包可约定坐标:

<dependency>
<groupId>com.bes.appserv.packages</groupId>
<artifactId>bes-websocket</artifactId>
<version>9.5.5</version>
</dependency>

        5. 国密通信功能依赖包可约定坐标:

<dependency>
<groupId>com.bes.appserv.packages</groupId>
<artifactId>bes-gmssl</artifactId>
<version>9.5.5</version>
</dependency>

        6.Spring Boot 2.x业务应用的pom.xml文件示例如下:

<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 http://maven.apache.org/xsd/maven-4.0.0.xsd"><modelVersion>4.0.0</modelVersion><groupId>com.bes.test</groupId><artifactId>springboot-demo</artifactId><version>2.0.0</version><dependencyManagement><dependencies><!--Spring Boot的基本依赖--><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-dependencies</artifactId><version>2.0.0.RELEASE</version><type>pom</type><scope>import</scope></dependency></dependencies></dependencyManagement><dependencies><!--bes-lite-spring-boot-2.x-starter的依赖--><dependency><groupId>com.bes.appserver</groupId><artifactId>bes-lite-spring-boot-2.x-starter</artifactId><version>9.5.5</version></dependency><dependency><groupId>org.springframework</groupId><artifactId>spring-webmvc</artifactId></dependency></dependencies><build><plugins><plugin><groupId>org.springframework.boot</groupId><artifactId>spring-boot-maven-plugin</artifactId><version>2.0.0.RELEASE</version><configuration><mainClass>com.bes.boot.sample.DemoApplication</mainClass></configuration><executions><execution><goals><goal>repackage</goal></goals></execution></executions></plugin></plugins></build>
</project>

四、基本配置:

 Spring Boot Starter的相关配置,开发过程中默认在application.properties或者applica‑ tion.yaml文件中,打包好之后,相关的配置位于BOOT‑INF/classes/application.properties 中。

#指定server访问的端口,默认值:8080。
server.port=8087
#指定server绑定的地址,默认值:0.0.0.0。
server.address=
#指定X‑Forwarded‑*相关头信息是否应用于Http请求。
server.useForwardHeaders=
#用于服务器响应头的值(如果为空则不发送)。
server.serverHeader=
#设置http消息头最大大小,单位:字节,默认值:8192。
server.maxHttpHeaderSize=
#连接超时时间:超时后连接将被关闭。‑1表示无限制。单位:毫秒,默认值:60000。
server.connectionTimeout=

其他参数参考:

 优雅关机相关配置:

server.shutdown 退出进程的方式,可以配置graceful和 immediate,默认值:immediate。

spring.lifecycle.timeout‑per‑shutdown‑phase 在该规定时间内如果线程无法执行完毕则 会被强制停机,默认值:30s。

访问日志相关配置:

server.bes.accesslog.enabled 是否开启访问日志,默认值:false。 server.bes.accesslog.pattern 指定访问日志格式,默认值:common。 server.bes.accesslog.directory 指定访问日志的目录,默认值: logs/access。 server.bes.accesslog.prefix 指定日志文件的前缀,默认值: server_access_log。 server.bes.accesslog.suffix 指定日志文件的后缀,默认值:.log。 server.bes.accesslog.rotate 是否开启访问日志轮转,默认值:true。 server.bes.accesslog.renameOnRotate 是否将时间戳添加到轮转日志文件的文件名 中,默认值:false。 server.bes.accesslog.fileDateFormat 在日志文件名中的日期格式,默认值: .yyyy‑MM‑dd。 server.bes.accesslog.requestAttributesEnabled是否开启为请求设置ip地址、主机名、协议 和端口的请求属性。 server.bes.accesslog.buffered 日志缓存:若启用,则访问日志记录先缓存 到内存中,然后定时刷新到文件中,默认 值:true。 server.bes.accesslog.rotatableByTime 按时间轮转,默认值:true。 server.bes.accesslog.rotatableBySize 按大小轮转,默认值:false。

server.bes.accesslog.rotationSize 轮转大小,rotatableBySize=true时有效, 默认值:10458760。 erver.bes.accesslog.maxHistoryFiles 最大历史文件个数,默认值:10。

相关文章:

springboot项目怎么样排除自带tomcat容器使用宝蓝德bes web中间件?

前言&#xff1a; 由于Spring Boot 1.x和2.x不兼容&#xff0c;BES提供了对应的Spring Boot Starter版本。 bes‑lite‑spring‑boot‑1.x‑starter.jar&#xff0c;适用于Spring Boot 1.x的版本。 bes‑lite‑spring‑boot‑2.x‑starter…...

响应式ref()和reactive()

文章目录 ref()reactive()ref对比reactivetoRefs与toRef ref() 作用&#xff1a;定义响应式变量。 语法&#xff1a;let xxxref(初始值)。 返回值&#xff1a;一个RefImpl的实例对象&#xff0c;简称ref对象或ref&#xff0c;ref对象的value属性是响应式的 注意点&#xff1…...

运维系列.Nginx中使用HTTP压缩功能

运维专题 Nginx中使用HTTP压缩功能 - 文章信息 - Author: 李俊才 (jcLee95) Visit me at CSDN: https://jclee95.blog.csdn.netMy WebSite&#xff1a;http://thispage.tech/Email: 291148484163.com. Shenzhen ChinaAddress of this article:https://blog.csdn.net/qq_28550…...

vue3项目图片压缩+rem+自动重启等plugin使用与打包配置

一、Svg配置 每次引入一张 SVG 图片都需要写一次相对路径&#xff0c;并且对 SVG 图片进行压缩优化也不够方便。 vite-svg-loader插件加载SVG文件作为Vue组件&#xff0c;使用SVGO进行优化。 插件网站https://www.npmjs.com/package/vite-svg-loader 1. 安装 pnpm i vite-svg…...

数据库性能优化系统设计

设计一个数据库性能优化系统&#xff0c;目标是监测、诊断并改善数据库的运行效率&#xff0c;确保系统能够高效稳定地处理大量数据请求。以下是一个概要设计&#xff0c;包括关键模块、功能和实现思路&#xff1a; 1. 系统架构 分布式监控中心&#xff1a;采用分布式架构收集…...

MyBatisPlus-分页插件的基本使用

目录 配置插件 使用分页API 配置插件 首先&#xff0c;要在配置类中注册MyBatisPlus的核心插件&#xff0c;同时添加分页插件。&#xff08;可以放到config软件包下&#xff09; 可以看到&#xff0c;我们定义了一个配置类&#xff0c;在配置类里声明了一个Bean,这个Bean的名…...

深入探索Python库的奇妙世界:赋能编程的无限可能

在编程的浩瀚宇宙中&#xff0c;Python以其简洁的语法、强大的功能和广泛的应用领域&#xff0c;成为了众多开发者心中的璀璨明星。而Python之所以能够如此耀眼&#xff0c;很大程度上得益于其背后庞大的库生态系统。这些库&#xff0c;如同一块块精心雕琢的积木&#xff0c;让…...

力扣爆刷第161天之TOP100五连刷71-75(搜索二叉树、二维矩阵、路径总和)

力扣爆刷第161天之TOP100五连刷71-75&#xff08;搜索二叉树、二维矩阵、路径总和&#xff09; 文章目录 力扣爆刷第161天之TOP100五连刷71-75&#xff08;搜索二叉树、二维矩阵、路径总和&#xff09;一、98. 验证二叉搜索树二、394. 字符串解码三、34. 在排序数组中查找元素的…...

你真的了解Java内存模型JMM吗?

哈喽&#xff0c;大家好&#x1f389;&#xff0c;我是世杰。 本文我为大家介绍面试官经常考察的**「Java内存模型JMM相关内容」** 面试连环call 什么是Java内存模型(JMM)? 为什么需要JMM?Java线程的工作内存和主内存各自的作用?Java缓存一致性问题?Java的并发编程问题? …...

Springboot整合Jsch-Sftp

背景 开发一个基于jsch的sftp工具类&#xff0c;方便在以后的项目中使用。写代码的过程记录下来&#xff0c;作为备忘录。。。 Maven依赖 springboot依赖 <parent><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-par…...

生成随机的验证码图片(Python)

文章目录 一、导入包二、生成随机的验证码三、生成随机的rgb颜色四、生成图片验证码总结&#xff1a; 一、导入包 import random from PIL import Image, ImageDraw, ImageFont二、生成随机的验证码 def random_code(length4):默认返回4位随机验证码&#xff0c;字符串code …...

0/1背包问题总结

文章目录 &#x1f347;什么是0/1背包问题&#xff1f;&#x1f348;例题&#x1f349;1.分割等和子集&#x1f349;2.目标和&#x1f349;3.最后一块石头的重量Ⅱ &#x1f34a;总结 博客主页&#xff1a;lyyyyrics &#x1f347;什么是0/1背包问题&#xff1f; 0/1背包问题是…...

模电基础 - 放大电路的频率响应

目录 一. 简介 二. 频率响应的基本概念 三. 波特图 四. 晶体管的高频等效模型 五. 场效应管的高频等效模型 六. 单管放大电路的频率响应 七.多级放大电路的频率响应 八. 频率响应与阶跃响应 一. 简介 放大电路的频率响应是指在输入不同频率的正弦信号时&#xff0c;电路…...

Java 8 到 Java 22 新特性详解

Java 8 到 Java 22 新特性详解 Java自发布以来一直在不断演进&#xff0c;添加新特性以提升开发效率和性能。本文将介绍Java 8到Java 22的主要新特性&#xff0c;帮助开发者了解各版本的新功能和改进。 Java 8 (2014) 1. Lambda 表达式 Lambda 表达式允许使用简洁的语法定义…...

华为OD机试题-提取字符串中最长数学表达式

题目描述 https://blog.csdn.net/weixin_51055612/article/details/139841128 题目描述 提取字符串中的最长合法简单数学表达式&#xff0c;字符串长度最长的&#xff0c;并计算表达式的值。如果没有&#xff0c;则返回0。 简单数学表达式只能包含以下内容&#xff1a;0-9数字&…...

专家指南:如何为您的电路选择理想的压敏电阻或热敏电阻

保护和维持电路功能需要两种设备&#xff1a;压敏电阻和热敏电阻。这两个电气元件有时会因后缀相似而混淆&#xff0c;但它们具有不同且重要的用途。 由于这种混淆&#xff0c;我们需要准确地了解这些组件是什么&#xff0c;这就是本文将要讨论的内容——应用程序、作用、优点…...

基于主流SpringBoot进行JavaWeb开发的学习路线

目录 一、学习路线 &#xff08;1&#xff09;第一部分&#xff08;Web前端开发的技术栈&#xff09; &#xff08;2&#xff09;第二部分&#xff08;Web后端开发&#xff09; 二、学习之后必备的技能 三、学习Web开发的基础与未来的收获 学完这一类知识目标&#xff1a;…...

医疗机器人中的具身智能进展——自主超声策略模型的任务编码和局部探索

医疗机器人一直是具身智能的研究热点。医学图像、医疗触诊、血压血氧、心率脉搏和生物电信号等多模态生物医学信息&#xff0c;不断丰富着医疗机器人的感知范畴。 自主超声 “自主超声”属于具身智能医疗机器人领域中话题度较高的研究方向。作为临床检查的重要手段之一&#…...

探索人工智能在电子商务平台与游戏发行商竞争中几种应用方式

过去 12 年来&#xff0c;电脑和视频游戏的发行策略发生了巨大变化。数字游戏的销量首次超过实体游戏的销量 在20132020 年的封锁进一步加速了这一趋势。例如&#xff0c;在意大利&#xff0c;封锁的第一周导致数字游戏下载量 暴涨174.9%. 展望未来&#xff0c;市场有望继续增…...

【Altium】AD-网络版一个用户非人为异常占用多个License的解决方法

【更多软件使用问题请点击亿道电子官方网站】 1、 文档目标 当出现一个用户同时占用多个授权&#xff0c;又无法单独释放一个授权的情况下&#xff0c;该如何解决。 2、 问题场景 一个用户获取网络版授权后&#xff0c;AD会自动重复获取授权&#xff0c;直到该license下所有授…...

C++:std::is_convertible

C++标志库中提供is_convertible,可以测试一种类型是否可以转换为另一只类型: template <class From, class To> struct is_convertible; 使用举例: #include <iostream> #include <string>using namespace std;struct A { }; struct B : A { };int main…...

Go 语言接口详解

Go 语言接口详解 核心概念 接口定义 在 Go 语言中&#xff0c;接口是一种抽象类型&#xff0c;它定义了一组方法的集合&#xff1a; // 定义接口 type Shape interface {Area() float64Perimeter() float64 } 接口实现 Go 接口的实现是隐式的&#xff1a; // 矩形结构体…...

服务器硬防的应用场景都有哪些?

服务器硬防是指一种通过硬件设备层面的安全措施来防御服务器系统受到网络攻击的方式&#xff0c;避免服务器受到各种恶意攻击和网络威胁&#xff0c;那么&#xff0c;服务器硬防通常都会应用在哪些场景当中呢&#xff1f; 硬防服务器中一般会配备入侵检测系统和预防系统&#x…...

css的定位(position)详解:相对定位 绝对定位 固定定位

在 CSS 中&#xff0c;元素的定位通过 position 属性控制&#xff0c;共有 5 种定位模式&#xff1a;static&#xff08;静态定位&#xff09;、relative&#xff08;相对定位&#xff09;、absolute&#xff08;绝对定位&#xff09;、fixed&#xff08;固定定位&#xff09;和…...

多模态大语言模型arxiv论文略读(108)

CROME: Cross-Modal Adapters for Efficient Multimodal LLM ➡️ 论文标题&#xff1a;CROME: Cross-Modal Adapters for Efficient Multimodal LLM ➡️ 论文作者&#xff1a;Sayna Ebrahimi, Sercan O. Arik, Tejas Nama, Tomas Pfister ➡️ 研究机构: Google Cloud AI Re…...

C++.OpenGL (20/64)混合(Blending)

混合(Blending) 透明效果核心原理 #mermaid-svg-SWG0UzVfJms7Sm3e {font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#mermaid-svg-SWG0UzVfJms7Sm3e .error-icon{fill:#552222;}#mermaid-svg-SWG0UzVfJms7Sm3e .error-text{fill…...

省略号和可变参数模板

本文主要介绍如何展开可变参数的参数包 1.C语言的va_list展开可变参数 #include <iostream> #include <cstdarg>void printNumbers(int count, ...) {// 声明va_list类型的变量va_list args;// 使用va_start将可变参数写入变量argsva_start(args, count);for (in…...

Git常用命令完全指南:从入门到精通

Git常用命令完全指南&#xff1a;从入门到精通 一、基础配置命令 1. 用户信息配置 # 设置全局用户名 git config --global user.name "你的名字"# 设置全局邮箱 git config --global user.email "你的邮箱example.com"# 查看所有配置 git config --list…...

第7篇:中间件全链路监控与 SQL 性能分析实践

7.1 章节导读 在构建数据库中间件的过程中&#xff0c;可观测性 和 性能分析 是保障系统稳定性与可维护性的核心能力。 特别是在复杂分布式场景中&#xff0c;必须做到&#xff1a; &#x1f50d; 追踪每一条 SQL 的生命周期&#xff08;从入口到数据库执行&#xff09;&#…...

Qemu arm操作系统开发环境

使用qemu虚拟arm硬件比较合适。 步骤如下&#xff1a; 安装qemu apt install qemu-system安装aarch64-none-elf-gcc 需要手动下载&#xff0c;下载地址&#xff1a;https://developer.arm.com/-/media/Files/downloads/gnu/13.2.rel1/binrel/arm-gnu-toolchain-13.2.rel1-x…...