SpringBoot 整合Mybatis3.x註解開發

1. 使用starter

2. 加入依賴(可以使用 https://start.spring.io/ 下載)

<!-- starter -->
<dependency>
	<groupId>org.mybatis.spring.boot</groupId>
	<artifactId>mybatis-spring-boot-starter</artifactId>
	<version>1.3.1</version>
</dependency>

<!-- MySQL的JDBC驅動包 -->
<dependency>
	<groupId>mysql</groupId>
	<artifactId>mysql-connector-java</artifactId>
	<scope>runtime</scope>
</dependency>

<!-- 引入第三方數據源 -->
<dependency>
	<groupId>com.alibaba</groupId>
	<artifactId>druid</artifactId>
	<version>1.1.6</version>
</dependency>

3. 加入配置文件

# 可以自動識別
# spring.datasource.driver-class-name=com.mysql.jdbc.Driver
spring.datasource.url=jdbc:mysql://localhost:3306/movie?useUnicode=true&characterEncoding=utf-8&useSSL=false
spring.datasource.username=root
spring.datasource.password=password
# 如果不適用默認的數據源(com.zaxxer.hikari.HikariDataSource)
spring.datasource.type=com.alibaba.druid.pool.DruidDataSource

4. 啓動類增加mapper掃描

@MapperScan("com.shadowolf.base_project.mapper")

5. 開發mapper

參考語法

  • 例子

    package com.shadowolf.base_project.mapper;
    
    import com.shadowolf.base_project.domain.User;
    import org.apache.ibatis.annotations.*;
    
    import java.util.List;
    
    public interface UserMapper {
    
        @Insert("INSERT INTO user(name, phone, create_time, age) VALUES(#{name}, #{phone}, #{createTime}, #{age})")
        // 保存對象,獲取數據庫自增id
        @Options(useGeneratedKeys = true, keyProperty = "id", keyColumn = "id")
        int insert(User user);
    
        @Select("SELECT * FROM user")
        @Results({
                @Result(column = "create_time", property = "createTime")
        })
        List<User> getAll();
    
        @Select("SELECT * FROM user WHERE id = #{id}")
        @Results({
                @Result(column = "create_time", property = "createTime")
        })
        User findById(Long id);
    
        @Update("UPDATE user SET name = #{name} where id = #{id}")
        void update(User user);
    
        @Delete("DELETE FROM user WHERE id = #{id}")
        void delete(Long id);
    
    }
    

6. 相關資料

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章