柚子快報(bào)邀請(qǐng)碼778899分享:詳解MyBatis之篇一
柚子快報(bào)邀請(qǐng)碼778899分享:詳解MyBatis之篇一
目錄
MyBatis
定義
使用MyBatis操作數(shù)據(jù)庫(kù)
創(chuàng)建項(xiàng)目
配置
演示
UserInfo.java
?UserInfoMapper
UserInfoMapperTest
數(shù)據(jù)準(zhǔn)備
自動(dòng)生成測(cè)試類(lèi)
運(yùn)行結(jié)果
MyBatis
定義
MyBatis 是一個(gè)優(yōu)秀的持久層框架,它支持定制化 SQL、存儲(chǔ)過(guò)程以及高級(jí)映射。MyBatis 避免了幾乎所有的 JDBC 代碼和手動(dòng)設(shè)置參數(shù)以及獲取結(jié)果集。MyBatis 可以使用簡(jiǎn)單的 XML 或注解用于配置和原始映射,將接口和 Java 的 POJOs (Plain Old Java Objects, 普通的 Java 對(duì)象)映射成數(shù)據(jù)庫(kù)中的記錄。
持久層:指的就是持久化操作的層, 通常指數(shù)據(jù)訪問(wèn)層(dao), 是?來(lái)操作數(shù)據(jù)庫(kù)的.
使用MyBatis操作數(shù)據(jù)庫(kù)
創(chuàng)建項(xiàng)目
注意引入下面的MyBatis Framework依賴(lài)?。?!
Mybatis 是?個(gè)持久層框架, 具體的數(shù)據(jù)存儲(chǔ)和數(shù)據(jù)操作還是在MySQL中操作的, 所以需要添加 MySQL驅(qū)動(dòng)。 項(xiàng)目創(chuàng)建好后,會(huì)自動(dòng)在pom.xml文件中導(dǎo)入MyBatis依賴(lài)和MySQL驅(qū)動(dòng)依賴(lài):
配置
Mybatis中要連接數(shù)據(jù)庫(kù),需要數(shù)據(jù)庫(kù)相關(guān)參數(shù)配置:
? MySQL驅(qū)動(dòng)類(lèi) ? 登錄名 ? 密碼 ? 數(shù)據(jù)庫(kù)連接字符串
如果是application.yml?件, 配置內(nèi)容如下:
# 數(shù)據(jù)庫(kù)連接配置
spring:
datasource:
url: jdbc:mysql://127.0.0.1:3306/mybatis_test?characterEncoding=utf8&useSSL=false
username: root
password: 你自己的密碼
driver-class-name: com.mysql.cj.jdbc.Driver
如果是application.properties?件, 配置內(nèi)容如下:
#驅(qū)動(dòng)類(lèi)名稱(chēng)
spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver
#數(shù)據(jù)庫(kù)連接的url
spring.datasource.url=jdbc:mysql://127.0.0.1:3306/mybatis_test?
characterEncoding=utf8&useSSL=false
#連接數(shù)據(jù)庫(kù)的??名
spring.datasource.username=root
#連接數(shù)據(jù)庫(kù)的密碼
spring.datasource.password=root
演示
UserInfo.java
import lombok.Data;
import java.util.Date;
@Data
public class UserInfo {
private Integer id;
private String username;
private String password;
private Integer age;
private Integer gender;
private String phone;
private Integer deleteFlag;
private Date createTime;
private Date updateTime;
}
?UserInfoMapper
import com.wmh.mybatisdemo.model.UserInfo;
import org.apache.ibatis.annotations.*;
import java.util.List;
@Mapper
public interface UserInfoMapper {
@Select("select * from userinfo")
List
}
UserInfoMapperTest
import org.junit.jupiter.api.Test;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.context.SpringBootTest;
import static org.junit.jupiter.api.Assertions.*;
@SpringBootTest
class UserInfoMapperTest {
@Autowired
private UserInfoMapper userInfoMapper;
@Test
void getUserInfoAll() {
System.out.println(userInfoMapper.getUserInfoAll());
}
}
數(shù)據(jù)準(zhǔn)備
自動(dòng)生成測(cè)試類(lèi)
運(yùn)行結(jié)果
柚子快報(bào)邀請(qǐng)碼778899分享:詳解MyBatis之篇一
本文內(nèi)容根據(jù)網(wǎng)絡(luò)資料整理,出于傳遞更多信息之目的,不代表金鑰匙跨境贊同其觀點(diǎn)和立場(chǎng)。
轉(zhuǎn)載請(qǐng)注明,如有侵權(quán),聯(lián)系刪除。