Jeecg
项目架构
项目本地运行
前端启动
环境要求: 版本要求Node 14.18+ / 16+ 版本以上,不再支持 Node 12 / 13 / 15
cd jeecgboot-vue3
pnpm install
pnpm build
pnpm run dev
// 前端访问地址
http://localhost:3100/
注:
官方说明 pnpm server 命令启动项目,但package.json 文件中根本没有server, 是一个坑
后端启动
删除微服务相关包,maven依赖爆红不影响基本运行;
修改application.yml 中的redis和mysql相关配置;
建议把测试相关代码也一起删除,不然有可能代码提交时过慢
导入sql文件,注意文件中的数据库名称
后端访问地址:http://localhost:8080/
读一行是一行
环境变量切换
<profiles>
<profile>
<id>dev</id>
<properties>
<profile.name>dev对应的变量值</profile.name>
</properties>
<activation>
<!-- 默认生效 -->
<activeByDefault>true</activeByDefault>
</activation>
</profile>
<profile>
<id>prod</id>
<properties>
<profile.name>prod对应的变量值</profile.name>
</properties>
</profile>
<profile>
<id>test</id>
<properties>
<profile.name>pro对应的变量值</profile.name>
</properties>
</profile>
</profiles>
前端请求url携带时间戳参数
1、防重复提交
2、防中间过程加密的破解
3、能避免浏览器对URL的缓存,会使每次请求的URL都不一样,便不会从缓存中读取数据。(但好像只有ie(具体版本不知)浏览器在不加时间戳的情况下,才会发生缓存)
新增模块
- 新增模块中引入父模块以及jeecg-boot-base-core依赖
- 在系统启动模块中引入新增模块依赖
- jeecg-boot-parent 模块中声明新增模块
- 新增模块的包名最好是org.jeecg开头
其他包名可能会因为启动类扫码不到而失效,本质就是该框架是半开源
代码生成
注意jeecg的代码层次结构
注意生成路径,jeecg在jar包中写死了
文件上传
前端配置:
TODO
后端配置:
后端关闭登录验证码
跨域问题
首先检查网络是否联通
其次检查是否协议有问题,例如http写成了https
检查是否开启了vpn
前端配置
后端配置
默认已经开启了跨域
数据字典
@Autowired
private ISysDictService sysDictService;
List<DictModel> dictItemsByCode = sysDictService.queryDictItemsByCode("system_module");
遇到的问题
ERROR org.quartz.impl.StdSchedulerFactory:1250 - Couldn't generate instance Id!
问题描述
解决方案
查看主机名
hostname
编辑hosts文件
vi /etc/hosts
将上面查询到的主机名添加到127.0.0.1 的后面