1. 单机安装
基本环境
环境版本
- JDK: 1.8+ (小于11)
- Maven: 3.5+
- MySql: 5.7+
- Redis: 3.2 +
- Node Js: 10.0 +
- Npm: 5.6.0+
- Yarn: 1.21.1+
链接:https://pan.baidu.com/s/16z9qNtyk24bsrZxRFBHP2w 提取码:pagv
- node-v12.16.0-x64.msi
- yarn-1.21.1.msi
- ideaIU-2019.2.3.exe
- jdk-8u191-windows-x64.exe
- apache-maven-3.5.4.zip
- redis64-3.0.501
- mysql-5.7.26-winx64.zip
前端node yarn
安装node.js
- node的 npm必须要等到当前 package 安装完成之后,才能继续后面的安装。
- 而 Yarn 是同步执行所有任务,提高了性能
- pnpm由npm/yarn衍生而来,解决了npm/yarn内部潜在的bug,极大的优化了性能,扩展了使用场景。被誉为“最先进的包管理工具
# 出现相应npm版本即可
npm -v
# 出现相应node版本即可
node -v
# 全局安装yarn npm install yarn -g
npm i -g yarn
# 验证
yarn -v # 出现对应版本号即代表安装成功
# 下载依赖 npm install
yarn install
# 启动
yarn run serve
# 编译项目
yarn run build
# Lints and fixes files
yarn run lint
# package.json 可以看到 "serve": "npm run dev"
yarn dev #运行项目
#快速使用 镜像
npm i -g nrm
nrm ls
nrm use taobao
- 配置镜像
npm config set registry https://registry.npm.taobao.org --global
npm config set disturl https://npm.taobao.org/dist --global
yarn config set registry https://registry.npm.taobao.org --global
yarn config set disturl https://npm.taobao.org/dist --global
选中package.json
右键显示npm
命令
通过命令 yarn install
或者快捷 pre
下载依赖,点击serve
启动项目
修改路径
- 修改接口地址 .env.development
NODE_ENV=development
VUE_APP_API_BASE_URL=http://localhost:8080/jeecg-boot
后端启动
导入sql
-
jeecgboot-mysql-5.7.sql
-
2.4升级到2.4.2增量mysql.sql
右键执行类jeecg-module-system/jeecg-system-start/JeecgSystemApplication.java
启动项目
- application-dev.yml 检查 redis 和 mysql。
- redis 要提前启动
模块说明
后端
Application Jeecg-Boot is running! Access URLs:
Local: http://localhost:8080/jeecg-boot/
External: http://192.168.1.10:8080/jeecg-boot/
Swagger文档: http://192.168.1.10:8080/jeecg-boot/doc.html
后端的模块
Business Introduction Zone,意思是 业务介绍区
├─jeecg-boot-parent(父POM: 项目依赖、modules组织)
│ ├─jeecg-boot-base-core(共同的模块: 工具类、config、权限、查询过滤器、注解、接口等)
│ ├─jeecg-module-demo 示例代码
│ ├─jeecg-module-system System系统管理目录
│ │ ├─jeecg-system-biz System系统管理权限
│ │ ├─jeecg-system-start 单体启动项目(8080)
│ │ ├─jeecg-system-api System系统管理模块对外api
│ │ │ ├─jeecg-system-cloud-api System模块对外提供的微服务接口
│ │ │ ├─jeecg-system-local-api System模块对外提供的单体接口
│ ├─jeecg-server-cloud --微服务模块
├─jeecg-cloud-gateway --微服务网关模块(9999)
├─jeecg-cloud-nacos --Nacos服务模块(8848)
├─jeecg-system-cloud-start --System微服务启动项目(7001)
├─jeecg-demo-cloud-start --Demo微服务启动项目(7002)
├─jeecg-visual
├─jeecg-cloud-monitor --微服务监控模块 (9111)
├─jeecg-cloud-xxljob --微服务xxljob定时任务服务端 (9080)
├─jeecg-cloud-sentinel --sentinel服务端 (9000)
├─jeecg-cloud-test -- 微服务测试示例(各种例子)
├─jeecg-cloud-test-more -- 微服务测试示例(feign、熔断降级、xxljob、分布式锁)
├─jeecg-cloud-test-rabbitmq -- 微服务测试示例(rabbitmq)
├─jeecg-cloud-test-seata -- 微服务测试示例(seata分布式事务)
├─jeecg-cloud-test-shardingsphere -- 微服务测试示例(分库分表)
前端
admin/123456
App running at:
- Local: http://localhost:3000/
- Network: http://192.168.1.10:3000/
必须传递的 hearder
必须传递的hearder:
- 在网页上 看其他请求,可以看到
X-Access-Token: eyJ0eXAiOiJKV1QiLCJhbGciOiJ
- 可以在配置文件上,配置不拦截
shiro:
excludeUrls: /test/jeecgDemo/demo3,/category/**
2. 分布式安装
nacos配置启动
- jeecg.yaml
- jeecg-dev.yaml
- redis 和 mysql 要配置
- jeecg-gateway-router.json
微服务启动
- 打开,父pom的注解
- 这个应该不需要了吧
<!-- 需要微服务,请打开注释 -->
<module>jeecg-boot-starter</module>
<module>jeecg-cloud-module</module>
- 因为:3.4.4增加了一个配置文件 SpringCloud
<!-- SpringCloud运行环境 -->
<profile>
<id>SpringCloud</id>
<modules>
<!-- 微服务模块-->
<module>jeecg-server-cloud</module>
</modules>
</profile>
- 1.注释system项目的pom中demo的引入依赖,没有找到这个依赖
- 将 jeecg-boot-module-system/pom.xml 中的 demo 依赖注释掉 或者 删掉
<!--<dependency>
<groupId>org.jeecgframework.boot</groupId>
<artifactId>jeecg-boot-module-demo</artifactId>
<version>${jeecgboot.version}</version>
</dependency>-->
- 2.修改打包配置。没有找到这个东西
修改 jeecg-boot-module-system/pom.xml 文件中spring-boot-maven-plugin 打包插件configuration.skip=true
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
<configuration>
<!--微服务模式下修改为true,跳过此打包插件,否则微服务模块无法引用-->
<skip>true</skip>
</configuration>
</plugin>
</plugins>
</build>
- 启动system微服务 (jeecg-cloud-system-start)
找到jeecg-cloud-module/jeecg-cloud-system-start 下面的启动类 org.jeecg.JeecgSystemCloudApplication 右键运行启动。
读取网关的配置类型
- jeecg-gateway-dev.yaml
jeecg:
route:
config:
#type:database nacos yml 改为nacos
data-type: database
group: DEFAULT_GROUP
data-id: jeecg-gateway-router
Feign和网关配置
feign:
http://doc.jeecg.com/2159190
gateway网关配置:
http://doc.jeecg.com/2294757
- 注意网关 默认使用数据库配置,在 系统监控——网关路由 寻找
http://localhost:3100/monitor/route
限流
sentinel 项目配置
3. online报表
1、控件默认值
页面属性,控件默认值
- 注意 这是一个坑,最终前端 使用后 没有效果
#{sysUserName}
#{sysUserCode}
#{date}
在#{}
内可以使用的变量分别有:
-
sysUserId
:当前登录用户的ID -
sysUserCode
:当前登录用户的username -
sysUserName
:当前登录用户的真实姓名(realname) -
sysOrgCode
:当前登录用户的部门编号 -
date
:当前系统日期(例:2020-01-12) -
time
:当前系统时间(例:12:01:51) -
datetime
:当前系统日期时间(例:2020-01-12 12:01:51)
2、自定义树控件
-
页面属性——控件类型,选择 自定义树控件
-
校验字段——字典Table不变——字典Code填0——字典Text填,如下
#id 父ID 显示列 是否有子节点列
id,pid,name,has_child
字典 他表 报表使用
字典的输入位置
校验字段——> 字典code
- 如:性别列: 填入 code
- 页面属性 选择 下拉框
下拉框使用 他表实现
-
实际操作人,控件类型为:下拉搜索框
- 默认值#{sysUserCode},这种在 真实的前端不能用
-
字典Table 填入:sys_user
-
字典code填入:username
- 下拉框使用的值
-
字典text填入:realname
- 下拉框展示的值
Online报表的使用
个人简介 选择 Popup弹框,
- 字典Table 填入:report_user
- 字典code填入:username,sex,realname
- 是 报表的 列
- 字典text填入:content,sex,name
- 使用 当前设计表的列,会自动填入
SELECT
realname,
username,
sex,
birthday,
avatar,
phone,
email
FROM
sys_user