首页 > 其他分享 >ruoyi项目优化为本地项目

ruoyi项目优化为本地项目

时间:2024-12-31 10:53:04浏览次数:1  
标签:mybatisplus 项目 ruoyi baomidou 本地 import interceptor com

一、修改配置文件

在ruoyi-admin/src/main/resources目录

1、修改数据库连接

2、修改redis连接

3、修改项目端口及根路径

4、修改日志存放路径。

二、改造项目为mybatisplus

1、在ruoyi-common/pom.xml里添加mybatisplus依赖

<!-- mybatisPlus -->
<dependency>
    <groupId>com.baomidou</groupId>
    <artifactId>mybatis-plus-boot-starter</artifactId>
    <version>3.5.1</version>
</dependency>

2、注释src\main\java\com\ruoyi\framework\config\MyBatisConfig.java代码

3、在src\main\java\com\ruoyi\framework\config\创建MybatisPlusConfig.java文件

 1 package com.ruoyi.framework.config;
 2 
 3 import com.baomidou.mybatisplus.annotation.DbType;
 4 import com.baomidou.mybatisplus.extension.plugins.MybatisPlusInterceptor;
 5 import com.baomidou.mybatisplus.extension.plugins.inner.BlockAttackInnerInterceptor;
 6 import com.baomidou.mybatisplus.extension.plugins.inner.OptimisticLockerInnerInterceptor;
 7 import com.baomidou.mybatisplus.extension.plugins.inner.PaginationInnerInterceptor;
 8 import org.springframework.context.annotation.Bean;
 9 import org.springframework.context.annotation.Configuration;
10 import org.springframework.transaction.annotation.EnableTransactionManagement;
11 
12 /**
13  * @USER: pkuokuo
14  * @DATE: 2024/12/17 16:53
15  * @DESCRIPTION: TODO
16  */
17 @EnableTransactionManagement(proxyTargetClass = true)
18 @Configuration
19 public class MybatisPlusConfig {
20     @Bean
21     public MybatisPlusInterceptor mybatisPlusInterceptor()
22     {
23         MybatisPlusInterceptor interceptor = new MybatisPlusInterceptor();
24         // 分页插件
25         interceptor.addInnerInterceptor(paginationInnerInterceptor());
26         // 乐观锁插件
27         interceptor.addInnerInterceptor(optimisticLockerInnerInterceptor());
28         // 阻断插件
29         interceptor.addInnerInterceptor(blockAttackInnerInterceptor());
30         return interceptor;
31     }
32 
33     /**
34      * 分页插件,自动识别数据库类型 https://baomidou.com/guide/interceptor-pagination.html
35      */
36     public PaginationInnerInterceptor paginationInnerInterceptor()
37     {
38         PaginationInnerInterceptor paginationInnerInterceptor = new PaginationInnerInterceptor();
39         // 设置数据库类型为mysql
40         paginationInnerInterceptor.setDbType(DbType.MYSQL);
41         // 设置最大单页限制数量,默认 500 条,-1 不受限制
42         paginationInnerInterceptor.setMaxLimit(-1L);
43         return paginationInnerInterceptor;
44     }
45 
46     /**
47      * 乐观锁插件 https://baomidou.com/guide/interceptor-optimistic-locker.html
48      */
49     public OptimisticLockerInnerInterceptor optimisticLockerInnerInterceptor()
50     {
51         return new OptimisticLockerInnerInterceptor();
52     }
53 
54     /**
55      * 如果是对全表的删除或更新操作,就会终止该操作 https://baomidou.com/guide/interceptor-block-attack.html
56      */
57     public BlockAttackInnerInterceptor blockAttackInnerInterceptor()
58     {
59         return new BlockAttackInnerInterceptor();
60     }
61 }
View Code

4、修改ruoyi-admin/src/main/resources/application.yml中mybatisplus配置文件

# MyBatis配置
#mybatis:
#  # 搜索指定包别名
#  typeAliasesPackage: com.ruoyi.**.domain
#  # 配置mapper的扫描,找到所有的mapper.xml映射文件
#  mapperLocations: classpath*:mapper/**/*Mapper.xml
#  # 加载全局的配置文件
#  configLocation: classpath:mybatis/mybatis-config.xml

# MyBatis Plus配置
mybatis-plus:
  # 搜索指定包别名
  typeAliasesPackage: com.ruoyi.**.domain
  # 配置mapper的扫描,找到所有的mapper.xml映射文件
  mapperLocations: classpath*:mapper/**/*Mapper.xml
  # 加载全局的配置文件
  configLocation: classpath:mybatis/mybatis-config.xml

 

标签:mybatisplus,项目,ruoyi,baomidou,本地,import,interceptor,com
From: https://www.cnblogs.com/pengpengdeyuan/p/18643479

相关文章

  • C++项目链接C语言动态库
     有C++项目B,有C语言动态链接库A,需要在B程序中链接A库。 我们知道C++运行环境可以直接运行C语言程序,但因为C++编译时对方法名的解析不同,所以要在C++项目中运行C语言程序,关键问题是需要告诉C++编译器,按照C语言的规范来编译指定的C代码。上面所述的“指定的C代码”,包括C++项目中......
  • 使用Vue2写的项目如何升级为Vue3?需要考虑哪些因素?
    使用Vue2写的项目升级为Vue3是一个涉及多个步骤和考虑因素的过程。以下是一个清晰的升级指南,包括必要的步骤和需要考虑的因素:升级步骤备份项目:在开始升级之前,创建项目的完整备份,以防升级过程中出现问题。更新依赖:使用包管理器(如npm或yarn)更新Vue.js核心库到Vue3版本。同......
  • 你有在项目中使用过TypeScript吗?
    是的,我在前端开发项目中广泛使用过TypeScript。TypeScript是JavaScript的一个超集,添加了静态类型检查和基于类的面向对象编程等特性。这些特性使得开发大型、复杂的Web应用程序时,能够更容易地维护和扩展代码。以下是我使用TypeScript的一些经验和观点:类型安全:TypeScript通过静......
  • 【信息系统项目管理师】第14章:项目沟通管理-基础和过程 考点梳理
    更多内容请见:备考信息系统项目管理师-专栏介绍和目录文章目录14.1管理基础14.1.1沟通14.1.2沟通模型14.1.3沟通分类14.1.4沟通技巧14.1.5管理新实践14.2项目沟通管理过程14.2.1过程概述14.2.2裁剪考虑因素14.2.3敏捷与适应方法......
  • 【信息系统项目管理师】高分论文:论信息系统项目的沟通管理(信息管理服务一体化平台)
    更多内容请见:备考信息系统项目管理师-专栏介绍和目录文章目录论文一、事预则立,规划沟通管理二、提升支持,管理沟通三、观察偏差,监督沟通论文2022年2月,我公司承建某省退役军人信息管理服务一体化平台项目,由于本人具有较丰富的项目管理经验,同时也是一......
  • Java 项目、模块、包
    1.IntelliJIDEA项目结构工程是顶级结构单元,在一个工程下可以创建多个模块,不同模块之间存在依赖关系,一个模块可以创建多个包,一个包可以创建多个类project(工程)-->module(模块)-->package(包)-->class(类)1.1创建项目File-->New-->Project,创建一个名为Java_Proj......
  • 一起向未来的项目开发宣战吧!
    这个作业属于哪个课程首页-软件工程2024-福州大学-班级博客-博客园(cnblogs.com)这个作业要求在哪里软件工程2024秋——个人总结作业-作业-软件工程2024-班级博客-博客园这个作业的目标学期回顾与总结学号042201520一起向未来的项目开发......
  • Web3.0热门领域:NFT项目实战解析
    背景与概述Web3.0正在引领互联网的下一次革命,其中NFT(Non-FungibleToken)作为热门领域之一,以其独特的资产标识和不可替代性,在数字艺术品、游戏、音乐、票务等领域崭露头角。开发一个完整的NFT项目需要从智能合约设计入手,结合NFT项目开发的前端实现,以及利用Web3开发生态的......
  • 数据库_tinyDB-Python项目开发
    实现说明storage数据存储实现database&&table数据库和表的实现query查询规则的实现cache优化和提高数据库的查询和存储效率文件结构tinydb/database.pyclassTinyDB(TableBase):from.importJSONStoragefrom.storagesimportStoragef......
  • 火爆年终!微信红包封面项目揭秘,零门槛轻松实现日入破千!(附详细教程和渠道)
    大家好,我每天都会分享一个靠谱的副业机会,喜欢我的内容就关注我吧!今天要聊的是年底最赚钱的项目——微信红包封面。年底了,节日一个接一个,像元旦、春节、元宵节、情人节。节日一到,大家都爱发微信红包。现在大家在节日的时候,尤其是春节、情人节,发红包特别有仪式感,所以用个......