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

云南建投第十建设有限公司网站深圳市南山区住房和建设局

云南建投第十建设有限公司网站,深圳市南山区住房和建设局,微网站建设图片,汽车网站建设工作室文章目录 1. 引言2. 项目搭建与依赖配置2.1 添加MyBatis Plus依赖2.2 配置数据源与MyBatis Plus 3. 实现基本CRUD功能3.1 创建实体类3.2 创建Mapper接口3.3 实现Service层3.4 控制器实现 4. 高级功能实现4.1 自动填充功能4.2 乐观锁功能4.3 逻辑删除功能 5. 拓展#xff1a;My… 文章目录 1. 引言2. 项目搭建与依赖配置2.1 添加MyBatis Plus依赖2.2 配置数据源与MyBatis Plus 3. 实现基本CRUD功能3.1 创建实体类3.2 创建Mapper接口3.3 实现Service层3.4 控制器实现 4. 高级功能实现4.1 自动填充功能4.2 乐观锁功能4.3 逻辑删除功能 5. 拓展MyBatis Plus的其他功能5.1 条件构造器5.2 分页查询5.3 性能分析 6. 总结 欢迎来到SpringBoot框架学习专栏~ ☆* o(≧▽≦)o *☆嗨~我是IT·陈寒✨博客主页IT·陈寒的博客该系列文章专栏SpringBoot其他专栏Java学习路线 Java面试技巧 Java实战项目 AIGC人工智能 数据结构学习文章作者技术和水平有限如果文中出现错误希望大家能指正 欢迎大家关注 ❤️ 1. 引言 Spring Boot是一款用于快速构建Spring应用程序的框架而MyBatis Plus是MyBatis的增强工具提供了许多方便实用的功能包括基本CRUD操作、自动填充、乐观锁、逻辑删除等。本文将详细介绍如何在Spring Boot项目中整合MyBatis Plus并展示其基本CRUD功能以及高级功能的实现方式。 2. 项目搭建与依赖配置 首先确保你已经搭建好了Spring Boot项目。接下来我们需要添加MyBatis Plus的依赖。 2.1 添加MyBatis Plus依赖 在pom.xml文件中添加以下依赖 !-- MyBatis Plus -- dependencygroupIdcom.baomidou/groupIdartifactIdmybatis-plus-boot-starter/artifactIdversion3.4.3/version /dependency2.2 配置数据源与MyBatis Plus 在application.properties或application.yml中配置数据库连接信息和MyBatis Plus的相关配置 spring:datasource:driver-class-name: com.mysql.cj.jdbc.Driverurl: jdbc:mysql://localhost:3306/testdb?useUnicodetruecharacterEncodingutf-8serverTimezoneUTCusername: your_usernamepassword: your_passwordmybatis-plus:mapper-locations: classpath:mapper/**/*.xmlglobal-config:db-config:id-type: autoconfiguration:map-underscore-to-camel-case: true以上配置中mapper-locations指定了MyBatis Plus的XML映射文件路径map-underscore-to-camel-case表示数据库字段采用下划线命名而Java实体类采用驼峰命名。 3. 实现基本CRUD功能 3.1 创建实体类 假设我们有一个实体类User对应数据库中的user表 import com.baomidou.mybatisplus.annotation.*; import lombok.Data;import java.util.Date;Data TableName(user) public class User {TableId(type IdType.AUTO)private Long id;private String username;private String password;private Integer age;TableField(fill FieldFill.INSERT)private Date createTime;TableField(fill FieldFill.INSERT_UPDATE)private Date updateTime;TableLogicprivate Integer deleted; }在上述实体类中使用了TableName注解指定了对应的数据库表名TableId表示主键TableField用于自动填充TableLogic表示逻辑删除字段。 3.2 创建Mapper接口 import com.baomidou.mybatisplus.core.mapper.BaseMapper; import org.apache.ibatis.annotations.Mapper;Mapper public interface UserMapper extends BaseMapperUser { }MyBatis Plus提供了BaseMapper接口通过继承该接口即可获得常见的CRUD功能无需手动编写SQL。 3.3 实现Service层 import com.baomidou.mybatisplus.extension.service.IService;public interface UserService extends IServiceUser { }创建一个UserService接口继承自IService该接口提供了常用的Service层方法。 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import org.springframework.stereotype.Service;Service public class UserServiceImpl extends ServiceImplUserMapper, User implements UserService { }创建UserServiceImpl类实现UserService接口并继承自ServiceImpl实现了其中的方法。 3.4 控制器实现 import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*;import java.util.List;RestController RequestMapping(/user) public class UserController {Autowiredprivate UserService userService;GetMapping(/{id})public User getUser(PathVariable Long id) {return userService.getById(id);}GetMapping(/list)public ListUser listUsers() {return userService.list();}PostMappingpublic void addUser(RequestBody User user) {userService.save(user);}PutMappingpublic void updateUser(RequestBody User user) {userService.updateById(user);}DeleteMapping(/{id})public void deleteUser(PathVariable Long id) {userService.removeById(id);} }以上代码中通过注入UserService实现了基本的CRUD操作的接口。 4. 高级功能实现 4.1 自动填充功能 MyBatis Plus提供了自动填充功能通过TableField注解的fill属性来指定填充的时机常用的值有FieldFill.INSERT和FieldFill.INSERT_UPDATE。 TableField(fill FieldFill.INSERT) private Date createTime;TableField(fill FieldFill.INSERT_UPDATE) private Date updateTime;上述代码中createTime字段在插入时自动填充updateTime字段在插入和更新时自动填充。 4.2 乐观锁功能 MyBatis Plus支持乐观锁的实现通过Version注解在实体类的版本字段上添加乐观锁。 Version private Integer version;在更新时MyBatis Plus会自动检测版本字段如果版本号不匹配则更新失败。 4.3 逻辑删除功能 MyBatis Plus提供了逻辑删除的功能通过TableLogic注解在实体类的逻辑删除字段上添加逻辑删除标记。 TableLogic private Integer deleted;在进行逻辑删除操作时MyBatis Plus会更新这个字段的值而不是物理删除记录。 5. 拓展MyBatis Plus的其他功能 除了上述介绍的功能外MyBatis Plus还提供了许多其他强大的功能如条件构造器、分页查询、性能分析、多租户支持等。以下简单介绍一些常用的功能 5.1 条件构造器 MyBatis Plus的条件构造器可以轻松构建复杂的查询条件 LambdaQueryWrapperUser wrapper Wrappers.UserlambdaQuery().eq(User::getUsername, admin).like(User::getPassword, pass); ListUser userList userService.list(wrapper);5.2 分页查询 MyBatis Plus支持简单的分页查询 IPageUser page new Page(1, 10); IPageUser userPage userService.page(page, null); ListUser userList userPage.getRecords();5.3 性能分析 MyBatis Plus提供了性能分析插件可以方便地查看SQL执行情况 # application.yml mybatis-plus:configuration:log-impl: org.apache.ibatis.logging.stdout.StdOutImpl通过配置log-impl属性可以将SQL输出到控制台方便调试与优化。 6. 总结 通过本文的介绍我们学习了如何在Spring Boot项目中整合MyBatis Plus并实现了基本的CRUD功能以及高级功能如自动填充、乐观锁、逻辑删除等。MyBatis Plus的强大功能极大地简化了数据库操作提高了开发效率。在实际项目中根据具体需求我们可以更深入地了解MyBatis Plus提供的各种功能以更好地应对复杂的业务场景。希望通过本文的学习读者能够更加熟练地使用Spring Boot和MyBatis Plus进行项目开发。 结尾 ❤️ 感谢您的支持和鼓励 您可能感兴趣的内容 【Java面试技巧】Java面试八股文 - 掌握面试必备知识目录篇【Java学习路线】2023年完整版Java学习路线图【AIGC人工智能】Chat GPT是什么初学者怎么使用Chat GPT需要注意些什么【Java实战项目】SpringBootSSM实战打造高效便捷的企业级Java外卖订购系统【数据结构学习】从零起步学习数据结构的完整路径
http://www.dnsts.com.cn/news/112281.html

相关文章:

  • SEO网站公司做面食网站
  • 用织梦后台修改网站logo汕头app制作
  • 创网站需要什么企业注册阿里账号网站建设
  • 常州网站建设推广平台网页版微信二维码失效怎么恢复
  • 邗江区做网站为什么上传网站模板网站上没有文字和图片
  • 个人网站 平台长沙高端网站建设品牌
  • 南宁会制作网站的技术人员企业线上培训平台有哪些
  • 自己做网站主机怎样做互联网推广
  • 高端网站建设加盟视频格式转换网页版
  • 资兴做网站公司为知笔记写wordpress
  • 贵州住房和城乡建设厅网站php怎么网站开发
  • 企业微信公众号怎么开通seo整站优化哪家专业
  • 怎样分析网站做seo成免费crm软件排名
  • 免费网站建设培训免费网络推广100种方法
  • 某绿色园林企业网站源码湖南关键词优化品牌推荐
  • 正规的app网站开发hao123从上网官网
  • 阿里云服务器上做网站亚马逊aws在线观看
  • 大航母网站建设服务百度关键词排名突然没了
  • 做外贸网站违法吗网站建设服务费的摊销期限
  • 潍坊做网站优化郑州三牛网站建设
  • 做支付行业招代理一般上什么网站山东潍坊新闻
  • 怎样建设学校网站首页滨海网站建设找哪家好
  • 网站的按钮怎么做 视频东营网站制作方案
  • 网站建设目标是wordpress编辑颜色
  • 杭州网站建设技术网站改不了分类
  • 欢迎访问中国建设银行网站个人客户江苏网站建设基本流程
  • 广州网站建设与实验做网站的素材
  • 淘宝客网站免费建设seo视频
  • 为什么建设的网站有时候访问慢动漫设计与制作属于计算机类吗
  • 网站建设开发语wordpress增加分享