基于XML的MyBatis的環(huán)境搭建過程詳解(IDEA)
基于XML的MyBatis的環(huán)境搭建(IDEA) 主要步驟可概括為創(chuàng)建一個Maven導(dǎo)入依賴編寫你一個你需要的實(shí)體類和一個持久層接口編寫一個SqlMapConfig.xml編寫映射配置文件編寫測試類測試
學(xué)習(xí)了黑馬的mybatis第一天總結(jié)
主要步驟可概括為
創(chuàng)建一個Maven

這里選擇maven,然后直接點(diǎn)擊next

填入自己的工程名,點(diǎn)擊Finish,一個maven工程就創(chuàng)建好了。
導(dǎo)入依賴
在pom.xml中,導(dǎo)入需要的依賴。

編寫你一個你需要的實(shí)體類和一個持久層接口
以User為了(為了實(shí)現(xiàn)對數(shù)據(jù)庫user表的查詢)

這里的User Class就是常規(guī)的實(shí)體類,屬性+構(gòu)造器+get&set方法+toString方法。(User實(shí)現(xiàn)Serializable接口)

創(chuàng)建完UserDao接口之后,寫一個需要實(shí)現(xiàn)的方法名。如查詢所有數(shù)據(jù):

編寫一個SqlMapConfig.xml
在對應(yīng)的目錄resources下創(chuàng)建SqlMapConfig.xml文件,用來配置連接數(shù)據(jù)庫的信息。
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE configuration
PUBLIC "-//mybatis.org//DTD Config 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-config.dtd">
<configuration>
<environments default="mysql">
<environment id="mysql">
<transactionManager type="jdbc"></transactionManager>
<dataSource type="POOLED">
<property name="driver" value="com.mysql.cj.jdbc.Driver"/>
<property name="url" value="jdbc:mysql://localhost:3306/mybatistest?serverTimezone=UTC"/>
<property name="username" value="root"/>
<property name="password" value="12345"/>
</dataSource>
</environment>
</environments>
<mappers>
<mapper resource="com/lyn/dao/UserDao.xml"/>
</mappers>
</configuration>
mapper中,resource表示對應(yīng)的映射配置文件(即編寫映射配置文件中的xml文件)。mappers用于告知mybatis映射配置的位置。
編寫映射配置文件
同樣的,在resources目錄下,創(chuàng)建一個同UserDao同級的UserDao.xml文件,即他們的目錄名是一樣的,代碼如下:
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> <mapper namespace="com.lyn.dao.UserDao"> <select id="findAll" resultType="com.lyn.pojo.User"> select * from user </select> </mapper>
編寫測試類測試
至此已經(jīng)完成了mybatis的配置,下面就是編寫一個測試類去測試mybatis是否配置成功。
package com.lyn.test;
import com.lyn.dao.UserDao;
import com.lyn.pojo.User;
import org.apache.ibatis.io.Resources;
import org.apache.ibatis.session.SqlSession;
import org.apache.ibatis.session.SqlSessionFactory;
import org.apache.ibatis.session.SqlSessionFactoryBuilder;
import java.io.IOException;
import java.io.InputStream;
import java.util.List;
/**
* @author lyn
* @create 2020-11-09-13:59
*/
public class MyBatisTest {
public static void main(String[] args) throws IOException {
InputStream is = Resources.getResourceAsStream("SqlMapConfig.xml");
SqlSessionFactoryBuilder builder = new SqlSessionFactoryBuilder();
SqlSessionFactory sessionFactory = builder.build(is);
SqlSession session = sessionFactory.openSession();
UserDao mapper = session.getMapper(UserDao.class);
List<User> list = mapper.findAll();
list.forEach(System.out::println);
}
}
運(yùn)行結(jié)果如下:

到此這篇關(guān)于基于XML的MyBatis的環(huán)境搭建(IDEA)的文章就介紹到這了,更多相關(guān)MyBatis的環(huán)境搭建內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Spring中三種常見Bean的初始化參數(shù)機(jī)制你了解嗎
在Spring框架中,Bean的實(shí)例化與初始化是一個復(fù)雜的過程,本文我們主要來聊一聊它的常見的三種機(jī)制:InitializingBean接口、BeanDefinitionRegistryPostProcessor接口和EnvironmentAware接口,感興趣的小伙伴可以了解下2023-11-11
java IO流 之 輸出流 OutputString()的使用
這篇文章主要介紹了java IO流 之 輸出流 OutputString()的使用的相關(guān)資料,需要的朋友可以參考下2016-12-12
MyBatis查詢數(shù)據(jù),賦值給List集合時,數(shù)據(jù)缺少的問題及解決
這篇文章主要介紹了MyBatis查詢數(shù)據(jù),賦值給List集合時,數(shù)據(jù)缺少的問題及解決方案,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2022-01-01
解析Java編程中對于包結(jié)構(gòu)的命名和訪問
這篇文章主要介紹了Java編程中對于包結(jié)構(gòu)的命名和訪問,是Java入門學(xué)習(xí)中的基礎(chǔ)知識,需要的朋友可以參考下2015-12-12
springboot中通過jwt令牌校驗(yàn)及前端token請求頭進(jìn)行登錄攔截實(shí)戰(zhàn)記錄
這篇文章主要給大家介紹了關(guān)于springboot中如何通過jwt令牌校驗(yàn)及前端token請求頭進(jìn)行登錄攔截的相關(guān)資料,需要的朋友可以參考下2024-08-08
Java多線程實(shí)現(xiàn)之Callable詳解
這篇文章主要介紹了Java多線程實(shí)現(xiàn)之Callable詳解,Callable是一個接口,用于實(shí)現(xiàn)多線程,與實(shí)現(xiàn)Runnable類似,但是功能更強(qiáng)大,通過實(shí)現(xiàn)Callable接口,我們需要重寫call()方法,該方法可以在任務(wù)結(jié)束后提供一個返回值,需要的朋友可以參考下2023-08-08
Springboot實(shí)現(xiàn)Java阿里短信發(fā)送代碼實(shí)例
這篇文章主要介紹了springboot實(shí)現(xiàn)Java阿里短信發(fā)送代碼實(shí)例,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下2020-02-02
Shiro + JWT + SpringBoot應(yīng)用示例代碼詳解
這篇文章主要介紹了Shiro (Shiro + JWT + SpringBoot應(yīng)用),本文通過實(shí)例代碼給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下2020-06-06
SpringBoot+Dubbo+Seata分布式事務(wù)實(shí)戰(zhàn)詳解
這篇文章主要介紹了SpringBoot+Dubbo+Seata分布式事務(wù)實(shí)戰(zhàn)詳解,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2019-07-07

