最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

使用mybatis框架連接mysql數(shù)據(jù)庫的超詳細(xì)步驟

 更新時間:2023年04月21日 10:13:54   作者:一支貓咔qly  
MyBatis是目前java項(xiàng)目連接數(shù)據(jù)庫的最流行的orm框架了,下面這篇文章主要給大家介紹了關(guān)于使用mybatis框架連接mysql數(shù)據(jù)庫的超詳細(xì)步驟,文中通過實(shí)例代碼和圖文介紹的非常詳細(xì),需要的朋友可以參考下

和我之前寫的通過導(dǎo)入jdbc驅(qū)動jar包來連接mysql數(shù)據(jù)庫而言,用mybatis來說可以有很多好處呀,首先mybatis,就是對jdbc的優(yōu)化方案對吧,,jdbc的硬編碼和一些繁瑣的操作在使用mybatis的時候我就徹底拋擲腦后了哈哈哈。

同時,mybatis在國內(nèi)使用的持久層框架中占比也很高啊

所以對mybatis的學(xué)習(xí),對我們也很有用處嘞。

接下來我就把我在學(xué)習(xí)過程中的一些心得啥的下來,方便大家,同時也是鞏固自己,我創(chuàng)建的是maven項(xiàng)目加上mybatis來實(shí)現(xiàn)對mysql數(shù)據(jù)庫的連接,這個過程并不復(fù)雜,但也正是第一步,我們也要格外仔細(xì)。

mybatis的一些xml文件配置我參考了:mybatis – MyBatis 3 | 入門

maven項(xiàng)目中導(dǎo)入的jdbc驅(qū)動jar包和mybatis的jar包的依賴我從這里找的:https://mvnrepository.com/artifact/mysql/mysql-connector-java

https://mvnrepository.com/artifact/org.mybatis/mybatis

大家如果在maven項(xiàng)目中不知道怎么寫依賴坐標(biāo),可以從這里直接拿來用。ok,下來開始了。

第一步 在pom.xml中寫好依賴坐標(biāo)

這是我導(dǎo)的jdbc驅(qū)動

 <dependency>
            <groupId>mysql</groupId>
            <artifactId>mysql-connector-java</artifactId>
            <version>5.1.45</version>
        </dependency>

這是我導(dǎo)的mybatis

<dependency>
            <groupId>org.mybatis</groupId>
            <artifactId>mybatis</artifactId>
            <version>3.5.6</version>
        </dependency>

pom.xml的整體為:

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>
 
    <groupId>org.example</groupId>
    <artifactId>demo2</artifactId>
    <version>1.0-SNAPSHOT</version>
 
    <properties>
        <maven.compiler.source>17</maven.compiler.source>
        <maven.compiler.target>17</maven.compiler.target>
    </properties>
 
    <dependencies>
        <dependency>
            <groupId>mysql</groupId>
            <artifactId>mysql-connector-java</artifactId>
            <version>5.1.45</version>
        </dependency>
 
        <dependency>
            <groupId>org.mybatis</groupId>
            <artifactId>mybatis</artifactId>
            <version>3.5.6</version>
        </dependency>
    </dependencies>
</project>

第二步  mybatis的核心配置文件

我們需要在resources目錄下編寫好mybatis的核心配置文件Mybatis-config.xml,這個配置文件的模板在上面發(fā)的mybatis入門的網(wǎng)站里有,大家可以去直接copy過來,好好研究一下。

Mybatis-config.xml的整體代碼為:

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE configuration
        PUBLIC "-//mybatis.org//DTD Config 3.0//EN"
        "https://mybatis.org/dtd/mybatis-3-config.dtd">
<configuration>
    <environments default="development">
        <environment id="development">
            <transactionManager type="JDBC"/>
<!--            這里要寫入我們連接mysql數(shù)據(jù)庫的信息-->
            <dataSource type="POOLED">
                <property name="driver" value="com.mysql.jdbc.Driver"/>
                <property name="url" value="jdbc:mysql://localhost:3306/test"/>
                <property name="username" value="root"/>
                <property name="password" value="1234"/>
            </dataSource>
        </environment>
    </environments>
<!--    這里要寫sql映射-->
    <mappers>
        <mapper resource="com/kinroy/Mapper/userMapper.xml"/>
    </mappers>
</configuration>

在<datasource>標(biāo)簽下便要求寫入我們的mysql數(shù)據(jù)庫的連接信息,包括url、name、password老三樣,而在<mappers>標(biāo)簽下待會要寫下我們接下要寫的userMapper.xml,待會通過它來實(shí)現(xiàn)mapper代理。

第三步 寫好實(shí)體類

我們需要把用來演示的user表中存的數(shù)據(jù)把它們封裝成一個對象,這個時候就要寫一個User的實(shí)體類啦,user表中存的數(shù)據(jù)有id、name、age這些簡單數(shù)據(jù)。

User類的整體代碼如下:

package com.kinroy.pojo;
 
public class User {
    private int id;
    private String name;
    private int age;
 
    public User() {
    }
 
    public User(int id, String name, int age) {
        this.id = id;
        this.name = name;
        this.age = age;
    }
 
    /**
     * 獲取
     * @return id
     */
    public int getId() {
        return id;
    }
 
    /**
     * 設(shè)置
     * @param id
     */
    public void setId(int id) {
        this.id = id;
    }
 
    /**
     * 獲取
     * @return name
     */
    public String getName() {
        return name;
    }
 
    /**
     * 設(shè)置
     * @param name
     */
    public void setName(String name) {
        this.name = name;
    }
 
    /**
     * 獲取
     * @return age
     */
    public int getAge() {
        return age;
    }
 
    /**
     * 設(shè)置
     * @param age
     */
    public void setAge(int age) {
        this.age = age;
    }
 
    public String toString() {
        return "User{id = " + id + ", name = " + name + ", age = " + age + "}";
    }
}

第四步 XXXMapper.xml

這次我在mysql里建立一個test數(shù)據(jù)庫,在test數(shù)據(jù)庫里有一個user表,我們演示的時候是對user表進(jìn)行操作的,所以在Mapper.xml文件這命名時,就用userMapper.xml

因?yàn)橐獙?shí)現(xiàn)Mapper代理,所以在后面我們會建一個和userMapper.xml同名的接口,在接口中便會存放與userMapper.xml中sql語言一樣的抽象方法,來實(shí)現(xiàn)mapper代理,我不知道我說得是否清楚,而這就得要這個接口和userMapper.xml所在的目錄要相同,如下圖:

這是userMapper.xml的整體代碼:

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper
        PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
        "https://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.kinroy.Mapper.userMapper">
 
    <select id="selectall" resultType="com.kinroy.pojo.User">
        select * from user;
    </select>
    <select id="selectzhangsan" resultType="com.kinroy.pojo.User">
       select * from user where name='張三';
 
    </select>
 
</mapper>

這是與其同名接口的整體代碼:

package com.kinroy.Mapper;
 
import com.kinroy.pojo.User;
 
import java.util.List;
 
public interface userMapper {
    List<User> selectall();
    User selectzhangsan();
}

這里推薦大家去下一個插件啊,就是mybatisX,在寫mapper代理時,別提有多方便了

第五步 連接mysql數(shù)據(jù)庫

如何大家在寫Mapper.xml的時候會發(fā)現(xiàn)有爆紅的,比如沒有識別表名啊之類的,這是因?yàn)槲覀冞€沒有和數(shù)據(jù)庫建立連接,連接成功后就不會報錯了

這這里也寫好url、name、password還有要連接的數(shù)據(jù)庫就好了。

第六步  開始test!

我寫了一個測試案例:

import com.kinroy.Mapper.userMapper;
import com.kinroy.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;
 
public class test {
    public static void main(String[] args) throws IOException {
        String resource = "Mybatis-config.xml";
        InputStream inputStream = Resources.getResourceAsStream(resource);
        SqlSessionFactory sqlSessionFactory = new SqlSessionFactoryBuilder().build(inputStream);
        SqlSession sqlSession = sqlSessionFactory.openSession();
        userMapper users = sqlSession.getMapper(userMapper.class);
        /*List<User> selectall = users.selectall();
        System.out.println(selectall);*/
        User zhangsan = users.selectzhangsan();
        String s = zhangsan.toString();
        System.out.println(s);
 
    }
}

 測試了一下,看成功沒有,果然沒啥問題,這樣我們就完成整個mybatis的連接mysql,并執(zhí)行一下簡單sql語言的過程啦。

總結(jié)

到此這篇關(guān)于使用mybatis框架連接mysql數(shù)據(jù)庫的文章就介紹到這了,更多相關(guān)mybatis連接mysql數(shù)據(jù)庫內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Spring Boot中RedisTemplate的使用示例詳解

    Spring Boot中RedisTemplate的使用示例詳解

    RedisTemplate.opsForHash()是RedisTemplate類提供的用于操作Hash類型的方法,它可以用于對Redis中的Hash數(shù)據(jù)結(jié)構(gòu)進(jìn)行各種操作,如設(shè)置字段值、獲取字段值、刪除字段值等,本文介紹Spring Boot中RedisTemplate的使用,感興趣的朋友一起看看吧
    2023-10-10
  • JavaFX實(shí)現(xiàn)界面跳轉(zhuǎn)

    JavaFX實(shí)現(xiàn)界面跳轉(zhuǎn)

    這篇文章主要為大家詳細(xì)介紹了JavaFX實(shí)現(xiàn)界面跳轉(zhuǎn),文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2022-06-06
  • SpringCloud?Feign?傳輸Date類型參數(shù)存在誤差的問題

    SpringCloud?Feign?傳輸Date類型參數(shù)存在誤差的問題

    這篇文章主要介紹了SpringCloud?Feign?傳輸Date類型參數(shù)存在誤差的問題,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-03-03
  • Spring AI集成DeepSeek三步搞定Java智能應(yīng)用的詳細(xì)過程

    Spring AI集成DeepSeek三步搞定Java智能應(yīng)用的詳細(xì)過程

    本文介紹了如何使用SpringAI集成DeepSeek,一個國內(nèi)頂尖的多模態(tài)大模型,SpringAI提供了一套統(tǒng)一的接口,簡化了與不同AI模型的集成,通過配置文件和簡單的接口調(diào)用,開發(fā)者可以方便地使用DeepSeek進(jìn)行數(shù)學(xué)推理、代碼生成等任務(wù),感興趣的朋友一起看看吧
    2025-03-03
  • Effective Java 在工作中的應(yīng)用總結(jié)

    Effective Java 在工作中的應(yīng)用總結(jié)

    《Effective Java》是一本經(jīng)典的 Java 學(xué)習(xí)寶典,值得每位 Java 開發(fā)者閱讀。下面文章即是將書中和平日工作較密切的知識點(diǎn)做了部分總結(jié),需要的朋友可以參考下
    2021-09-09
  • 關(guān)于服務(wù)網(wǎng)關(guān)Spring Cloud Zuul(Finchley版本)

    關(guān)于服務(wù)網(wǎng)關(guān)Spring Cloud Zuul(Finchley版本)

    這篇文章主要介紹了關(guān)于服務(wù)網(wǎng)關(guān)Spring Cloud Zuul(Finchley版本),具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-03-03
  • 如何利用JAVA正則表達(dá)式輕松替換JSON中的大字段

    如何利用JAVA正則表達(dá)式輕松替換JSON中的大字段

    這篇文章主要給大家介紹了關(guān)于如何利用JAVA正則表達(dá)式輕松替換JSON中大字段的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-12-12
  • 淺談Spring中@Import注解的作用和使用

    淺談Spring中@Import注解的作用和使用

    這篇文章主要介紹了淺談Spring中@Import注解的作用和使用,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-05-05
  • Spring?Data?JPA?實(shí)體類中常用注解說明

    Spring?Data?JPA?實(shí)體類中常用注解說明

    這篇文章主要介紹了Spring?Data?JPA?實(shí)體類中常用注解說明,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2021-11-11
  • 使用java為pdf添加書簽的方法(pdf書簽制作)

    使用java為pdf添加書簽的方法(pdf書簽制作)

    下載一些pdf格式的電子書沒有書簽,用JAVA寫了一個小工具,將特定格式的文本解析成為書簽,然后保存到pdf格式中
    2014-02-02

最新評論

行唐县| 波密县| 通山县| 侯马市| 紫金县| 蒲城县| 兴和县| 黄浦区| 遂川县| 南丹县| 资阳市| 云浮市| 毕节市| 上思县| 合山市| 东明县| 海门市| 吕梁市| 特克斯县| 射阳县| 肇东市| 东平县| 海安县| 盐池县| 腾冲县| 泗水县| 琼中| 石阡县| 淅川县| 大宁县| 射洪县| 和龙市| 铁岭县| 德昌县| 长宁区| 海南省| 井陉县| 汕尾市| 六安市| 柳江县| 宁强县|