【狂神说】分析前后端分离开源项目?

文章目录

    • 1.如何分析开源项目
        • 项目简介
        • 项目源码
    • 2.观察开源项目
    • 3.开源项目下载
    • 4.跑起来是第一步
    • 5.前后端分离项目固定套路
    • 6.如何找到一个开源项目

1.如何分析开源项目

学习的方式:

  1. 不知道这个代码怎么来的
  2. 这个代码跑不起来
  3. 这个项目对我们有什么帮助,不会模块化分析

任何一个开源项目,都可以让自己等到提升

代码自动生成:我们平时会写很多业务代码,用Mybatis Plus去生成的,第三方的工具包去生成

开源项目:eladmin

项目简介

一个基于 Spring Boot 2.1.0 、 Spring Boot Jpa、 JWT、Spring Security、Redis、Vue的前后端分离的后台管理系统

开发文档: https://el-admin.vip

体验地址: https://el-admin.xin

账号密码: admin / 123456

项目源码

后端源码前端源码
githubhttps://github.com/elunez/eladminhttps://github.com/elunez/eladmin-web
码云https://gitee.com/elunez/eladminhttps://gitee.com/elunez/eladmin-web

2.观察开源项目

后端:
在这里插入图片描述

前端:
在这里插入图片描述

3.开源项目下载

在这里插入图片描述

在码云下载,因为GitHub下载太慢了,下载完毕进行解压

解压完不要着急运行

先去观察项目:

1、用了哪些技术(Springboot、Vue、Redis、MQ…)

2、是否有数据库

3、你的环境是否匹配(Maven、(npm、node.js)、redis…)

需要的环境匹配了再想办法运行

4.跑起来是第一步

1、安装数据库,执行SQL(先创建数据库,编码默认utf8)

2、前端跑起来(在文件上全选文件名然后cmd)
在这里插入图片描述

3、后端项目导入跑起来(打开idea——import)

在这里插入图片描述

4、等待所以的项目跑成功

在这里插入图片描述

6、启动后端项目(一般前后端分离项目,前端依赖于后端)

只要发现Swagger,就需要先把swagger跑起来,因为前后端分离的接口全部都在这里

进而查看配置文件,默认端口号,有哪些配置,需要改为自己的项目和环境地址!

(尤其是端口号和用户名密码)

前端:就是安装依赖。启动测试运行,看接口是否异常
在这里插入图片描述

打开Redis

在这里插入图片描述

开发环境重点需要去看端口号:server:port:8000(在总文件application.yml里面)前端也是调这个端口

第二个点需要去看Redis的端口号

开发环境dev.yml的JDBC没有问题
在这里插入图片描述

跑起来

在这里插入图片描述

进入页面:localhost://8000/swagger-ui.html

前端跑起来:(推荐VS Code打开文件夹)

在这里插入图片描述

在这里插入图片描述

5.前后端分离项目固定套路

1、从前端开始分拆,打开控制台,点一个接口,分析一波调用关系

2、前后端端口调用不一致:前端:8013 后端:8000;研究怎么操作的

在这里插入图片描述

  • 封装了接口请求 ajax(前后端分离) axios(Vue) request(前端封装)

  • 找到配置(生产配置、开发环境配置)

在这里插入图片描述

  • 前后端分离项目的重点:找到接口的调用关系

  • Springboot提供服务、前端调用接口数据、Vue负责渲染页面

  • 在这里插入图片描述

  • 前端项目固定套路

  • 在这里插入图片描述

  • 在这里插入图片描述

  • 通过抓取前端的请求,找到后端对应的接口

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

怎么去跟后端对接:

拿到接口的地址:
在这里插入图片描述

去后端找:

在这里插入图片描述

  • 后端分析套路:Controller–Service–Dao

  • 现在从前到后知道怎么分析了,但是如何渲染到视图上的呢?看前端
    -在这里插入图片描述

  • Vue标准套路

  • 在这里插入图片描述

template:视图层

script:js操作,接口的调用

style:页面的样式

  • 如果你现在自己的项目或者要学习一个模块,将这个模块独立抽取出来即可,删除法
  • 比如需要学习用户模块,除了了user模块
    在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

如果你想测试这个接口成不成功,在这里测一下,能不能把他查出来就行了

6.如何找到一个开源项目

layui

Semantic UI

Grabient

Vue Element Admin

1、找分类(Java、python)

2、看收藏(star),大家都觉得不错的,就是比较好的,有学习的价值

3、看具有价值

4、根据自身的理解情况:Java、SSM、Springboot…阶段性成果、

5、如何学习Java:Java进阶路线七个阶段

后端开发去写前端非常难看,可以使用第三方的:Ant Design Pro 或 Element

在这里插入图片描述
在这里插入图片描述

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

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

相关文章

设计公共API的六个注意事项

摘要:俗话说:“好东西就要贡献出来和大家一起分享”,尤其是在互联网业务高度发达的今天,如果你的创业公司提供了一项很酷的技术或者服务,并且其他用户也非常喜欢该产品,在这种情况下,最好的解决…

go 交叉编译

golang中windows交叉编译 env GOOSlinux GOARCHamd64 go build .打包镜像 FROM alpineMAINTAINER "congge"ADD ./casino_niuniu /usr/local/casino_niuniu/bin/casino_niuniu ADD ./templates /usr/loca/lcasino_niuniu/bin/templates ADD ./public /usr/local/casin…

IntelliJ Idea 2017 免费激活方法

见:https://www.cnblogs.com/suiyueqiannian/p/6754091.html 1. 到网站 http://idea.lanyus.com/ 获取注册码。 2.填入下面的license server: http://intellij.mandroid.cn/   http://idea.imsxm.com/   http://idea.iteblog.com/key.php 以上方法验证均可以

P3193 [HNOI2008]GT考试

传送门 容易看出是道DP 考虑一位一位填数字 设 f [ i ] [ j ] 表示填到第 i 位,在不吉利串上匹配到第 j 位时不出现不吉利数字的方案数 设 g [ i ] [ j ] 表示不吉利串匹配到第 i 位,再添加一个数字,使串匹配到第 j 位的方案数 那么方程显然为…

LeetCode刷题攻略

目录 一、LeetCode简介 二、刷leetcode的主要目的 三、常用的数据结构 四、常用的算法思想 五、选择算法题 1、刷题选择 2、刷题方法 方法一:顺序法 方法二:标签法 方法三:随机法 方法四:必杀法 六、刷题攻略 TIP 1&…

SQLserver数据库反编译生成Hibernate实体类和映射文件

一、建立项目和sqlserver数据库 eclipse,我使用的版本是neon3 二、Data Source Explorer 选择OK 在data source Explorer的Database Connections 选择New 填写好General的连接信息 新建New Driver Definition 填写完选择OK 选择刚才的Drivers Test Connetion测试 N…

最受欢迎的5大Linux发行版

摘要:要统计有多少人在使用那款Linux发行版几乎是不可能的事情,但我们可以使用一些在线分析工具来大概地看看哪些Linux发行版更受欢迎。 Google Trends的数据显示,Ubuntu用户正在流向Mint,但依然在各方面都比其它Linux发行版更有优…

C#动态操作DataTable(新增行、列、查询行、列等)

public void CreateTable(){//创建表DataTable dt new DataTable();//1、添加列dt.Columns.Add("Name", typeof(string)); //数据类型为 文本//2、通过列架构添加列DataColumn age new DataColumn("Age", typeof(Int32)); //数据类型为 整形DataColumn…

使用IntelliJ IDEA 配置Maven(入门)

前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家。点击跳转到教程。 1. 下载Maven 官方地址:http://maven.apache.org/download.cgi 解压并新建一个本地仓库文件夹 2.配置本地仓库路径 3.配…

[算法]不使用*、/、+、-、%操作符求一个数的1/3

摘要:算法一直是程序员进阶的一道龙门,通常算法都是为了更高效地解决问题而创造的,但也有的只是出于学术性,并不在意其实际意义。这是近日在国外技术问答网站stackoverflow的一个热门问题,不知道你能给出几种解决方法&…

2022届互联网秋招备战

文章目录1、何为秋招?1.1应届生身份1.2秋招、春招、校招1.3、社招、海投2.秋招信息如何获取?3、如何备战秋招?3.1、简历(ps做简历)3.2、笔试准备3.3、面试准备4、日常实习和暑假实习?1、春招≠暑期实习2、什…

php 两变量值互换 方法

//方法一:$a "abc";$b"def";$a $a^$b;$b $b^$a;$a $a^$b;//方法二:list($a, $b) array($b, $a);//方法三:$a $a . $b;$b strlen( $b );$b substr( $a,0,(strlen($a)- $b ));$a substr( $a, strlen($b));//方法四&…

MySQL5.7 group by新特性,报错1055

项目中本来使用的是mysql5.6进行开发,切换到5.7之后,突然发现原来的一些sql运行都报错,错误编码1055,错误信息和sql_mode中的“only_full_group_by“关,到网上看了原因,说是mysql5.7中only_full_group_by这…

IDEA中多行注释及取消注释快捷键

前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家。点击跳转到教程。 1、一次性添加多行注释的快捷键 首先选中要注释区域,然后 ctrl/ 这个是多行代码分行注释,每行一个注释…

为什么程序员不擅长估算时间?

摘要:时间估算是困难的,每一个程序员都有一个现实的估计区间,低于这个区间的估计意味着(构件,测试,检查代码的)时间开销被低估了,超过这个区间的估计意味着这个任务太大而很难预估。…

red hat enterprise linux 7关闭防火墙的方法

2019独角兽企业重金招聘Python工程师标准>>> red hat enterprise linux 7发布后,发现防火墙也变了,如何关闭防火墙呢,下面是方法 1.查看firewall的状态 [rootsztech7 ~]# systemctl status firewalld firewalld.service - firewal…

IOS —— 网络那些事(上) - http协议

作为一名并不太合格的程序员,今天要分享学习的成果,竟然讲的是网络相关HTTP协议的事情。(也算是复习了) 乍看HTTP协议的内容着实是十分复杂的,涉及到十分多互联网"底层"框架的东西。今天就先撇开这部分详细内…

【最新版】Java速成路线(急于找工作!)

文章目录计算机网络分层结构TCP/UDPHTTP/HTTPS状态码Cookie 和 SessionURI和URL操作系统线程和进程数据结构和算法数据结构算法设计模式(23种)单例工厂代理适配器观察者模板实操工具Git/SVNMaven/GradleLinux基本操作NginxELKpostmanJAVA基础语言基础JVM…

Java Web Start实例

前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家。点击跳转到教程。 JWS让用户可以下载服务器端的Java Application到本机运行,并且没有安装、配置等繁琐的操作JWS的运行原理:浏览器…

老派程序员——徒手实现伟大成就

摘要:本文介绍了三位非常著名的程序员:Ken Thompson,Joe Armstrong 和 Jamie Zawinski,他们是如何发明一门新语言,他们开发软件时会像我们一样使用当今流行的开发工具吗?当读Peter Seibel的精彩著作《编程人生:15位软件…