【小白记录】透过SmartAdmin V2对前后端的理解与问题解决

一、项目理解

(一)SmartAdmin V2项目的理解

个人对项目的理解

SmartAdmin V2是基于springboot和vue等计算机技术的快速开发平台,是一个拥有完整功能的前后端分离的开源项目。该项目对使用者友好,整体架构清晰,本次项目实现难点是运行环境的配置和在实现过程中的问题解决。考验我们对问题的搜索,解决方案理解,动手能力以及探索思维。

在实现过程中,我对接触过的内容的理解是:MySQL是本项目的信息存取单元,Maven是为本项目提供运行所需的环境和插件,Rides具有信息读取的作用,没有它验证码无法正常显示,前端和后端有一种技术相连接,后端不启动的情况下前端无法正常启动,会报“网络连接错误”。

 

通过网络对项目的理解

Maven 是专门用于构建和管理Java相关项目的工具。使用Maven管理的Java 项目都有着相同的项目结构,便于统一维护jar包。

Rides是一个完全开源免费的key-value内存数据库 。通常被认为是一个数据结构服务器,主要是因为其有着丰富的数据结构 strings、map、 list、sets、 sorted sets

 Spring Boot是由Pivotal团队提供的全新框架,其设计目的是用来简化Spring应用的创建、运行、调试、部署等。它提供了一堆依赖打包,并已经按照使用习惯解决了依赖问题。使用Spring Boot可以不用或者只需要很少的Spring配置就可以让企业项目快速运行起来。

 Vue  ,是尤雨溪于2014年发布的一个前端框架,是一套用于构建用户界面的渐进式 javascript 框架,是国内比较流行的前端框架之一,占的市场份额最大,容易入门,可以和第三方库或者已有的项目进行整合,可以做复杂的单页应用。

 

(二)个人对前后端的理解:

前端:就目前前端开发技术课程的学习,前端主要有HTML,CSS以及JavaScript。其中HTML是对web页面主体内容进行编辑,CSS则是对主题进行修饰,如排版、字体样式、形状等等,JavaScript目前没学,但是我感觉它就是给予主体内容运动和对一定条件做出反应。

后端:我没学过但通过SmartAdmin V2项目的实现和个人理解猜测,我认为后端是对收集的所需信息进行存储,为前端提供信息读取,对前端发过来的信息进行资源调取和程序处理。

总体来看,我认为前后端就像一个人,前端描绘出一个人的外表,后端给予身体对外界做出感知和行动的能力

 

二、SmartAdmin V2实现的问题及解决思路

 

(一)后端部分运行显示 Public Key Retrieval is not allowed

解决思路:

方法一:通过网络搜索得将代码添加到url

allowPublicKeyRetrieval=true

 过程:找到文件sa-common.yaml,从中找到url将代码插入,再次运行,问题得到解决

 

方法二:通过搜索得知问题为连接MySQL出现问题,将解决方向定在MySQL上,自我探索得方法二,“数据库”—>“属性”—>“高级”,找到allowPubilcKeyRetrieval,修改“值”为“TURE”

过程:

缺点:后期发现方法二在每次重启后需要重新配置 

 

(二)前端web页面验证码未显现

解决思路:根据报错org.springframework.data.redis.RedisConnectionFailureException:无法连接到Redis和视频讲解得需要安装Redis才能显现。

方法:安装Redis

过程:根据Redis官方安装教程安装

 

(三)Redis不支持Windows

解决思路:根据官方要求需要下载模拟机

方法:下载WSL 2和安装Linux

过程:根据Microsoft官方WSL 2安装教程安装

 

(四)Ubuntu报错 错误:0x80370102

 解决思路:对错误代码进行查询得知为CPU未开启硬件虚拟化,但给出的解决办法为intel CPU虚拟化方案,通过查询知AMD CPU的硬件虚拟化为SVM Mode

方法:进入BIOS界面开启CPU虚拟化

过程:重启电脑—>按“F2”进入BIOS界面(不同主板进入方式不同)—>Advanced Mode(高级设置)—>Advanced(高级)—>CPU Configuration—>修改SVM Mode的值为Enabled 

附:INTEL CPU硬件虚拟化方案

 

 (五)电脑重启后进入前端web页面出现网络连接错误

解决思路:之前项目成功运行,关闭后只运行前端项目出现问题,根据报错推测:Mysql设置出现问题,防火墙或后端项目问题,进行尝试一一排除

过程:

猜想一:检查Mysql连接设置,对设置进行确定与连接测试,测试通过,再次运行前端项目,问题未解决

猜想二:关闭网络保护和防火墙,再次运行,问题未解决

猜想三:先运行后端项目后再运行前端项目,问题解决

 

三、问题启示

  1. 电脑关机和关闭Idea本地项目会关闭,部分位置的设置会被重置,包括rides、数据库属性设置部分重置等,重启项目需要先运行后端,再运行前端
  2. allowPubilcKeyRetrieval=True 可能会导致恶意的代理通过中间人攻击(MTIM)获取到明文密码,导致项目安全性降低
  3. Rides不能在WIndows环境下安装,需要WIndows安装模拟器模拟Linux环境,才能安装运行,且WIndows环境下CPU要支持并开启硬件虚拟化,Rides才能正常运行。计算机重启后需要在Linux界面开启Rides才能正常运行。
  4. Linux密码输入界面,密码不会显示,不影响使用,未对该问题解决
  5. 不是所有的软件都支持Windows
  6. Windows可以安装WSL 2运行Linux子系统
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值