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

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

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

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

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

所以對mybatis的學習,對我們也很有用處嘞。

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

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

maven項目中導入的jdbc驅動jar包和mybatis的jar包的依賴我從這里找的:https://mvnrepository.com/artifact/mysql/mysql-connector-java

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

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

第一步 在pom.xml中寫好依賴坐標

這是我導的jdbc驅動

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

這是我導的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入門的網站里有,大家可以去直接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>標簽下便要求寫入我們的mysql數(shù)據(jù)庫的連接信息,包括url、name、password老三樣,而在<mappers>標簽下待會要寫下我們接下要寫的userMapper.xml,待會通過它來實現(xiàn)mapper代理。

第三步 寫好實體類

我們需要把用來演示的user表中存的數(shù)據(jù)把它們封裝成一個對象,這個時候就要寫一個User的實體類啦,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;
    }
 
    /**
     * 設置
     * @param id
     */
    public void setId(int id) {
        this.id = id;
    }
 
    /**
     * 獲取
     * @return name
     */
    public String getName() {
        return name;
    }
 
    /**
     * 設置
     * @param name
     */
    public void setName(String name) {
        this.name = name;
    }
 
    /**
     * 獲取
     * @return age
     */
    public int getAge() {
        return age;
    }
 
    /**
     * 設置
     * @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表進行操作的,所以在Mapper.xml文件這命名時,就用userMapper.xml

因為要實現(xiàn)Mapper代理,所以在后面我們會建一個和userMapper.xml同名的接口,在接口中便會存放與userMapper.xml中sql語言一樣的抽象方法,來實現(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)有爆紅的,比如沒有識別表名啊之類的,這是因為我們還沒有和數(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語言的過程啦。

總結

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

相關文章

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

    Spring Boot中RedisTemplate的使用示例詳解

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

    JavaFX實現(xiàn)界面跳轉

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

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

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

    Spring AI集成DeepSeek三步搞定Java智能應用的詳細過程

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

    Effective Java 在工作中的應用總結

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

    關于服務網關Spring Cloud Zuul(Finchley版本)

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

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

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

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

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

    Spring?Data?JPA?實體類中常用注解說明

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

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

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

最新評論

丽水市| 临潭县| 芮城县| 来宾市| 班戈县| 吉木萨尔县| 勃利县| 灌南县| 沁源县| 邢台县| 克什克腾旗| 仪征市| 民和| 伊宁县| 高雄市| 高陵县| 区。| 旬阳县| 湘潭县| 靖安县| 河津市| 延川县| 电白县| 三都| 阿合奇县| 定西市| 九寨沟县| 甘泉县| 岢岚县| 灵武市| 湖口县| 乳源| 固原市| 新兴县| 明水县| 潼关县| 北宁市| 万山特区| 宁乡县| 米泉市| 寿宁县|