2022最新IntellJ IDEA的zheng开发部署文档
友情提示:本文黑夜模式下阅读效果更佳,请点击右侧浮窗的太阳符号
前景提示
- zheng是国内一款很好的开源项目,非常的便于学习,而且它是开源免费的,但是,它的开发部署文档实在是没法按照那个文档,快速高效的在本地搭建一套可以运行的项目,对于学习开发和使用实在是一大难题,为此本博主耗时一个多星期,特意编辑了这套高效,快捷合理的部署文档,希望看到的人可以快速搭建项目,快速学习,文档不全,不合理,不可复用性一直是我国开发界的弊病,看看邻国印度,就是文档写的好,都享誉硅谷了,希望我国的开发不要仅仅是技术好,文档的状况也要提上日程,毕竟可以一直让更多人开发学习的才是最好的开源软件,才能更好的做大做强.
| 日期 | 修改人 | 修改内容 |
|---|---|---|
| 2022年4月13日 | 北极的大企鹅 | 九.启动配置 |
| 2022年4月15日 | 北极的大企鹅 | 环境配置 |
| 2022年4月17日 | 北极的大企鹅 | 环境配置 |
| 2022年4月19日 | 北极的大企鹅 | 环境配置 |
| 2022年4月20日 | 北极的大企鹅 | TreeInfotip添加 |
一、环境整合
构建工具(参考工具部署方式)
| 软件名称 | 版本 | 相关文章推荐 |
|---|---|---|
| Git | 13.5.0 | https://www.cnblogs.com/liuyangfirst/p/15996063.html |
| JDK | 1.8 | https://www.cnblogs.com/liuyangfirst/p/14334385.html |
| Maven | 3.6.0 | https://www.cnblogs.com/liuyangfirst/p/15981202.html |
| MySQL | 5.6.10 | https://www.cnblogs.com/liuyangfirst/p/15997667.html |
| Redis | 5.0.10 | https://www.cnblogs.com/liuyangfirst/p/15998117.html |
| ActiveMQ | 5.16.4 | https://www.cnblogs.com/liuyangfirst/p/16180817.html |
| Nginx | 1.18.0 | https://www.cnblogs.com/liuyangfirst/p/13438745.html |
| Zookeeper | 3.8.0 | https://www.cnblogs.com/liuyangfirst/p/16181427.html |
| Tomcat | 10.0.1 | https://www.cnblogs.com/liuyangfirst/p/16181735.html |
| Dubbo-admin | 2.5.4 | https://www.cnblogs.com/liuyangfirst/p/16183180.html |
| DBeaver | 7.3.0 | https://www.cnblogs.com/liuyangfirst/p/15997753.html |
| IntelliJ IDEA | 尽量使用比较新的版本 | https://www.jetbrains.com/idea/ |
| RedisDesktopManager | 0.9.3.817 | https://www.cnblogs.com/liuyangfirst/p/15998132.html |
二、git 导入编译器
如图: git ->clone


三、模块描述浅析
- 文件路径:zheng/pom.ml
| 模块名称 | 描述 | |
|---|---|---|
| zheng-admin | 后台管理模板 | |
| zheng-upms | 用户权限管理系统,框架怎么运行的仔细看看,这个是核心重点 | |
| zheng-common | SSM框架公共模块,公共的都放这里 | |
| zheng-api | API接口总线系统 | |
| zheng-message | 实时通知系统 | |
| zheng-ucenter | 用户系统(包括第三方登录) | |
| zheng-oss | 对象存储系统 | |
| zheng-cms | 内容管理系统 | |
| zheng-pay | 支付系统 | |
| zheng-shop | 电子商务系统(这个还有待开发) | |
| zheng-wechat | 微信系统 | |
| zheng-demo | 示例模块(包含一些示例代码等) | |
| project-datamodel | 数据库脚本 | |
| project-tools | 项目工具脚本 |
- 可以看到项目所以模块的位置

四、配置文档
1.总配置
| 模块 | 路径 | 文件名称 | |
|---|---|---|---|
| 开发模式配置 | zheng-cms/zheng-cms-admin | src/main/resources/profiles | dev.properties(默认) |
| 生产模式配置 | zheng-cms/zheng-cms-admin | src/main/resources/profiles | prod.properties |
| 测试模式配置 | zheng-cms/zheng-cms-admin | src/main/resources/profiles | test.properties |
- 配置简单说明

2.数据库配置
- (1).jdbc.properties配置
| 模块 | 路径 | 文件名称 | |
|---|---|---|---|
| zheng-cms-admin | src\main\resources\ | jdbc.properties | |
| zheng-cms-rpc-service | src\main\resources\ | jdbc.properties | |
| zheng-pay-rpc-service | src\main\resources\ | jdbc.properties | |
| zheng-ucenter-rpc-service | src\main\resources\ | jdbc.properties | |
| zheng-upms-rpc-service | src\main\resources\ | jdbc.properties | |
| zheng-ucenter-web | src\main\resources\ | jdbc.properties | |
| zheng-upms-server | src\main\resources\ | jdbc.properties | |
| zheng-wechat-mp | src\main\resources\ | jdbc.properties |
jdbc是这样的文档在总配置dev.properties中修改,就会映射到这里

(2).redis.properties配置
| 模块 | 路径 | 文件名称 | |
|---|---|---|---|
| zheng-cms-admin | src\main\resources\ | redis.properties | |
| zheng-cms-rpc-service | src\main\resources\ | redis.properties | |
| zheng-cms-web | src\main\resources\ | redis.properties | |
| zheng-oss-admin | src\main\resources\ | redis.properties | |
| zheng-pay-rpc-service | src\main\resources\ | redis.properties | |
| zheng-ucenter-rpc-service | src\main\resources\ | redis.properties | |
| zheng-upms-rpc-service | src\main\resources\ | redis.properties | |
| zheng-ucenter-web | src\main\resources\ | redis.properties | |
| zheng-upms-server | src\main\resources\ | redis.properties | |
| zheng-wechat-mp | src\main\resources\ | redis.properties |
- jdbc是这样的文档在总配置dev.properties中修改,就会映射到这里

3.密码设置
- 由于采用的是AES加密配置,所以每个密码要从明文,转化为AES加密模式.
| 模块 | 路径 | 文件名称 | |
|---|---|---|---|
| zheng-common | src/main/java/com/zheng/common/util | AESUtil.java |
- 在这个main中点击run就会在控制界面生成密码的加密模式.


4.配置建议
- 初期刚上手不建议修改基础配置,毕竟改错了出了bug想调试和修复还需要大量时间,所以本次以默认为主.
- 默认mysql,需要建立数据库zheng(下文详谈),账户/密码 : root/123456
- 默认redis,需要配置好环境,端口/密码: 6379/无(那个密码位置的加密码默认是没有密码)
五、在IDEA中执行MySQL的脚本
- 在本地DBeaver建立数据库zheng,(不建立,以下步骤操作不了)



- 右侧栏,找到DATABASE,选择加号,找到MYSQL

- 填写配置信息,测试连接,测试连接的时候可能要下载相关的jar包.

- 找到需要运行的脚本,然后选择run

- 填写数据库信息,选择右侧加号,导入刚刚配置的数据库.

- 然后点击run,就会成功运行脚本.

- 打开DBeaver检查数据执行成功.

六、启动后台项目
1.编译器配置
保证IDE的maven配置为本地的maven,JDK为1.8以上的在项目对应上,还有编码格式没有问题(这些基础问题没有问题)
- File -> setting

- File -> Project Struct

- File->Settings->Editor ->File Encodings

- File->Settings->Build -> Compiler -> Java Compiler

- File -> setting
2.maven加载依赖包
- 点击maven这里的刷新

点击项目的这三项加载(三个同时选中,然后点击run的绿色三角形).

成功后如图(没有报错表示成功,如果有错误,请自行检查自己的maven配置)(友情提示:包多加载比较慢,请耐心等待,同时注意是否有报错信息)

小建议,建议关闭测试如图点击这里,有的测试会报错.

5.修改host,做个本地映射
- 进入本地C盘,这个路径下(默认的),C:\Windows\System32\drivers\etc

- 右键选择文本方式打开

- 将如下代码贴到文件中保存.
## zheng项目使用
127.0.0.1 ui.zhangshuzheng.cn
127.0.0.1 upms.zhangshuzheng.cn
127.0.0.1 cms.zhangshuzheng.cn
127.0.0.1 pay.zhangshuzheng.cn
127.0.0.1 ucenter.zhangshuzheng.cn
127.0.0.1 wechat.zhangshuzheng.cn
127.0.0.1 api.zhangshuzheng.cn
127.0.0.1 oss.zhangshuzheng.cn
127.0.0.1 config.zhangshuzheng.cn
127.0.0.1 zkserver
127.0.0.1 rdserver
127.0.0.1 dbserver
127.0.0.1 mqserver

5.启动redis技巧
启动redis,这里写了这样的脚本,然后把脚本的快捷方式发送到了桌面

找到本地安装redis的路径

新建文件redis_start.bat,写入如下脚本

cd D:\ProgramFiles\Redis
redis-server.exe redis.windows.conf
pause
选择redis_start.bat右键,发送快捷方式到桌面,就生成了快捷启动方式

双击redis_start.bat启动redis

- 全部做好快捷键

6.启动activemq
- 双击建立的快捷键,启动后如图所以表示没问题.

7.启动zookeeper
- 双击建立的快捷键,启动后如图所以表示没问题.

8.配置tomcat
(1).监控器dubbo-admin打成war包.
- 官网打包怎么搞,不求人,不花钱,很随意,企鹅教你.
| 名称 | 推荐 | |
|---|---|---|
| Dubbo-Admin | https://www.cnblogs.com/liuyangfirst/p/16183180.html |
(2).放入tomcat中,注意文件夹

备份ROOT,复制它粘贴到其他文件内.
右键war包解压


- 复制文件内的文件,替换ROOT下的文件


- 访问配置好的tomcat,http://localhost:8080/,如下表示成功.账户/密码 :guest/guest



9.后台启动
(1).rpc服务提供者启动
- 项目的启动位置

右键选择run执行

如图所示为启动成功

(2).用户权限系统及SSO服务端[端口:1111]
项目的启动位置,右键选择run执行

如图所示为启动成功

七、IDEA前端配置
1、修改nginx配置
- 复制项目自带脚本

- 修改脚本内容

2、修改nginx内的配置文件

备份配置文件,以免修改错误导致nginx无法启动

修改内容

- 完整文档
#user nobody;
worker_processes 1;
error_log D:/software/nginx-1.20.1/logs/error.log;
#error_log logs/error.log notice;
#error_log logs/error.log info;
pid D:/software/nginx-1.20.1/logs/nginx.pid;
events {
worker_connections 1024;
}
http {
include mime.types;
default_type application/octet-stream;
log_format main '$remote_addr - $remote_user [$time_local] "$request" '
'$status $body_bytes_sent "$http_referer" '
'"$http_user_agent" "$http_x_forwarded_for"';
access_log D:/software/nginx-1.20.1/logs/access.log main;
sendfile on;
keepalive_timeout 65;
server {
listen 80;
server_name localhost;
#charset koi8-r;
#access_log logs/host.access.log main;
location / {
root html;
index index.html index.htm;
}
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root html;
}
}
## 启动zheng
server {
listen 1000;
server_name localhost;
error_page 500 502 503 504 /50x.html;
location / {
#root后面内容需要修改为本机的zheng-ui项目的绝对路径位置
root D:/workspace____java/zheng/zheng-ui/;
index index.html index.htm;
add_header Access-Control-Allow-Origin *;
}
location = /50x.html {
root html;
}
}
}
3、启动nginx
- 双击项目脚本,弹出如下

- 选择1启动.

4.访问项目前端浏览器,地址: http://upms.zhangshuzheng.cn:1111/

八、登陆
- 登陆: 账户/密码 :admin/123456

- 进入主页

- swagger-UI接口文档访问(全网首家书写,使用标注出处)
访问地址 : http://upms.zhangshuzheng.cn:1111/swagger-ui.html


九、本地调试好使版
上传到本博主gitee,仅供学习:https://gitee.com/mrliuNumberOne/local_zheng.git
其他模块启动
| 模块 | 路径 | 文件名称 | |
|---|---|---|---|
| zheng-cms | zheng-cms/zheng-cms-rpc-service/src/main/java/com/zheng/cms/rpc | ZhengCmsRpcServiceApplication.java | |
| zheng-ucenter-web | zheng-ucenter/zheng-ucenter-rpc-service/src/main/java/com/zheng/ucenter/rpc | ZhengUcenterRpcServiceApplication.java |
zheng-cms

zheng-ucenter-web

- 推荐插件,便于标识和学习代码.
| 名称 | 推荐 | |
|---|---|---|
| TreeInfotip | https://www.cnblogs.com/liuyangfirst/p/16182964.html |
结语
呕心沥血,爆肝一个星期(需要写配置环境的文档,还要反复测试,以便为各位看官老爷提供最好的精品文章),希望点赞,收藏,评论,转发,您的支持就是本博主前进的动力.
2022最新IntellJ IDEA的zheng开发部署文档的更多相关文章
- 2022最新IntellJ IDEA诺依开发部署文档
前景提示 若伊是国内一款很好的开源项目,非常的便于学习,而且它是开源免费的,但是,它的开发部署文档实在是没法按照那个文档,快速高效的在本地搭建一套可以运行的项目,对于学习开发和使用实在是一大难题,为此 ...
- 2022最新IntellJ IDEA的mall开发部署文档
目录 版本说明 一.概述 二.基本构建 三.Git 导入编译器 四.模块描述浅析 五.配置文档 application.yml修改,涉及模块 application-dev.yml修改,涉及模块 ge ...
- CDH简易离线部署文档
CDH 离线简易部署文档 文档说明 本文为开发部署文档,生产环境需做相应调整. 以下操作尽量在root用户下操作,避免权限问题. 目录 文档说明 2 文档修改历史记录 2 目录 3 ...
- hadoop2.6.0汇总:新增功能最新编译 32位、64位安装、源码包、API下载及部署文档
相关内容: hadoop2.5.2汇总:新增功能最新编译 32位.64位安装.源码包.API.eclipse插件下载Hadoop2.5 Eclipse插件制作.连接集群视频.及hadoop-eclip ...
- yapi部署文档
windows 下 yapi部署文档 安装nodejs 安装mongodb 安装yapi 介绍 随着 web 技术的发展,前后端分离成为越来越多互联网公司构建应用的方式.前后端分离的优势是一套 Api ...
- jcseg-1.8.7版本发布 - 多配置适应+完整开发帮助文档
jcseg是使用java开发的一款开源中文分词器, 并且提供了最新版本的lucene和solr分词接口. jcseg 1.8.7版本发布了: 1. 更改了内部设计, 加入JcsegTaskConfig ...
- Flink 部署文档
Flink 部署文档 1 先决条件 2 下载 Flink 二进制文件 3 配置 Flink 3.1 flink-conf.yaml 3.2 slaves 4 将配置好的 Flink 分发到其他节点 5 ...
- Redis集群部署文档(Ubuntu15.10系统)
Redis集群部署文档(Ubuntu15.10系统)(要让集群正常工作至少需要3个主节点,在这里我们要创建6个redis节点,其中三个为主节点,三个为从节点,对应的redis节点的ip和端口对应关系如 ...
- Enterprise Solution 2.2 开发帮助文档集合
首先是一个PPT文档,从宏观层面展示Enterprise Soltion的几个功能特色. Enterprise Solution解决方案安装与配置 将源代码解决方案和演示程序在电脑中进行配置,作为了解 ...
随机推荐
- Pytorch自动混合精度(AMP)介绍与使用
背景: pytorch从1.6版本开始,已经内置了torch.cuda.amp,采用自动混合精度训练就不需要加载第三方NVIDIA的apex库了.本文主要从三个方面来介绍AMP: 一.什么是AMP? ...
- jvm大局观之内存管理篇(二):当java中new一个对象,背后发生了什么
https://zhuanlan.zhihu.com/p/257863129?utm_source=ZHShareTargetIDMore 番茄番茄我是西瓜 那是我日夜思念深深爱着的人啊~ 已关注 ...
- elasticsearch 索引数据多了怎么办,如何调优,部署 ?
面试官:想了解大数据量的运维能力. 解答:索引数据的规划,应在前期做好规划,正所谓"设计先行,编码在后", 这样才能有效的避免突如其来的数据激增导致集群处理能力不足引发的线上客户 ...
- BeanFactory – BeanFactory 实现举例?
Bean 工厂是工厂模式的一个实现,提供了控制反转功能,用来把应用的配置和依赖从正真的应用代码中分离. 最常用的BeanFactory 实现是XmlBeanFactory 类.
- Spring框架中有哪些不同类型的事件?
Spring 提供了以下5种标准的事件: (1)上下文更新事件(ContextRefreshedEvent):在调用ConfigurableApplicationContext 接口中的refre ...
- 哪一个List实现了最快插入?
LinkedList和ArrayList是另个不同变量列表的实现.ArrayList的优势在于动态的增长数组,非常适合初始时总长度未知的情况下使用.LinkedList的优势在于在中间位置插入和删除操 ...
- Jedis 与 Redisson 对比有什么优缺点?
Jedis 是 Redis 的 Java 实现的客户端,其 API 提供了比较全面的 Redis 命令 的支持:Redisson 实现了分布式和可扩展的 Java 数据结构,和 Jedis 相比,功能 ...
- HTML 5中的输出元素是什么?
当你需要计算两个输入的结果并将结果放到一个标签里的时候,就需要输出元素了.比如你有两个文本框(参见下图),你想要让这些文本框数字相加,然后输出给标签. 下面就是如何使用HTML 5代码输出元素. &l ...
- AOP——基于AspectJ的注解来实现AOP操作
1.使用注解方式实现AOP操作 第一步:创建对象 <!-- 创建对象 --> <bean id="book" class="com.bjxb.aop.B ...
- java弹框
Java弹窗操作 1.任务简介 本博客介绍两种Java弹窗操作的方法,第一个种是通过弹出对话框显示用户输入的信息,第二种是通过用户输入数字的不同打开不同的程序. 2.弹出对话框的操作 1)任务内容编程 ...