若依管理系统——前后端分离版(一)部署前后端并启动运行

目录

  • 一、介绍
    • 后端技术:
      • SpringBoot框架
      • Spring Security安全控制
        • 功能
        • Spring Security与Shiro的区别
  • 二、建表
  • 三、修改配置文件
  • 四、打包、部署前端
  • 五、打包、部署后端
  • 六、登录

一、介绍

RuoYi-Vue 是一个 Java EE 企业级快速开发平台,基于经典技术组合(Spring Boot、Spring Security、MyBatis、Jwt、Vue),内置模块如:部门管理、角色用户、菜单及按钮授权、数据权限、系统参数、日志管理、代码生成等。在线定时任务配置;支持集群,支持多数据源,支持分布式事务。
若依官网:http://www.ruoyi.vip/
gitee仓库:https://gitee.com/y_project/RuoYi-Vue

后端技术:

SpringBoot框架

Spring Boot是一款开箱即用框架,提供各种默认配置来简化项目配置。让我们的Spring应用变的更轻量化、更快的入门。 在主程序执行main函数就可以运行。你也可以打包你的应用为jar并通过使用java -jar来运行你的Web应用。它遵循"约定优先于配置"的原则, 使用SpringBoot只需很少的配置,大部分的时候直接使用默认的配置即可。同时可以与Spring Cloud的微服务无缝结合。

Spring Security安全控制

Spring Security是一个能够为基于Spring的企业应用系统提供声明式的安全访问控制解决方案的安全框架。

功能

Authentication 认证,就是用户登录;
Authorization 授权,判断用户拥有什么权限,可以访问什么资源;
安全防护,跨站脚本攻击,session攻击等,非常容易结合Spring进行使用。

Spring Security与Shiro的区别

相同点:
1、认证功能
2、授权功能
3、加密功能
4、会话管理
5、缓存支持
6、rememberMe功能
不同点:
1、Spring Security基于Spring开发,项目如果使用Spring作为基础,配合Spring Security做权限更加方便。而Shiro需要和Spring进行整合开发
2、Spring Security功能比Shiro更加丰富,例如安全防护方面
3、Spring Security社区资源相对比Shiro更加丰富

1)Shiro的配置和使用比较简单,Spring Security上手复杂些
2)Shiro依赖性低,不需要依赖任何框架和容器,可以独立运行。Spring Security依赖Spring容器

二、建表

新建数据库 ry-vue
若依管理系统——前后端分离版(一)部署前后端并启动运行_第1张图片

运行sql文件:
若依管理系统——前后端分离版(一)部署前后端并启动运行_第2张图片
若依管理系统——前后端分离版(一)部署前后端并启动运行_第3张图片

三、修改配置文件

修改application.yml配置文件:
若依管理系统——前后端分离版(一)部署前后端并启动运行_第4张图片
若依管理系统——前后端分离版(一)部署前后端并启动运行_第5张图片

修改Redis配置信息:
若依管理系统——前后端分离版(一)部署前后端并启动运行_第6张图片

修改数据库连接信息:
若依管理系统——前后端分离版(一)部署前后端并启动运行_第7张图片

修改日志文件的路径:
若依管理系统——前后端分离版(一)部署前后端并启动运行_第8张图片

四、打包、部署前端

ruoyi-ui文件下就是前端页面的文件。
若依管理系统——前后端分离版(一)部署前后端并启动运行_第9张图片

进入到当前目录:
(可以使用IDEA直接将文件拖入)
若依管理系统——前后端分离版(一)部署前后端并启动运行_第10张图片
运行如下命令安装前端项目所需依赖:

npm install --unsafe-perm --registry=https://registry.npm.taobao.org

因为我们要部署,所以这里直接打包正式环境即可:

npm run build:prod

构建打包成功之后,会在根目录生成 dist 文件夹,里面就是构建打包好的前端项目文件:
在这里插入图片描述
在服务器下新建 /data/ruoyi-vue/ruoyi-ui 目录,并将前端打包的dist文件上传到这个目录:

修改Nginx配置文件:(没有安装部署Nginx可另行百度)
编辑nginx.conf文件:

若依管理系统——前后端分离版(一)部署前后端并启动运行_第11张图片
若依管理系统——前后端分离版(一)部署前后端并启动运行_第12张图片

 location / {
      root /data/ruoyi-vue/ui/dist;
      index index.html index.htm;
    }
     location /prod-api/{
      proxy_set_header Host $http_host;
      proxy_set_header X-Real-IP $remote_addr;
      proxy_set_header REMOTE-HOST $remote_addr;
      proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; 
      proxy_pass http://116.62.13.104:8080/;
    }

注意:因为我将前端项目和后端部署到了一套服务器,如果是不同的服务器可以将最后的IP地址修改为部署后台项目的服务器IP地址。

配置完成后,重启Nginx即可:/usr/local/nginx/sbin/nginx -s reload

浏览器访问IP地址即可看到前端页面:

(因为我已经部署好了后台,所以图片验证码才会出来,如果没有部署后台,是有报错的:404、502)
前端部署完成。

五、打包、部署后端

打成jar包,不用在部署Tomcat,查看ruoyi-admin模块下的pom文件,如果没有指定打包方式为war那么就是打jar包。
若依管理系统——前后端分离版(一)部署前后端并启动运行_第13张图片
直接使用Maven工具进行打包:
若依管理系统——前后端分离版(一)部署前后端并启动运行_第14张图片
打包完成后,jar包的位置在ruoyi-admin模块下的target目录下:若依管理系统——前后端分离版(一)部署前后端并启动运行_第15张图片
将jar包上传的服务器,
以脚本方式启动启动jar包:

vim startup.sh

//启动脚本
#!/bin/env bash

nohup java -Xms512m -Xmx1024m -Dfile.encoding=UTF-8 -jar ruoyi-admin.jar --server.port=8080 > /dev/null 2>&1 & echo $! > ./pids/run.pid
echo "START UP BY 8080"

vim shutdown.sh
//停止脚本   需要新建 pids 文件夹:  mkdir pids;新建日志目录: mkdir logs
#!/bin/env bash
kill -9 `cat ./pids/run.pid`

//需要为脚本赋可执行权限

chmod +x startup.sh
chmod +x shutdown.sh

//使用脚本启动
./startup.sh
//使用脚本停止
./shutdown.sh

以请求图片验证码的接口为例:
前端发送http://192.168.31.101/prod-api/captchaImage请求到Nginx,
Nginx经过代理转发到了http://192.168.31.101:8080//captchaImage后台的接口地址。
后台部署成功。

六、登录

账号:admin
密码:admin123
若依管理系统——前后端分离版(一)部署前后端并启动运行_第16张图片

若依管理系统——前后端分离版(一)部署前后端并启动运行_第17张图片

若依管理系统——前后端分离版(一)部署前后端并启动运行_第18张图片
若依管理系统——前后端分离版(一)部署前后端并启动运行_第19张图片

你可能感兴趣的:(项目总结,java)