若依框架二次开发——若依介绍、环境部署及更换项目包路径

文章目录

  • 一、若依介绍
    • 1、项目简介
    • 2、主要特性
    • 3、技术选型
    • 4、内置功能
    • 5、文件结构
    • 6、配置文件
    • 7、核心技术介绍
  • 二、环境部署
    • 1、准备工作
    • 2、运行系统
    • 3、必要配置
    • 4、部署系统
  • 三、更换项目包路径
    • 1、更换目录名称
    • 2、更换顶级目录中的pom.xml
    • 3、更换项目所有包名称
    • 4、修改application.yml文件
    • 5、更换mapper文件的namespace包路径
    • 6、更换pom文件内容
    • 7、更换日志路径
    • 8、启动项目验证

一、若依介绍

1、项目简介

RuoYi是一款基于SpringBoot+Bootstrap的极速后台开发框架。
RuoYi 是一个 Java EE 企业级快速开发平台,基于经典技术组合(Spring Boot、Apache Shiro、MyBatis、Thymeleaf、Bootstrap),内置模块如:部门管理、角色用户、菜单及按钮授权、数据权限、系统参数、日志管理、通知公告等。在线定时任务配置;支持集群,支持多数据源,支持分布式事务。

2、主要特性

  • 完全响应式布局(支持电脑、平板、手机等所有主流设备)
  • 强大的一键生成功能(包括控制器、模型、视图、菜单等)
  • 支持多数据源,简单配置即可实现切换。
  • 支持按钮及数据权限,可自定义部门数据权限。
  • 对常用js插件进行二次封装,使js代码变得简洁,更加易维护
  • 完善的XSS防范及脚本过滤,彻底杜绝XSS攻击
  • Maven多项目依赖,模块及插件分项目,尽量松耦合,方便模块升级、增减模块。
  • 国际化支持,服务端及客户端支持
  • 完善的日志记录体系简单注解即可实现
  • 支持服务监控&#
### 若依框架微服务架构下实现定时任务 在若依框架的微服务架构环境中,可以通过集成Spring Boot的`@Scheduled`注解来轻松创建和管理定时任务。为了更好地适应分布式环境中的需求,推荐采用更专业的调度解决方案如XXL-JOB。 #### 使用内置 `@Scheduled` 对于简单的场景,在业务逻辑层可以直接利用Spring自带的任务调度机制: ```java import org.springframework.scheduling.annotation.Scheduled; import org.springframework.stereotype.Component; @Component public class SimpleTask { // 每隔5秒执行一次简单打印操作 @Scheduled(fixedRate = 5000) public void reportCurrentTime() { System.out.println("每隔五秒输出时间:" + new java.util.Date()); } } ``` 此方式适合单体应用或小型集群内部署[^1]。 #### 集成 XXL-JOB 进行分布式的任务调度 当面对复杂的生产环境时,则建议引入专门用于处理大规模并发作业的第三方库——例如XXL-JOB。这不仅能够提供更高的稳定性和灵活性,还能方便地与其他微服务体系组件协作工作。 ##### 步骤一:添加依赖项至pom.xml 文件 确保项目的Maven构建文件中包含了必要的客户端SDK支持: ```xml <dependency> <groupId>com.xuxueli</groupId> <artifactId>xxl-job-core</artifactId> <version>${xxl.job.version}</version> </dependency> ``` ##### 步骤二:配置application.yml 中的相关参数 设置连接到中央控制器所需的信息以及日志记录路径等选项: ```yaml xxl: job: admin: addresses: http://localhost:8080/xxl-job-admin executor: appname: demo-executor ip: port: 9999 logpath: /data/applogs/xxl-job/jobhandler logfile-filename-pattern: xxl-job-demo-%d{yyyy-MM-dd}.log logfile-max-history-days: 30 ``` ##### 步骤三:编写具体任务处理器并注册为Bean实例 定义具体的业务逻辑函数,并通过继承特定接口的方式将其暴露给外部调用者: ```java import com.xxl.job.core.handler.IJobHandler; import com.xxl.job.core.log.XXL_JOB_FILE_LOG_PATH; import com.xxl.job.core.biz.model.ReturnT; import org.slf4j.Logger; import org.slf4j.LoggerFactory; public class MySimpleJob extends IJobHandler { private static final Logger logger = LoggerFactory.getLogger(MySimpleJob.class); @Override public ReturnT<String> execute(String param) throws Exception { try { // 执行实际的工作负载... Thread.sleep(20); String resultMessage = "成功运行了一个简单的测试任务"; logger.info(resultMessage); return SUCCESS; } catch (Exception e) { logger.error(e.getMessage(), e); return FAIL; } } } ``` 最后一步是在启动类上启用相应的特性开关以便自动扫描这些自定义组件: ```java @SpringBootApplication @EnableScheduling public class Application { public static void main(String[] args) { SpringApplication.run(Application.class, args); } @Bean public MySimpleJob mySimpleJob(){ return new MySimpleJob(); } } ``` 这样就完成了基于若依框架搭建起一套完整的微服务化定时任务体系结构[^3]。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

bjzhang75

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值