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

国产化项目改造:使用达梦数据库和东方通组件部署,前后端分离框架

前提:前后端分离前后端包都要用war包。

1、springboot后端改变war包 pom文件添加

    <packaging>war</packaging>添加依赖,并且支持tomcat<!-- war包 --><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-tomcat</artifactId><scope>provided</scope></dependency><dependency><groupId>javax.servlet</groupId><artifactId>javax.servlet-api</artifactId><version>3.1.0</version><scope>provided</scope></dependency><dependency><groupId>org.apache.tomcat</groupId><artifactId>tomcat-servlet-api</artifactId><version>9.0.45</version><scope>provided</scope></dependency><!-- springboot去掉tomcat --><!--web--><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-web</artifactId><exclusions><exclusion><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-tomcat</artifactId></exclusion></exclusions></dependency>

Springbooot修改启动类

public class CsoftXfdbApp extends SpringBootServletInitializer {@Overrideprotected SpringApplicationBuilder configure(SpringApplicationBuilder application) {return application.sources(CsoftXfdbApp.class);}public static void main(String[] args) {SpringApplication.run(CsoftXfdbApp.class, args);}}

前端war包

前端在dist文件内
1、新建文件 WEB-INBF
2、进入WEB-INBF创建文件rewrite.configRewriteRule ^/index\.html$ - [L]
RewriteCond %{REQUEST_PATH} !-f
RewriteRule (.*) /index.html [L]3、进入 dist,打开 cmd,运行 jar -cvf dist.war * 得到 dist.war有时候可以不用新建文件,可以自行尝试

使用东方通 tongweb部署


1.配置虚拟主机
打开web容器配置里的虚拟主机管理,新增虚拟主机,主机名称没有限制可以用项目名称,主机别名可以设置成服务器ip,方便后面访问,通道列表可以先随便选一个,点击保存按钮添加主机完成。
![在这里插入图片描述](https://img-blog.csdnimg.cn/c10fd1165a1149c3955dda0ab08a76c6.jpeg#pic_center)2.配置http通道
因为前端后端都要部署要监听两个不同的端口,所以需要新建两个http通道。
(1)后端通道
打开web容器配置里的http通道管理,新增http通道,通道名称可以设置为后端服务的名称,监听端口设置为后端服务的端口号,虚拟主机选择刚新建的虚拟主机,然后点击下一步后面都是默认配置,直接完成配置。
(2)前端通道
打开web容器配置里的http通道管理,新增http通道,通道名称可以设置为前端服务的名称,监听端口设置为前端服务的端口号,重定向是后端端口,虚拟主机选择刚新建的虚拟主机,然后点击下一步后面都是默认配置,直接完成配置。
![前端通道](https://img-blog.csdnimg.cn/31dea799a8254b2f944a358c3593f5b4.png)3.部署应用
点击应用应用管理菜单,部署前后端应用(1)后端应用
点击部署应用按钮,部署后端应用,文件选择本地文件,选择后端项目文件路径中的war包,点击开始部署。应用名称设置为后端服务名称,应用前缀修改为“/”,然后点击下一步。虚拟主机选择我们新建的虚拟主机,点击直接完成,完成部署。(2)前端应用
点击部署应用按钮,部署前端应用,文件选择本地文件,选择前端项目dist文件夹中的war包,点击开始部署。应用名称设置为前端服务名称,应用前缀修改为“/”,然后点击下一步。虚拟主机选择我们新建的虚拟主机,点击直接完成,完成部署。4.访问项目
点击前端应用里的http访问,跳转到前端登录页面,输入用户密码,登录成功则说明应用部署完成。

注意:如果在同一个tongweb上面部署多个项目,spring要配置不同的jmx名称:
jmx:
default-domain: xrqf-qfx-end
JMX即Java Management Extension(Java管理应用扩展),这种机制可以方便的管理、监控正在运行的Java程序。常用于监控管理线程、内存、日志Level、服务重启、系统环境等等。springboot中spring.jmx是默认打开的,要求每个JMX域名字必须是唯一的,当两个服务同时部署在同一个tomcat上时,由于都没有指定JMX的域名称,所以会启动报错。

相关文章:

国产化项目改造:使用达梦数据库和东方通组件部署,前后端分离框架

前提&#xff1a;前后端分离前后端包都要用war包。 1、springboot后端改变war包 pom文件添加 <packaging>war</packaging>添加依赖&#xff0c;并且支持tomcat<!-- war包 --><dependency><groupId>org.springframework.boot</groupId><…...

Nginx实现负载均衡

Nginx实现负载均衡 负载均衡的作用 1、解决单点故障&#xff0c;让web服务器构成一个集群 2、将请求平均下发给后端的web服务器 负载均衡的软硬件介绍 负载均衡软件&#xff1a; # nginx 四层负载均衡&#xff1a;stream&#xff08;nginx 1.9版本以后有stream模块&#x…...

SpringCloud 2022有哪些变化

目录 前提条件 AOT支持 Spring Native支持 前提条件 Spring Cloud 2022.0.0是构建在Spring Framework 6.0和Spring Boot 3.0 之上的一S个主要版本。 JDK要求最低需要是Java 17J2EE要求最低需要Jakarta EE 9 AOT支持 Spring cloud 2022支持AOT编译&#xff0c;它是将程序源…...

如何快速本地搭建悟空CRM结合内网穿透工具高效远程办公

&#x1f308;个人主页&#xff1a;聆风吟 &#x1f525;系列专栏&#xff1a;数据结构、Cpolar杂谈 &#x1f516;少年有梦不应止于心动&#xff0c;更要付诸行动。 文章目录 &#x1f4cb;前言一. 无需公网IP&#xff0c;使用cpolar实现悟空CRM远程访问二. 通过公网来访问公司…...

Docker打包Python项目

1. 简介 Docker是一种开源的容器化平台&#xff0c;可以将应用程序及其依赖项打包到一个轻量级、可移植的容器中。通过使用Docker&#xff0c;可以简化Python项目的部署和运行&#xff0c;提高开发效率和应用程序的可移植性。 本文将介绍如何使用Docker来打包Python项目。我们…...

【Java并发编程一】并发与并行

为什么引入并发 摩尔定理逐渐失效&#xff0c;单核性能很难提升&#xff0c;通过组合多核性能来进一步满足实际需要&#xff0c;从而引入并发编程。在大部分场景下&#xff0c;并行是由于串行的&#xff0c;并行可以优化非关键节点的时间消耗。 并发的三大特性 原子性  某个…...

MFC/QT 一些快忘记的细节:

1&#xff1a;企业应用中&#xff0c;MFC平台除了用常见的对话框模式还有一种常用的就是单文档模式&#xff0c; 维护别人的代码&#xff0c;不容易区分,看它与程预序认同名cpp&#xff0c;就知道了&#xff0c;比如项目名称为 DoCMFCDemo&#xff0c;那么就看BOOL CDocMFCDe…...

在服务器上部署MVC 6应用程序

在服务器上成功部署MVC 6应用程序&#xff08;现在更为称为ASP.NET Core MVC&#xff09;涉及一系列步骤。以下是一般的指导步骤&#xff1a; 1. 准备服务器环境&#xff1a; - 确保服务器上安装了.NET Core Runtime和.NET Core SDK。可以从[.NET下载页面](https://dotnet.mi…...

golang学习笔记——斐波纳契数列

斐波纳契数列 编写一个程序来计算某个数字的斐波纳契数列。 斐波那契数列是一个数字列表&#xff0c;其中每个数字是前两个斐波那契数字之和。 例如&#xff0c;数字 6 的序列是 1,1,2,3,5,8&#xff0c;数字 7 的序列是 1,1,2,3,5,8,13&#xff0c;数字 8 的序列是 1,1,2,3,5…...

学习raft协议(1)

CAP C: 一致性 强调数据的正确性&#xff0c;每次读操作&#xff0c;要么读到最新&#xff0c;要么读失败 A:可用性 不发生错误&#xff0c;也不能出现过长的等待时间. P:分区容错性 在网络环境不可靠的背景下&#xff0c;整个系统仍然是正常运作的两种流派 &#xff08;1&am…...

SpringSecurity+jwt使用

参考文章链接 自定义SpringSecurity用户 package com.daben.springsecurityjwt.vo;import com.daben.springsecurityjwt.entity.SysUser; import org.springframework.security.core.GrantedAuthority; import org.springframework.security.core.userdetails.User; import j…...

html-网站菜单-点击显示导航栏

一、效果图 1.点击显示菜单栏&#xff0c;点击x号关闭&#xff1b; 2.点击一级菜单&#xff0c;展开显示二级&#xff0c;并且加号变为减号&#xff1b; 3.点击其他一级导航&#xff0c;自动收起展开的导航。 二、代码实现 <!DOCTYPE html> <html><head>&…...

【C++函数的进化】函数指针,模板,仿函数,lambda表达式

/*** poject * author jUicE_g2R(qq:3406291309)* file C函数的进化* * language C* EDA Base on VS2022* editor Obsidian&#xff08;黑曜石笔记软件&#xff09;* * copyright 2023* COPYRIGHT 原创学习笔记&#xff1a;转载需获得博…...

云服务器windows service2022 部署git服务器

1 安装 下载地址gitblit 解压到你的一个目录,我这里给的是C:\gitblit 根据官网提示要下载jre or jdk7.0,这里建议使用下载jre (jdk 有时候运行出问题,或者2个都安装),自行安装java,这里不做环境配置的说明 进入c:\gitblit\data 目录里面找到,defaults.properties 文件,编辑主…...

Linux_Docker修改Docker Root Dir

今天遇到需求&#xff0c;要修改一下docker容器和镜像的存储位置&#xff0c;默认位置为/var/lib/docker目录下&#xff0c;要修改到/new/dockerFile目录下。 停止docker服务 sudo service docker stop 备份docker容器镜像 移动/var/lib/docker目录下的文件到/dockerFile目录…...

解决requests 2.28.x版本SSL错误:证书验证失败

1、问题背景 在使用requests 2.28.1版本时&#xff0c;我进行HTTP post传输报告负载时&#xff0c;由于SSL验证设置为True&#xff0c;请求失败&#xff0c;错误如下&#xff1a;(Caused by SSLError(SSLCertVerificationError(1, ‘[SSL: CERTIFICATE_VERIFY_FAILED] certifi…...

【开源】基于Vue.js的开放实验室管理系统的设计和实现

项目编号&#xff1a; S 013 &#xff0c;文末获取源码。 \color{red}{项目编号&#xff1a;S013&#xff0c;文末获取源码。} 项目编号&#xff1a;S013&#xff0c;文末获取源码。 目录 一、摘要1.1 项目介绍1.2 项目录屏 二、研究内容2.1 实验室类型模块2.2 实验室模块2.3 实…...

使用composer安装ffmpeg的步骤

以下是使用composer安装ffmpeg的步骤&#xff1a; 1.在laravel根目录下执行以下命令安装ffmpeg&#xff1a; composer require php-ffmpeg/php-ffmpeg 2.如果不指定版本号&#xff0c;则默认使用0.14版本。 3.执行以上命令后&#xff0c;composer会自动下载并安装ffmpeg。 …...

RT-DETR优化策略:轻量级Backbone改进 | 高效模型 (Efficient MOdel, EMO),现代倒残差移动模块设计|ICCV2023

🚀🚀🚀本文改进:面向移动端的轻量化网络模型——EMO,它能够以相对较低的参数和 FLOPs 超越了基于 CNN/Transformer 的 SOTA 模型,支持四个版本EMO_1M, EMO_2M, EMO_5M, EMO_6M,参数量如下,相对于自带的rtdetr-l、rtdetr-x有很大提升 layersparametersgradientsEMO_1…...

一些nginx命令

1.停止nginx nginx -s quit systemctl stop nginx.service 立即停止 nginx-s stop 杀死nginx进程 killall nginx 2.启动命令 nginx systemctl start nginx.service 3.查看nginx进程 ps aux | grep nginx 4.重启nginx服务 systemctl restart nginx.service 5.重载…...

阿里云ACP云计算备考笔记 (5)——弹性伸缩

目录 第一章 概述 第二章 弹性伸缩简介 1、弹性伸缩 2、垂直伸缩 3、优势 4、应用场景 ① 无规律的业务量波动 ② 有规律的业务量波动 ③ 无明显业务量波动 ④ 混合型业务 ⑤ 消息通知 ⑥ 生命周期挂钩 ⑦ 自定义方式 ⑧ 滚的升级 5、使用限制 第三章 主要定义 …...

【开发技术】.Net使用FFmpeg视频特定帧上绘制内容

目录 一、目的 二、解决方案 2.1 什么是FFmpeg 2.2 FFmpeg主要功能 2.3 使用Xabe.FFmpeg调用FFmpeg功能 2.4 使用 FFmpeg 的 drawbox 滤镜来绘制 ROI 三、总结 一、目的 当前市场上有很多目标检测智能识别的相关算法&#xff0c;当前调用一个医疗行业的AI识别算法后返回…...

CSS设置元素的宽度根据其内容自动调整

width: fit-content 是 CSS 中的一个属性值&#xff0c;用于设置元素的宽度根据其内容自动调整&#xff0c;确保宽度刚好容纳内容而不会超出。 效果对比 默认情况&#xff08;width: auto&#xff09;&#xff1a; 块级元素&#xff08;如 <div>&#xff09;会占满父容器…...

Python基于历史模拟方法实现投资组合风险管理的VaR与ES模型项目实战

说明&#xff1a;这是一个机器学习实战项目&#xff08;附带数据代码文档&#xff09;&#xff0c;如需数据代码文档可以直接到文章最后关注获取。 1.项目背景 在金融市场日益复杂和波动加剧的背景下&#xff0c;风险管理成为金融机构和个人投资者关注的核心议题之一。VaR&…...

Bean 作用域有哪些?如何答出技术深度?

导语&#xff1a; Spring 面试绕不开 Bean 的作用域问题&#xff0c;这是面试官考察候选人对 Spring 框架理解深度的常见方式。本文将围绕“Spring 中的 Bean 作用域”展开&#xff0c;结合典型面试题及实战场景&#xff0c;帮你厘清重点&#xff0c;打破模板式回答&#xff0c…...

鸿蒙HarmonyOS 5军旗小游戏实现指南

1. 项目概述 本军旗小游戏基于鸿蒙HarmonyOS 5开发&#xff0c;采用DevEco Studio实现&#xff0c;包含完整的游戏逻辑和UI界面。 2. 项目结构 /src/main/java/com/example/militarychess/├── MainAbilitySlice.java // 主界面├── GameView.java // 游戏核…...

【向量库】Weaviate 搜索与索引技术:从基础概念到性能优化

文章目录 零、概述一、搜索技术分类1. 向量搜索&#xff1a;捕捉语义的智能检索2. 关键字搜索&#xff1a;精确匹配的传统方案3. 混合搜索&#xff1a;语义与精确的双重保障 二、向量检索技术分类1. HNSW索引&#xff1a;大规模数据的高效引擎2. Flat索引&#xff1a;小规模数据…...

Pycharm 函数注释

1 Docstring format File -> Settings -> Tools -> Python Integrated Tools -> Docstrings -> Docstring format&#xff0c;选择google File -> Settings -> Editor -> General -> Smart Keys -> Insert type placeholders in the documenta…...

vue中ref的详解以及react的ref对比

文章目录 1. ref是什么2. ref的使用3. ref的特性4. 使用场景5. 注意事项6. 与 React 的对比7. 动态 ref8. 函数式组件中的 ref9. 组合式 API 中的 ref10. 总结 1. ref是什么 ref 被用来给元素或子组件注册引用信息。引用信息将会注册在父组件的 $refs 对象上。可以通过实例对象…...

网站静态文件加速-Django项目静态文件存储到腾讯云COS存储提升网络请求速度

解决办法是通过在 Nginx 中把对 /static/ 路径的请求直接指向你的 COS 域名来实现让浏览器直接去拉取 COS 上的静态资源&#xff0c;而不再经过本地服务器。下面给出两种常见的做法&#xff0c;你可以任选其一&#xff1a; 方法一&#xff1a;使用 301/302 Redirect &#xff0…...