人人开源(后台代码、前端项目、代码自动生成)_liangjiayy的博客-程序员秘密

技术标签: github  git  

后台代码

git clone 到本地

  • git命令克隆到本地
git clone https://gitee.com/renrenio/renren-fast.git
  • 删除.git文件夹,拖入到自己的项目,作为一个模块
  • 打开该模块,复制sql建表语句
    在这里插入图片描述

创建数据库

  • sqlyog中建数据库,例如:admin,并运行上面复制的语句

配置项目

  • 项目中需要改变的东西
  1. 查看当前使用的环境
    在这里插入图片描述

  2. 修改对应配置文件,修改四个位置
    在这里插入图片描述

测试

  • 启动项目
  • 如果main报红
    先点击右上角的这个在这里插入图片描述
    添加sdk
    在这里插入图片描述

前端项目

git clone到本地

  • git克隆
git clone https://gitee.com/renrenio/renren-fast-vue.git
  • 删除.git文件夹,拖入到vscode

下载node.js

  1. 网址:http://nodejs.cn/
  2. 除了安装目录,其他直接下一步

npm:类似maven,包管理工具,自动下载一些依赖

  1. cmd中输入node -v可查看版本
  2. 国内镜像,cmd输入:
npm config set registry https://registry.npm.taobao.org

下载组件

  • vscode中进入前端项目,下载组件:
npm install

在这里插入图片描述

无法识别npm命令的解决

  • 解决上述问题:
    win + s,搜索powershell,以管理员省份打开,cd进入到项目目录,安装
    在这里插入图片描述

运行结果

  • 运行
npm run dev

附录1:不想每次登录都填写用户名密码?

  • 在这个位置给它赋初始值:
    在这里插入图片描述

附录2:不想每次输入验证码验证?

  • 前端去掉验证码校验
    在这里插入图片描述
  • 后端去掉验证码校验
    在这里插入图片描述
  • 最终效果:每次只用点登录

在这里插入图片描述

附录3:想要局域网的其他电脑也能访问到当前项目?

  1. 打开电脑8001端口的防火墙
  2. 修改host在这里插入图片描述
  3. 把localhost修改为你的ip地址,IP地址可通过命令行输入ipconfig查看 在这里插入图片描述

附录4:没有权限又不想授权?

  • 授权位置始终返回true
    在这里插入图片描述

跳过严格的编译检查

  • 没有错误也提示?
    在这里插入图片描述
  • 关闭检查:
    在这里插入图片描述

代码自动生成

git clone项目

  • 克隆到本地
git clone https://gitee.com/renrenio/renren-generator.git

修改数据库信息

在这里插入图片描述

修改代码生成器

第一次使用

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

第二次使用(相同项目不同模块)

  • 对于其他需要自动生成代码的模块,只需修改如下内容:
    在这里插入图片描述
    在这里插入图片描述

修改controller配置

在这里插入图片描述

  • 删除如下内容
    在这里插入图片描述
  • 注释如下内容(不止两个)
    在这里插入图片描述

可视化操作

  • 浏览器访问,以生成zip文件
    http://localhost:81/
    在这里插入图片描述
  • 用zip文件中的main替换自己项目的mian

案例

1. common模块:

  1. pom文件导入如下依赖
        <dependency>
            <groupId>com.baomidou</groupId>
            <artifactId>mybatis-plus-boot-starter</artifactId>
            <version>3.5.1</version>
        </dependency>

        <dependency>
            <groupId>org.projectlombok</groupId>
            <artifactId>lombok</artifactId>
        </dependency>
        
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter</artifactId>
        </dependency>

        <dependency>
            <groupId>commons-lang</groupId>
            <artifactId>commons-lang</artifactId>
            <version>2.6</version>
        </dependency>
        
        <dependency>
            <groupId>org.apache.httpcomponents</groupId>
            <artifactId>httpcore</artifactId>
            <version>4.4.15</version>
        </dependency>
        
        <dependency>
            <groupId>mysql</groupId>
            <artifactId>mysql-connector-java</artifactId>
        </dependency>

  1. 新建包com.ljy.common.utils
    在这里插入图片描述
  2. 把renren-fast的下面的文件复制到该目录
    在这里插入图片描述
  3. 新建exception包,把renren-fast中的如下文件复制过来

在这里插入图片描述

  1. 新建xss包,把renre-fast的下面文件复制过来
    在这里插入图片描述

  2. 新建validator包,把renren-fast如下内容复制过来
    在这里插入图片描述

2. 其他模块

  1. 引入公共模块
  2. 配置文件:
spring:
  datasource:
    driverClassName: com.mysql.jdbc.Driver
    url: jdbc:mysql://ip:端口/数据库?useUnicode=true&characterEncoding=UTF-8&useSSL=false&serverTimezone=Asia/Shanghai
    username: root
    password: root
mybatis-plus:
  mapper-locations: classpath:/mapper/**/*.xml
  global-config:
    db-config:
      id-type: auto #主键自增
  1. 测试crud(略)

使用

新建自己的目录、菜单

创建菜单目录

  • 启动renren-fast的前台和后台项目
  • 访问http://localhost:8001/
  • 新增 —— 目录 ——
  • 新增 —— 菜单 —— 设置上级菜单为刚刚创建的目录 —— 菜单路由写uri ——

规范

  • 规范:
    • 路径的/会被替换为-,页面文件放在/views/modules/下
    • 路由:/product/category对应的页面文件应该放在/views/modules/product/category.vue里,对应访问路径是:/product-category

树形组件

  • 使用element组件的 Tree树形控件

  • 替换其中的data数据,改为在后台获取

  • 写获取后台数据的方法(可参照当前项目其他页面的写法),并将该方法写在生命周期函数内

将请求转发给网关

  • 修改static/config/index.js中的baseUrl,让其发请求给网关(gateway)
    window.SITE_CONFIG['baseUrl'] = 'http://localhost:88/api';

  • renren-fast加入注册中心:

  1. bootstrap.yml
spring:
  application:
    name: renren-fast
  cloud:
    nacos:
      discovery:
        server-addr: 127.0.0.1:8848
  1. mian
    @EnableDiscoveryClient
  • gateway模块新建路由规则
    • 路径改写:filters:
    spring:
      cloud:
        gateway:
          routes:
            - id: renren_fast
            uri: lb://renren-fast
            predicates:
              - Path=/api/**
            filters:
              # 路径改写,/api/**   ->   /renren-fast/**
              - RewritePath=/api(?<segment>/?.*), /renren-fast/$\{
          segment}
    

跨域问题

是什么
  • cors,跨域问题,如图,控制台打印如下内容:
    在这里插入图片描述
    • 什么是跨域在这里插入图片描述
    • 跨域流程 在这里插入图片描述
可行的解决方案
  • 解决-1:
    在这里插入图片描述
  • 解决-2
    在这里插入图片描述
最终解决
  • 在网关模块加入允许跨域配置
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import org.springframework.web.cors.CorsConfiguration;
import org.springframework.web.cors.reactive.CorsWebFilter;
import org.springframework.web.cors.reactive.UrlBasedCorsConfigurationSource;

@Configuration
public class CorsConfig{
    

    @Bean
    public CorsWebFilter corsConfiguration() {
    
        UrlBasedCorsConfigurationSource configSource = new UrlBasedCorsConfigurationSource();

        CorsConfiguration config = new CorsConfiguration();
        config.addAllowedHeader("*");
        config.addAllowedMethod("*");
        config.addAllowedOrigin("*");
        config.setAllowCredentials(true);

        configSource.registerCorsConfiguration("/**",config);
        
        return new CorsWebFilter(configSource);
    }
}
  • 观察到renren-fast后台有跨域配置,注释掉renren-fast模块中的该部分内容
    在这里插入图片描述

如果不注释掉该部分,则有如下报错:
在这里插入图片描述

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/m0_55155505/article/details/123038261

智能推荐

惯性导航原理之姿态算法-四元数&欧拉角&等效转动矢量_Lynn_lurk的博客-程序员秘密

四元数乘积的三种表达形式,并推导其矢量形式  四元数和欧拉角之间的表达式  等效转动矢量的另外表达形式 捷联导航系统中姿态算法的发展方向和现状。欧拉角法:         欧拉角法 (又称三参数法)是欧拉在1776 年提出来的,其原理是动坐标系  相对

KL-Divergence,三元组损失_silhouette10的博客-程序员秘密

KL Divergence:https://zhuanlan.zhihu.com/p/95687720三元组损失:https://blog.csdn.net/zenglaoshi/article/details/106928204

编程珠玑笔记1_secretx的博客-程序员秘密

一个文件里有1千万(10000000)个7位的整数(小于1千万),给大约1M内存让排序位图(bitmap),长度10000000的bit数组a初始化为0,当数字x出现,a[x]=1,然后依次输出标志位为1的下标号。10000000bit == 1250000byte == 1220K == 1.19M。如果严格1M做成双通道程序,第一次标记前500万输出,第二次标记后500万输

rviz学习笔记(一)——Markers: Sending Basic Shapes (C++) 发送基础形状_KEVINZHAO124517的博客-程序员秘密

一、创建一个包——进行marker练习1、创建ROS工作空间和包mkdir -p ~/catkin_ws/src #创建工作空间目录#创建ROS数据包catkin_create_pkg using_markers roscpp visualization_msgs #打开包根目录,进行编译cd ~/catkin_wscatkin_m...

Delphi编写的GDI+界面类_weixin_33901641的博客-程序员秘密

使用Delphi2010开发的一个GDI+界面类,可以做出非常漂亮的界面。unitxDUISkinPanel;interfaceusesWindows, Messages, SysUtils, Graphics, Classes, stdctrls, Buttons, GDIPlusUse, GdiPlus,GdiPlusHelpers, Co...

thinkphp下的Webshell&&php过D盾一句话_weixin_30881367的博客-程序员秘密

环境:Thinkphp 5.0.15PHP version:7.0.12WAF: D盾 ,安全狗Thinkphp 采用 MVC 模式 核心:模块 -&gt; 控制器 –&gt; 方法思路:利用已经有的think 类包库 去做一些事情利用已有的功能,顺便对D盾 绕过方法:Payload1:http://127.0.0.1/tp5.0...

随便推点

免费分享全国省级与市级行政区划啦!_水经注GIS的博客-程序员秘密

01概述为了更好地贯彻“为您提供丰富的地图数据与专业的GIS服务”之宗旨,前段时间我们已经通过百度网盘为大家分享了全国高清卫星影像【点击了解】和全国30米高程DEM数据【点击了解】。现在,我们再将全国省级与市级行政区划免费分享给大家,我们已经将该数据进行过拓扑处理,省级行政区划与市级行政区划的边界点可以完全重合。如果你需要该数据,只需要通过关注微信公众号“水经注GIS”,然后回复“免费数据”之后,联系我们工作人员就可免费领取高程数据的百度网盘下载地址,如下图所示。公众号后台回复.

类中static变量和成员变量_类中的static变量_Drdajie的博客-程序员秘密

类中static变量和普通变量的区别(一便解释了摘要中的内容)​  要理解标题,我们首先来看下static变量本身的特殊之处,即它存储在全局数据区。在类中的static变量也是如此。C++的内存分布代码区 :函数体的二进制代码全局数据区:全局变量和static变量堆 :动态内存分配 -&amp;gt; 通过new栈 ...

黑猫带你学eMMC协议第17篇:超详细的eMMC HS200 & HS400讲解_emmc hs400_黑猫学长呀的博客-程序员秘密

1 前言1.1 声明本文依据eMMC JEDEC5.1及个人工作经验整理而成,如有错误请留言。本文结合eMMC JEDEC5.1协议手册查看效果更佳。1.2 内容提要本文大约6000字,主要内容有:1.什么是emmc hs200/hs400?2.什么是tuning?tuning的过程又是什么?3.如何设置才能让emmc进入hs200 mode?4.如何设置才能让emmc进入hs400 mode?5.emmc关于HS200/HS400内部结构框图对比。6.部分个人相关经验总结。

java后台过滤字符串中HTML标签和空格_后端要过滤哪些字符串_小萝卜5264的博客-程序员秘密

  过滤文章中的html标签,实现的方式都是将html标签替换掉,都是使用正则表达式 下面列出几种 经常过滤的字符String content = &quot;文章内容&quot;;// 过滤文章内容中的htmlcontent =content.replaceAll(&quot;&amp;lt;/?[^&amp;lt;]+&amp;gt;&quot;,&quot;&quot;);// 去除字符串中的空格 回车 换行符 制表符 等content = content.replaceA...

(14)写一个函数,将两个字符串连接_写一个函数,将两个字符串连接_yuyuzhang1的博客-程序员秘密

写一个函数,将两个字符串连接程序分析:用户在控制台输出第一个字符串后按下回车键继续输出下一个字符串。需要加上getchar()读取换行符,若不进行处理程序会将换行符也连接到新的字符串中。#include&lt;stdio.h&gt;#include&lt;math.h&gt;#include&lt;stdlib.h&gt;int main(){ void z(char a[], char b[], int n, int m); char a[6]; char b[3]; int i; p

linux中用tomcat部署项目,查看日志相关命令_dayiwan的博客-程序员秘密

使用xshell连接上linux后,在进行以下操作前要先进入tomcat的bin目录,使用cd /usr/app/bin命令,要想查看tomcat日志,先要进入logs目录,使用命令cd /usr/app/logs命令。1.------查看tomcat是否启动            命令:netstat -anp|grep 9090            9090未tomcat的端口号,使用上面命

推荐文章

热门文章

相关标签