如何在开发时部署和运行前后端分离的JavaWeb项目
在开发中大型的JavaEE项目时,前后端分离的框架逐渐成为业界的主流,传统的单机部署前后端在同一个项目中的工程项目越来越少。这类JavaWeb项目的后端通常都采用微服务的架构,后端会被分解为诸多个小项目,然后使用dubbo+zookeeper或者springCloud来构建微服务,前端则会是一个单独的项目,前台的请求通过微服务来调用。但是,不同与传统的web项目,这类前后端分离的项目如何在开发中部署和运行呢?
当前后端分离时,后端项目一定会被加载到tomcat的webapp目录下面,但是前端的资源院该如何被访问到呢?这里以tomcat这个中间件为例,探讨在开发这类项目的时候,如何让前后端分离的项目部署并且运行起来,即后端项目部署在tomcat之后如何在运行时访问静态资源(非上线部署)。
主要有两种方案:1.在本地通过Nginx来处理这些静态资源。2、将静态资源统一放入一个javaweb应用中,并将自动生成的war包随后端项目一期丢入tomcat。下面详细介绍
一、使用Nginx来访问静态资源。
在本地安装nginx并且修改nginx.conf,修改相关配置,将web访问的端口的资源进行更改,配置如下:
server {listen 80;server_name localhost;charset utf-8; #access_log logs/host.access.log main; location / { proxy_pass http://tomcat_pool; proxy_redirect off; proxy_set_header HOST $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; client_max_body_size 10m; client_body_buffer_size 128k; proxy_connect_timeout 90; proxy_send_timeout 90; proxy_read_timeout 90; proxy_buffer_size 4k; proxy_buffers 4 32k; proxy_busy_buffers_size 64k; proxy_temp_file_write_size 64k; } location ~ .*\.(html|htm|gif|jpg|jpeg|bmp|png|ico|txt|js|css|woff|woff2|ttf|eot|map)$ { root D:\Workspaces\esop-html; index index.html; }
listen对象改为你本地的tomcat访问端口,最下面location中的root改为你前端项目中静态资源的位置,这样就可以实现只部署后端的项目就能访问前端的页面了。
二、将前端项目转换为动态的web项目,随后端项目一起丢入tomcat
这个方案省去了在本地安装和配置nginx,但是也只适用于开发阶段项目的部署运行和调试,真正在生产环境通常前后端项目会部署在不同的服务器。
- 如果是Intellij Idea,在导入前端项目之后,右键项目 add framework support --> web application,这时将会把前端项目转换为一个javaweb项目,然后将静态资源放在生成的web目录下即可。
- 如果是eclipse,可以新建一个javaweb项目然后将静态资源放入web或者webcontent目录下,或者直接先导入前端项目,然后通过 project facts 将项目转换为dynamic web项目并勾选 js等相关配置。
然后,运行项目时把后端的war包和前端的war包一同添加到 deployment中运行即可。
转载于:https://www.cnblogs.com/waliwaliwa/p/7222258.html
如何在开发时部署和运行前后端分离的JavaWeb项目相关推荐
- 前后端分离的项目部署到tomcat_如何在开发时部署和运行前后端分离的JavaWeb项目...
在开发中大型的JavaEE项目时,前后端分离的框架逐渐成为业界的主流,传统的单机部署前后端在同一个项目中的工程项目越来越少.这类JavaWeb项目的后端通常都采用微服务的架构,后端会被分解为诸多个小项 ...
- 超详细!4小时开发一个SpringBoot+vue前后端分离博客项目!!
小Hub领读: 前后端分离的博客项目终于出来啦,真是花了好多心思录制咧.文末直接进入B站看视频哈! 作者:吕一明 项目代码:https://github.com/MarkerHub/vueblog 项 ...
- Nginx+uwsgi+celery+supervisor部署Django前后端分离项目
转载 Nginx+uwsgi+celery+supervisor部署Django前后端分离项目 ljmict 0人评论 3887人阅读 2018-08-08 01:29:45 本实验实现了负载均衡.反 ...
- 一款小清新的 SpringBoot+ Mybatis 前后端分离后台管理系统项目
今日推荐 推荐3个快速开发平台 前后端都有 项目经验又有着落了推荐一个高仿微信的项目 有点屌!!一二线城市知名 IT 互联网公司名单(新版) 项目介绍 前后端分离架构,分离开发,分离部署,前后端互不影 ...
- SpringBoot+vue前后端分离博客项目
SpringBoot+vue前后端分离博客项目 Java后端接口开发 1.前言 2.新建Springboot项目 3.整合mybatis plus 第一步:导入jar包 第二步:然后去写配置文件: 第 ...
- 使用SpringBoot + Vue (若依前后端分离版) 写项目的一些总结(持续更新...)
使用SpringBoot + Vue(若依前后端分离版) 写项目的一些总结 获取Redis服务 @Autowired private RedisCache redisCache; String cap ...
- springboot jwt token前后端分离_基于Spring Boot+Spring Security+JWT+Vue前后端分离的开源项目...
一.前言 最近整合Spring Boot+Spring Security+JWT+Vue 完成了一套前后端分离的基础项目,这里把它开源出来分享给有需要的小伙伴们 功能很简单,单点登录,前后端动态权限配 ...
- 前后端分离的webgis项目(二)
前后端分离的webgis项目(二) 二. 前端vue+leaflet 首先你得安装nodejs并配置环境,看这里,然后安装vue-cli,用它来快速新建项目 可以使用下列任一命令安装 npm inst ...
- 移动端开发者眼中的前端开发流程变迁与前后端分离
写在最开始 这是一篇面向移动端开发者的科普性文章,从前端开发的最初流程开始,结合示范代码,讨论开发流程的演变过程,希望能覆盖一部分前端开发技术栈,从而对前端开发的相关概念形成初步的认识. 本文会提供一 ...
- 基于SpringBoot+Vue开发的前后端分离博客项目-Java后端接口开发
文章目录 1. 前言 2. 新建Springboot项目 3. 整合mybatis plus 第一步:导依赖 第二步:写配置文件 第三步:mapper扫描+分页插件 第四步:代码生成配置 第五步:执行 ...
最新文章
- Apache IoTDB v0.12.5 发布!
- 手撕FSG2.0壳(有坑点)
- Integer类对象池与==问题:Integer a=34556,b=34556;但a==b为false
- Navicat导出表结构
- LiveVideoStack调查问卷
- JQuery放大镜效果
- linux命令查看磁盘使用情况,linux查看磁盘使用情况命令
- MS Sql中取每个表的大小,行数
- 去掉字符串不需要的HTML标记(正则表达式)
- Error: [WinError 10013] 以一种访问权限不允许的方式做了一个访问套接字的尝试。
- 软件工程第一次作业——数独的求解与生成
- IIS无法启动计算机上的服务W3SVC如何修复、万维网发布服务(w3svc)已停止解决办法
- 亚马逊云科技赋能全新基于云的安全SaaS平台——安智联365
- 华为Mate40 Pro 66w充电器冒火花怎么回事?
- Google 出的C++轻量级日志库_GLog_了解_使用
- ppt6计算机考试,全国计算机考试第6章 过程.ppt
- 产品引流如何设计引流诱饵?引流如何选择诱饵?
- logistic回归的一些直观理解(1.连接函数 logit probit)
- 使用CANalyzer搭建LIN通信网络
- RS-一般推荐(CF系列)-2020:RaCT
热门文章
- LINUX剪贴板调用接口获取数据
- JDK使用VolatileImage可以有效改进刷屏
- 纽微特纪事:吾是如何被架空的(各位引以为戒)
- UBUNTU安装OpenOffice
- 如何在一个bat批处理文件中调用另一个bat批处理文件?
- Day_05 显示字符串
- 包打包和解析过程 unity_Unity AssetBundle 解析 (一)AB包介绍与构建
- winform 实现qq代理_「设计模式」代理模式:神奇的代理模式,节省了我80%开发时间...
- VS C++ memcpy() 用于double、int、结构体
- python 进位_Python中常见的数制转换的说明