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包中写死了

 

模糊查询

修改后端/jeecg-boot-base-common/src/main/java/org/jeecg/common/system/query/QueryGenerator.java,找到installMplus方法下述代码修改即可(取消相关注释)

	//根据参数值带什么关键字符串判断走什么类型的查询
	QueryRuleEnum rule = convert2Rule(value);
	value = replaceValue(rule,value);
	
// add -begin 添加判断若为字符串类型则设置为模糊查询
	if("class java.lang.String".equals(type)) {
		// 可以设置左右模糊或全模糊,因人而异
		rule = QueryRuleEnum.LIKE;
	}
// add -end 添加判断若为字符串类型则设置为模糊查询

	addEasyQuery(queryWrapper, name, rule, value);		

 

token失效时间

默认7天失效

 

文件上传

前端配置:

  TODO

后端配置:

  注:若是本地存储且容器部署,一定得记得将目录映射出来,不然重启容器会丢失数据

 

后端关闭登录验证码

 

跨域问题

首先检查网络是否联通

其次检查是否协议有问题,例如http写成了https

检查是否开启了vpn

前端配置

 

后端配置

默认已经开启了跨域

数据字典

@Autowired
private ISysDictService sysDictService;

List<DictModel> dictItemsByCode = sysDictService.queryDictItemsByCode("system_module");

 

Dict注解

注解适用情况:发现官方仅支持当Result的返回类型为IPage时才进行处理,并不适用于我们需要的Map、List、对象、Json类型。

 

 

 

遇到的问题

ERROR org.quartz.impl.StdSchedulerFactory:1250 - Couldn't generate instance Id!

问题描述

解决方案

查看主机名

hostname

编辑hosts文件

vi /etc/hosts

将上面查询到的主机名添加到127.0.0.1 的后面

posted @   先娶国王后取经  阅读(60)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 【译】Visual Studio 中新的强大生产力特性
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构
· AI与.NET技术实操系列(六):基于图像分类模型对图像进行分类
点击右上角即可分享
微信分享提示