• mybatisplus入门


    搭建

    mybatisplus部分依赖

    1. <!-- MyBatisPlus -->
    2. <dependency>
    3. <groupId>com.baomidou</groupId>
    4. <artifactId>mybatis-plus-boot-starter</artifactId>
    5. <version>3.4.2</version>
    6. </dependency>
    7. <!--mysql-->
    8. <dependency>
    9. <groupId>com.mysql</groupId>
    10. <artifactId>mysql-connector-j</artifactId>
    11. <scope>runtime</scope>
    12. </dependency>

    pom.xml全部内容 

    1. <?xml version="1.0" encoding="UTF-8"?>
    2. <project xmlns="http://maven.apache.org/POM/4.0.0"
    3. xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    4. xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
    5. <modelVersion>4.0.0</modelVersion>
    6. <parent>
    7. <groupId>org.springframework.boot</groupId>
    8. <artifactId>spring-boot-starter-parent</artifactId>
    9. <version>2.7.8</version>
    10. <relativePath/>
    11. </parent>
    12. <groupId>jkw.life</groupId>
    13. <artifactId>mybatis-plus-demo1</artifactId>
    14. <version>0.0.1</version>
    15. <dependencies>
    16. <!-- MyBatisPlus -->
    17. <dependency>
    18. <groupId>com.baomidou</groupId>
    19. <artifactId>mybatis-plus-boot-starter</artifactId>
    20. <version>3.4.2</version>
    21. </dependency>
    22. <!--mysql-->
    23. <dependency>
    24. <groupId>com.mysql</groupId>
    25. <artifactId>mysql-connector-j</artifactId>
    26. <scope>runtime</scope>
    27. </dependency>
    28. <!--lombok-->
    29. <dependency>
    30. <groupId>org.projectlombok</groupId>
    31. <artifactId>lombok</artifactId>
    32. <optional>true</optional>
    33. </dependency>
    34. <!--springMVC-->
    35. <dependency>
    36. <groupId>org.springframework.boot</groupId>
    37. <artifactId>spring-boot-starter-web</artifactId>
    38. </dependency>
    39. <!--springBoot起步依赖-->
    40. <dependency>
    41. <groupId>org.springframework.boot</groupId>
    42. <artifactId>spring-boot-starter</artifactId>
    43. </dependency>
    44. <!--test-->
    45. <dependency>
    46. <groupId>org.springframework.boot</groupId>
    47. <artifactId>spring-boot-starter-test</artifactId>
    48. <scope>test</scope>
    49. </dependency>
    50. </dependencies>
    51. </project>

    创建数据库

     DROP TABLE IF EXISTS `user`;
    CREATE TABLE `user` (
      `userId` int(11) NOT NULL AUTO_INCREMENT,
      `username` varchar(255) DEFAULT NULL,
      `password` varchar(255) DEFAULT NULL,
      PRIMARY KEY (`userId`)
    ) ENGINE=InnoDB DEFAULT

     application.yml

    1. server:
    2. port: 8080
    3. spring:
    4. datasource:
    5. driver-class-name: com.mysql.cj.jdbc.Driver
    6. url: jdbc:mysql://localhost:3306/atest?serverTimezone=UTC&useUnicode=true&characterEncoding=utf-8
    7. username: root
    8. password: root
    9. #配置mybatis-plus(使用代码生成器时不要配置)
    10. mybatis-plus:
    11. global-config:
    12. db-config:
    13. # 设置实体类所对应的表的统一前缀
    14. # table-prefix: t_
    15. # 主键生成策略为自增(属性只用加上@TableId 即可)
    16. id-type: auto
    17. configuration:
    18. # 关闭列名自动驼峰命名规则映射(列名的_自动映射成驼峰)(本项目中实体类和数据库表的列名一致,
    19. map-underscore-to-camel-case: false
    20. log-impl: org.apache.ibatis.logging.stdout.StdOutImpl #开启sql日志
    21. # 日志格式
    22. logging:
    23. pattern:
    24. console: '%d{HH:mm:ss.SSS} %clr(%-5level) --- [%-15thread] %cyan(%-50logger{50}):%msg%n'

    编写启动类

    1. package jkw;
    2. import org.mybatis.spring.annotation.MapperScan;
    3. import org.springframework.boot.SpringApplication;
    4. import org.springframework.boot.autoconfigure.SpringBootApplication;
    5. /**
    6. * 启动类
    7. */
    8. @SpringBootApplication
    9. @MapperScan("jkw.mapper")
    10. public class Main {
    11. public static void main(String[] args) {
    12. SpringApplication.run(Main.class, args);
    13. }
    14. }

    编写实体类

    1. package jkw.pojo;
    2. import com.baomidou.mybatisplus.annotation.TableId;
    3. import lombok.Data;
    4. /**
    5. * 用户实体类
    6. */
    7. @Data
    8. public class User {
    9. @TableId
    10. private Integer userId;
    11. private String username;//用户名
    12. private String password;//密码
    13. }

    简单的CRUD

    mapper接口层

    1. package jkw.mapper;
    2. import com.baomidou.mybatisplus.core.mapper.BaseMapper;
    3. import jkw.pojo.User;
    4. public interface UserMapper extends BaseMapper {
    5. }

    service-增删改查

    1. package jkw.service;
    2. import jkw.mapper.UserMapper;
    3. import jkw.pojo.User;
    4. import org.springframework.beans.factory.annotation.Autowired;
    5. import org.springframework.stereotype.Service;
    6. @Service
    7. public class UserService {
    8. @Autowired
    9. private UserMapper userMapper;
    10. /**
    11. * 新增用户
    12. *
    13. * @param user
    14. */
    15. public void add(User user) {
    16. userMapper.insert(user);
    17. }
    18. /**
    19. * 修改用户
    20. *
    21. * @param user
    22. */
    23. public void update(User user) {
    24. userMapper.updateById(user);
    25. }
    26. /**
    27. * 删除用户
    28. *
    29. * @param id
    30. */
    31. public void delete(Integer id) {
    32. userMapper.deleteById(id);
    33. }
    34. /**
    35. * 查询用户
    36. *
    37. * @param id
    38. * @return
    39. */
    40. public User findById(Integer id) {
    41. return userMapper.selectById(id);
    42. }
    43. }

  • 相关阅读:
    k8s部署kafka集群
    C++内存管理
    汇编语言设计
    半导体初创企业中的RISC-V
    震撼消息!OpenAI考虑加入AI芯片制造联盟
    WGCNA分析教程五 | [更新版]
    计算机网络(自顶向下方法)学习笔记(第一章)
    frida学习
    ChatGPT AIGC 完成各省份销售动态可视化分析
    线段树上树剖再拿线段树维护:0914T4
  • 原文地址:https://blog.csdn.net/m0_63040701/article/details/131094343