亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

教你一步到位部署運(yùn)行MyBatis3源碼(保姆級(jí))

 更新時(shí)間:2022年06月26日 09:23:11   作者:張國(guó)榮南京分榮  
一個(gè)框架的運(yùn)行流程從最簡(jiǎn)單的一個(gè)helloworld來看其源碼就能了解到框架的原理是什么,這篇文章主要給大家介紹了關(guān)于如何一步到位部署運(yùn)行MyBatis3源碼的相關(guān)資料,需要的朋友可以參考下

源碼部署

下載

mybatis3中文網(wǎng)址:mybatis.org/mybatis-3/z…

mybatis3下載地址:github.com/mybatis/myb…

mybatis父工程下載地址:github.com/mybatis/par…

點(diǎn)擊鏈接下載zip包,注意對(duì)應(yīng)版本(本文為穩(wěn)妥起見下載了前人趟過坑的mybatis3的3.5.3版本)。

該項(xiàng)目pom文件中有引入mybatis-parent工程,需按照對(duì)應(yīng)版本下載,切記!

下載后解壓。

編譯安裝

使用CMD編譯安裝項(xiàng)目前需要先配置好maven系統(tǒng)變量和本地倉(cāng)庫(kù)路徑,不然會(huì)下載依賴到到C盤隱藏目錄.m2中。

環(huán)境變量截圖:

變量path:

maven 下config文件中setting.xml中配置:

切換到你下載的mybatis-parent目錄打開cmd:

執(zhí)行命令:mvn clean install -Dmaven.test.skip=true

等待BUILD SUCCESS。

或者IDEA open項(xiàng)目自己clean install也不會(huì)報(bào)錯(cuò)

接下來切換到你下載的mybatis源碼目錄:

為防止編譯失敗需要先注釋掉pom.xml文件的maven-pdf-plugin插件:

      <!-- <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-pdf-plugin</artifactId>
      </plugin>-->

執(zhí)行命令:mvn clean install -Dmaven.test.skip=true

等待一下,中間不要管,等build成功。

idea導(dǎo)入

  • IDEA 新建Maven項(xiàng)目后先不進(jìn)行操作(本人項(xiàng)目名為source-mybatis);
  • ctrl+shift+ alt+ s 打開項(xiàng)目配置,將兩個(gè)項(xiàng)目添加進(jìn)module中,至此源碼導(dǎo)入結(jié)束。

demo測(cè)試

先貼一個(gè)source-mybatis項(xiàng)目截圖:

先貼一個(gè)pom文件的依賴,注意mybatis.version的版本一定要是自己源碼的版本;

我本地是mysql8,實(shí)際需按照自己情況導(dǎo)入依賴和配置。

<properties>
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
    <maven.compiler.source>1.8</maven.compiler.source>
    <maven.compiler.target>1.8</maven.compiler.target>
    <junit.version>4.13.2</junit.version>
    <mybatis.version>3.5.3</mybatis.version>
    <mysql.version>8.0.11</mysql.version>
    <druid.version>1.1.9</druid.version>
  </properties>

  <dependencies>
    <!-- log4j -->
    <dependency>
      <groupId>log4j</groupId>
      <artifactId>log4j</artifactId>
      <version>1.2.17</version>
    </dependency>
    <!-- Mybatis -->
    <dependency>
      <groupId>org.mybatis</groupId>
      <artifactId>mybatis</artifactId>
      <version>${mybatis.version}</version>
    </dependency>
    <!-- MySql -->
    <dependency>
      <groupId>mysql</groupId>
      <artifactId>mysql-connector-java</artifactId>
      <version>${mysql.version}</version>
    </dependency>
    <!-- 連接池 -->
    <dependency>
      <groupId>com.alibaba</groupId>
      <artifactId>druid</artifactId>
      <version>${druid.version}</version>
    </dependency>
    <!-- Junit -->
    <dependency>
      <groupId>junit</groupId>
      <artifactId>junit</artifactId>
      <version>${junit.version}</version>
      <scope>test</scope>
    </dependency>
    <!-- https://mvnrepository.com/artifact/org.javassist/javassist -->
    <dependency>
      <groupId>org.javassist</groupId>
      <artifactId>javassist</artifactId>
      <version>3.26.0-GA</version>
    </dependency>
  </dependencies>

  <build>
    <!-- 加載配置文件 -->
    <resources>
      <resource>
        <directory>src/main/java</directory>
        <includes>
          <include>**/*.xml</include>
        </includes>
      </resource>
    </resources>
  </build>

下面貼一下SqlSessionConfig.xml配置文件的內(nèi)容:

<?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>
    <settings>
        <setting name="logImpl" value="STDOUT_LOGGING" />
    </settings>
    <typeAliases>
        <package name="com.yang.entity"/>
    </typeAliases>
    <environments default="development">
        <environment id="development">
            <transactionManager type="JDBC"></transactionManager>
            <dataSource type="POOLED">
                 <!-- dirver根據(jù)自身mysql版本來 -->
                <property name="driver" value="com.mysql.cj.jdbc.Driver"/>
                <property name="username" value="root"/>
                <property name="password" value="root123456"/>
                <!-- mysql8要加:serverTimezone=Asia/Shanghai&amp;useSSL=false&amp;allowPublicKeyRetrieval=true-->
                <property name="url" value="jdbc:mysql://localhost:3306/news?characterEncoding=utf8&amp;serverTimezone=Asia/Shanghai&amp;useSSL=false&amp;allowPublicKeyRetrieval=true"/>
            </dataSource>
        </environment>
    </environments>
    <mappers>
        <package name="com.yang.mapper"/>
    </mappers>
</configuration>

實(shí)體類和mapper正常寫,和平常項(xiàng)目沒有任何區(qū)別,不貼代碼了;

測(cè)試類代碼如下:

    @Test
    public void test() throws IOException {
        InputStream input = Resources.getResourceAsStream("SqlSessionConfig.xml");
        SqlSessionFactory sessionFactory = new SqlSessionFactoryBuilder().build(input);
        SqlSession sqlSession = sessionFactory.openSession();
        LevelDao dao = sqlSession.getMapper(LevelDao.class);
        List<Level> all = dao.findAll();
        for (Level level : all) {
            System.out.println(level);
        }
    }

接下來我們debug執(zhí)行測(cè)試方法,在第四行處打斷點(diǎn)是可以在IDEA面板中跳轉(zhuǎn)到我們的mybatis源碼的類文件中的,接下來我們就可以自己寫注釋,來學(xué)習(xí)mybatis3的底層源碼。

至此結(jié)束,親測(cè)這套流程是沒什么問題的,趕快來學(xué)習(xí)吧。

總結(jié)

到此這篇關(guān)于部署運(yùn)行MyBatis3源碼的文章就介紹到這了,更多相關(guān)部署運(yùn)行MyBatis3源碼內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

最新評(píng)論