如何操作Mybatis/Mybatis-Plus

发布时间:2021-10-12 11:40:39 作者:iii
来源:亿速云 阅读:212
# 如何操作Mybatis/Mybatis-Plus

## 一、Mybatis基础操作

### 1. 环境配置
```xml
<!-- pom.xml依赖 -->
<dependency>
    <groupId>org.mybatis</groupId>
    <artifactId>mybatis</artifactId>
    <version>3.5.6</version>
</dependency>

2. 核心配置

<!-- mybatis-config.xml -->
<configuration>
    <environments default="development">
        <environment id="development">
            <transactionManager type="JDBC"/>
            <dataSource type="POOLED">
                <!-- 数据库连接配置 -->
            </dataSource>
        </environment>
    </environments>
    <mappers>
        <mapper resource="mapper/UserMapper.xml"/>
    </mappers>
</configuration>

3. 基础CRUD

// 接口定义
public interface UserMapper {
    @Select("SELECT * FROM user WHERE id = #{id}")
    User selectById(int id);
    
    @Insert("INSERT INTO user(name) VALUES(#{name})")
    int insert(User user);
}

二、Mybatis-Plus进阶操作

1. 快速入门

<!-- 引入Mybatis-Plus -->
<dependency>
    <groupId>com.baomidou</groupId>
    <artifactId>mybatis-plus-boot-starter</artifactId>
    <version>3.5.3</version>
</dependency>

2. 实体类映射

@Data
@TableName("sys_user") // 指定表名
public class User {
    @TableId(type = IdType.AUTO) // 主键策略
    private Long id;
    private String username;
}

3. 通用Service

// 继承IService接口
public interface UserService extends IService<User> {}

@Service
public class UserServiceImpl extends ServiceImpl<UserMapper, User> 
    implements UserService {}

4. 条件构造器

// QueryWrapper示例
QueryWrapper<User> wrapper = new QueryWrapper<>();
wrapper.like("username", "admin")
       .between("age", 20, 30)
       .orderByDesc("create_time");

List<User> users = userMapper.selectList(wrapper);

三、常用特性对比

特性 Mybatis Mybatis-Plus
CRUD实现 需手动编写SQL 内置通用Mapper
分页 需插件 原生支持
代码生成 提供代码生成器
乐观锁 需手动实现 @Version注解支持

四、最佳实践建议

  1. 简单项目推荐使用Mybatis-Plus
  2. 复杂SQL建议在XML中编写
  3. 使用LambdaQueryWrapper避免字段硬编码
  4. 生产环境建议关闭性能分析插件

提示:Mybatis-Plus是对Mybatis的增强而非替代,二者可混合使用 “`

推荐阅读:
  1. mybatis插件如何在IDEA中使用
  2. SpringBoot如何整合Mybatis并使用通用mapper和PageHelper进行分页

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

mybatis mybatis-plus

上一篇:Istio1.6中二进制编译和本地运行是怎样的

下一篇:OpenSSL如何实现PKI加密解密

相关阅读

您好,登录后才能下订单哦!

密码登录
登录注册
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》