溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

如何操作Mybatis/Mybatis-Plus

發布時間:2021-10-12 11:40:39 來源:億速云 閱讀:212 作者:iii 欄目:編程語言
# 如何操作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的增強而非替代,二者可混合使用 “`

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女