【Linux】虚拟机部署与发布J2EE项目(Windows版本)

【Linux】虚拟机部署与发布J2EE项目(Windows版本)

  • 1.将Java项目部署到虚拟机(Virtual Machine)有以下好处:
  • 2.单机项目
    • 1.将项目共享到虚拟机
    • 2.解压并将war包放入tomcat
    • 3.运行tomcat并查看该项目的数据库配置
    • 4.数据库导入脚本
    • 5.宿主机运行项目
  • 二、前后端分离项目
    • 1.解压并将war包放入tomcat
    • 2.运行tomcat并查看该项目的数据库配置
    • 3.数据库导入脚本
    • 4.配置node.js环境
  • 3.运行spa项目
    • 1.反向代理解决
    • 2.第二种在spa项目中找到config文件下的index.js将localhost改为0.0.0.0

1.将Java项目部署到虚拟机(Virtual Machine)有以下好处:

跨平台性:Java虚拟机(JVM)提供了一个中间层,使得Java应用程序可以在不同的操作系统上运行,无需进行代码修改。这意味着您可以使用一套Java代码,在不同的硬件和操作系统上部署和运行应用程序。

安全性:Java虚拟机提供了安全管理机制,可以对Java应用程序的执行过程进行监控和控制。通过Java的安全策略文件,您可以限制应用程序的访问权限,保护系统免受恶意代码的攻击。

内存管理:Java虚拟机负责分配和管理内存资源,包括自动内存回收机制。这样可以减轻开发人员的负担,不需要手动处理内存分配和释放,避免了常见的内存泄漏和段错误问题。

性能优化:Java虚拟机在执行Java字节码时,可以进行即时编译和优化,以提高应用程序的执行效率。虚拟机会根据运行时的情况进行代码优化,以获得更好的性能表现。

灵活性与可扩展性:虚拟机提供了丰富的工具和接口,使得Java应用程序可以方便地进行调试、监控和管理。同时,虚拟机也支持动态加载和卸载模块,使得应用程序的扩展和更新更加容易。

总的来说,将Java项目部署到虚拟机可以提供跨平台性、安全性、内存管理、性能优化以及灵活性与可扩展性等好处,为开发人员和系统管理员提供了更好的开发、部署和管理体验。

2.单机项目

1.将项目共享到虚拟机

在这里插入图片描述

2.解压并将war包放入tomcat

在这里插入图片描述

3.运行tomcat并查看该项目的数据库配置

在这里插入图片描述

4.数据库导入脚本

在这里插入图片描述

5.宿主机运行项目

在这里插入图片描述

二、前后端分离项目

1.解压并将war包放入tomcat

在这里插入图片描述

2.运行tomcat并查看该项目的数据库配置

在这里插入图片描述

3.数据库导入脚本

在这里插入图片描述

4.配置node.js环境

在这里插入图片描述
现在node.js下创建这两个文件夹node_ceche和node_global
%NODE_HOME%;%NODE_HOME%\node_global
npm config set prefix “C:\software\node-v18.16.1-win-x64\node-v18.16.1-win-x64”

npm config set cache “C:\software\node-v18.16.1-win-x64\node-v18.16.1-win-x64”

npm config set registry https://registry.npm.taobao.org/

在命令窗口执行以上命令(地址改为自己的)

3.运行spa项目

在这里插入图片描述
但是会出现访问不,可以在主机访问,外机不可以。
两种解决办法

1.反向代理解决

在这里插入图片描述
进入nginx下的conf文件夹下的nginx.conf文件进行配置代理url
在这里插入图片描述
然后进入cmd窗口,在nginx根目录下输入cmd进入命令窗口输入 nginx.exe -s reload重启
即可
在这里插入图片描述
现在可以访问了。

2.第二种在spa项目中找到config文件下的index.js将localhost改为0.0.0.0

在这里插入图片描述
然后也可以进行访问。
在这里插入图片描述

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

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

创新领航 | 竹云参编《基于区块链的数据资产评估实施指南》正式发布!

10月25日,由深圳数宝数据服务股份有限公司和深圳职业技术大学提出,中国科学院深圳先进技术研究院、中国电子技术标准化研究院、中国(天津)自由贸易试验区政策与产业创新发展局、网络空间治理与数字经济法治(长三角&…

【LeetCode每日一题合集】2023.10.16-2023.10.22(只出现一次的数字Ⅲ)

文章目录 260. 只出现一次的数字 III⭐(异或)🐂2652. 倍数求和解法1——枚举模拟解法2—— O ( 1 ) O(1) O(1)容斥原理相似题目——1201. 丑数 III(二分查找容斥原理) 2530. 执行 K 次操作后的最大分数解法1——贪心优…

ActiveMQ消息中间件简介

一、ActiveMQ简介 ActiveMQ是Apache出品,最流行的,能力强劲的开源消息总线。ActiveMQ是一个完全支持JMS1.1和J2EE1.4规范的JMS Provide实现。尽管JMS规范出台已经是很久的事情了,但是JMS在当今的J2EE应用中仍然扮演这特殊的地位。 二、Active…

Linux高性能服务器编程——ch8笔记

第8章 高性能服务器程序框架 8.1 服务器模型 服务器启动后,首先创建一个(或多个)监听socket,并调用bind函数将其绑定到服务器感兴趣的端口,然后调用listen函数等待客户连接。服务器稳定运行之后,客户端就可…

基于nodejs+vue全国公考岗位及报考人数分析

目 录 摘 要 I ABSTRACT II 目 录 II 第1章 绪论 1 1.1背景及意义 1 1.2 国内外研究概况 1 1.3 研究的内容 1 第2章 相关技术 3 2.1 nodejs简介 4 2.2 express框架介绍 6 2.4 MySQL数据库 4 第3章 系统分析 5 3.1 需求分析 5 3.2 系统可行性分析 5 3.2.1技术可行性:…

FreeROTS 任务通知和实操 详解

目录 什么是任务通知? 任务通知值的更新方式 任务通知的优势和劣势 任务通知的优势 任务通知的劣势 任务通知相关 API 函数 1. 发送通知 2. 等待通知 任务通知实操 1. 模拟二值信号量 2. 模拟计数型信号量 3. 模拟事件标志组 4. 模拟消息邮箱 什么是任务…

数据结构---顺序表

线性表 什么是线性表 线性表(linear list)是n个具有相同特性的数据元素的有限序列。 线性表是一种在实际中广泛使用的数据结构,常见的线性表:顺序表、链表、栈、队列、字符串... 线性表在逻辑上是线性结构,也就说是…

树莓派基金会近日发布了新版基于 Debian 的树莓派操作系统

导读树莓派基金会(Raspberry Pi Foundation)近日发布了新版基于 Debian 的树莓派操作系统(Raspberry Pi OS),为树莓派单板电脑带来了新的书虫基础和一些重大变化。 新版 Raspberry Pi OS 的最大变化是它现在基于最新的…

Spring概述

Spring概述 Spring 是最受欢迎的企业级 Java 应用程序开发框架,数以百万的来自世界各地的开发人员使用 Spring 框架来创建性能好、易于测试、可重用的代码。 Spring 框架是一个开源的 Java 平台,它最初是由 Rod Johnson 编写的,并且于 2003 …

0基础学习VR全景平台篇第114篇:全景图优化和输出 - PTGui Pro教程

上课!全体起立~ 大家好,欢迎观看蛙色官方系列全景摄影课程! 前情回顾:之前,我们详细介绍了如何用编辑器、控制点、垂直线等功能优化错位和矫正水平,然而这些调整不会马上生效。 我们需要在【优化】选项卡…

Dart HttpClient 网络请示框架的使用详解

Dart的HttpClient库是一个用于发送HTTP请求的库,它提供了一个简单的API来执行HTTP请求和接收响应。下面是一个详细的HttpClient使用指南。 1. 导入HttpClient库 首先,确保你已经将HttpClient库导入到你的Dart项目中。你可以使用pubspec.yaml文件中的de…

我是如何走上测试管理岗的

最近有小伙伴问了一个问题:他所在的测试团队规模比较大,有 50 多个人,分成了 4 ~ 5 个小组。这位同学觉得自己的技术能力在团队里应该属于比较不错的,但疑惑的是在几次组织架构调整中,直属领导一直没有让他来管理一个小…