当前位置: 首页 > news >正文

微信小商店怎么分销辽阳seo

微信小商店怎么分销,辽阳seo,ui设计师需要掌握的技能,网站建设项目流程MyBatis-Plus 是基于 MyBatis 的增强工具#xff0c;为简化 MyBatis 的开发提供了诸多功能扩展。它的目标是减少重复代码、提高开发效率#xff0c;提供了 CRUD#xff08;Create, Read, Update, Delete#xff09;操作的简化方法以及多种实用插件。以下是 MyBatis-Plus 的…MyBatis-Plus 是基于 MyBatis 的增强工具为简化 MyBatis 的开发提供了诸多功能扩展。它的目标是减少重复代码、提高开发效率提供了 CRUDCreate, Read, Update, Delete操作的简化方法以及多种实用插件。以下是 MyBatis-Plus 的核心插件及其使用介绍 1. 分页插件PaginationInterceptor 分页是开发中常见的需求MyBatis-Plus 提供了简单易用的分页插件。 配置分页插件 在 Spring Boot 项目中配置分页插件很简单 import com.baomidou.mybatisplus.extension.plugins.PaginationInterceptor; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration;Configuration public class MyBatisPlusConfig {Beanpublic PaginationInterceptor paginationInterceptor() {return new PaginationInterceptor();} }分页查询示例 // 使用Page对象进行分页查询 PageUser page new Page(1, 10); // 第1页每页10条数据 IPageUser userPage userMapper.selectPage(page, null);selectPage方法通过 Page 对象自动封装了分页的参数。 2. 乐观锁插件OptimisticLockerInterceptor 乐观锁用于在更新数据时避免脏数据的出现MyBatis-Plus 支持乐观锁插件它主要通过版本号 version 来控制。 配置乐观锁插件 import com.baomidou.mybatisplus.extension.plugins.OptimisticLockerInterceptor; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration;Configuration public class MyBatisPlusConfig {Beanpublic OptimisticLockerInterceptor optimisticLockerInterceptor() {return new OptimisticLockerInterceptor();} }使用乐观锁 在实体类中增加 Version 注解标记乐观锁字段通常是 version 字段。 import com.baomidou.mybatisplus.annotation.Version; import lombok.Data;Data public class User {private Long id;private String name;Versionprivate Integer version; // 版本号 }更新时自动处理版本号 // 假设当前version为1 User user userMapper.selectById(1L); user.setName(New Name); userMapper.updateById(user); // 执行后version会自动更新MyBatis-Plus 会在更新时自动检查 version如果 version 不匹配则更新失败。 3. 逻辑删除插件LogicDelete 逻辑删除是一种常见的数据处理方式MyBatis-Plus 支持通过逻辑删除插件将删除操作转换为更新操作使数据不会真正从数据库中删除。 配置逻辑删除插件 MyBatis-Plus 默认已经支持逻辑删除无需额外插件配置。只需要在实体类中配置 TableLogic 注解。 使用逻辑删除 import com.baomidou.mybatisplus.annotation.TableLogic; import lombok.Data;Data public class User {private Long id;private String name;TableLogicprivate Integer deleted; // 逻辑删除字段1表示已删除0表示未删除 }调用逻辑删除 // 调用逻辑删除 userMapper.deleteById(1L); // 实际上是更新deleted字段为1而不是物理删除4. 自动填充插件MetaObjectHandler 自动填充插件用于在插入或更新数据时自动设置一些特定字段的值如创建时间、更新时间。 实现自动填充功能 首先需要自定义一个类实现 MetaObjectHandler 接口定义填充逻辑。 import com.baomidou.mybatisplus.core.handlers.MetaObjectHandler; import org.apache.ibatis.reflection.MetaObject; import org.springframework.stereotype.Component;import java.time.LocalDateTime;Component public class MyMetaObjectHandler implements MetaObjectHandler {Overridepublic void insertFill(MetaObject metaObject) {// 插入时自动填充字段this.strictInsertFill(metaObject, createTime, LocalDateTime.class, LocalDateTime.now());this.strictInsertFill(metaObject, updateTime, LocalDateTime.class, LocalDateTime.now());}Overridepublic void updateFill(MetaObject metaObject) {// 更新时自动填充字段this.strictUpdateFill(metaObject, updateTime, LocalDateTime.class, LocalDateTime.now());} }实体类中配置自动填充字段 import com.baomidou.mybatisplus.annotation.FieldFill; import com.baomidou.mybatisplus.annotation.TableField; import lombok.Data;import java.time.LocalDateTime;Data public class User {private Long id;private String name;TableField(fill FieldFill.INSERT)private LocalDateTime createTime; // 插入时自动填充TableField(fill FieldFill.INSERT_UPDATE)private LocalDateTime updateTime; // 插入和更新时自动填充 }5. SQL 性能分析插件SqlExplainInterceptor 为了提高开发效率和排查 SQL 问题MyBatis-Plus 提供了 SQL 性能分析插件可以在开发环境中输出执行的 SQL 及其消耗时间。 配置 SQL 性能分析插件 import com.baomidou.mybatisplus.extension.plugins.SqlExplainInterceptor; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration;Configuration public class MyBatisPlusConfig {Beanpublic SqlExplainInterceptor sqlExplainInterceptor() {return new SqlExplainInterceptor();} }该插件主要用于开发环境不建议在生产环境中使用。 6. 防止全表更新与删除插件BlockAttackInterceptor MyBatis-Plus 提供了防止全表更新或删除的插件防止误操作导致整个表的数据被更新或删除。 配置防止全表更新与删除插件 import com.baomidou.mybatisplus.extension.plugins.BlockAttackInterceptor; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration;Configuration public class MyBatisPlusConfig {Beanpublic BlockAttackInterceptor blockAttackInterceptor() {return new BlockAttackInterceptor();} }启用后当执行 update(null) 或 delete(null)即没有 where 条件时会抛出异常。 7. 多租户插件TenantLineInnerInterceptor 多租户插件允许你在多租户环境中为每个 SQL 自动添加租户 ID以实现数据隔离。 配置多租户插件 import com.baomidou.mybatisplus.extension.plugins.inner.TenantLineInnerInterceptor; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration;Configuration public class MyBatisPlusConfig {Beanpublic TenantLineInnerInterceptor tenantLineInnerInterceptor() {return new TenantLineInnerInterceptor(new TenantLineHandler() {Overridepublic Expression getTenantId() {// 实现返回当前租户 ID 的逻辑return new LongValue(1L); // 例如租户 ID 为1}Overridepublic boolean ignoreTable(String tableName) {// 可以指定某些表不进行多租户处理return user.equals(tableName);}});} }通过这些插件MyBatis-Plus 可以显著简化开发过程减少重复代码提高效率同时保障安全性和性能。如果需要使用更多插件或自定义功能MyBatis-Plus 还提供了丰富的扩展接口供开发者使用。
http://www.hkea.cn/news/14267001/

相关文章:

  • 微官网和移动网站区别吗网站建设预算表制作
  • 校园网网站建设费用网站开发排期表
  • 在哪个网站申请建设资质桂林漓江20元背面图
  • 建设项目环评在什么网站公示wordpress 进去管理
  • 哈尔滨网站建设制作价格wordpress是干啥的
  • 裁剪图网站搭建企业资料网站
  • 精品网站建设费用 要上磐石网络wordpress 自动推送
  • 安庆网站建设工作室微信头像定制软件
  • 济南网站制作策划对象存储oss做视频网站
  • 上海移动网站建设灰产项目网
  • 手机网站域名哪里注册时间学做缝纫的网站
  • 网站说服力十大营销策略
  • 国外做项目的网站推广技术
  • 网站添加支付功能十大手游平台app排行榜
  • 在iis上部署的网站本机无法浏览解决方法建设网站是什么职位
  • 网站审核要多久如何制作学校网站
  • 网站建设的大概费用wordpress自带搜索
  • 济南 网站优化做导航网站用多大的空间
  • 长沙网站开发微联讯点官网wordpress tag优化
  • 网站需要条件aspnet网站开发
  • 网站构建的一般流程是什么调查问卷wordpress
  • 广州专业的网站建设公司企业网站seo最好方法
  • 佛山外贸网站建设网站建设云服务
  • 彩票网站 在哪里做个人做医疗类网站违法
  • 电商网站对比表wordpress检测手机端
  • 《网站推广策划》免费甜点网站模板下载
  • 百度云注册域名可以做网站明码用凡科做网站需要花钱吗
  • 网站推广的方式有哪几种长沙 外贸网站建设公司排名
  • 在线做海报的网站用wordpress做app
  • 建设网站主题自助建站系统加盟