温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

如何部署并运行MyBatis3

发布时间:2022-09-21 15:50:01 来源:亿速云 阅读:100 作者:iii 栏目:开发技术

这篇文章主要介绍“如何部署并运行MyBatis3”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“如何部署并运行MyBatis3”文章能帮助大家解决问题。

    源码部署

    下载

    mybatis3中文网址:mybatis.org/mybatis-3/z…

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

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

    点击链接下载zip包,注意对应版本(本文为稳妥起见下载了前人趟过坑的mybatis3的3.5.3版本)。

    如何部署并运行MyBatis3

    该项目pom文件中有引入mybatis-parent工程,需按照对应版本下载,切记!

    如何部署并运行MyBatis3

    下载后解压。

    如何部署并运行MyBatis3

    编译安装

    使用CMD编译安装项目前需要先配置好maven系统变量和本地仓库路径,不然会下载依赖到到C盘隐藏目录.m2中。

    环境变量截图:

    如何部署并运行MyBatis3

    变量path:

    如何部署并运行MyBatis3

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

    如何部署并运行MyBatis3

    切换到你下载的mybatis-parent目录打开cmd:

    执行命令:mvn clean install -Dmaven.test.skip=true

    等待BUILD SUCCESS。

    如何部署并运行MyBatis3

    或者IDEA open项目自己clean install也不会报错

    如何部署并运行MyBatis3

    接下来切换到你下载的mybatis源码目录:

    为防止编译失败需要先注释掉pom.xml文件的maven-pdf-plugin插件:

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

    执行命令:mvn clean install -Dmaven.test.skip=true

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

    如何部署并运行MyBatis3

    idea导入

    • IDEA 新建Maven项目后先不进行操作(本人项目名为source-mybatis);

    • ctrl+shift+ alt+ s 打开项目配置,将两个项目添加进module中,至此源码导入结束。

    如何部署并运行MyBatis3

    demo测试

    先贴一个source-mybatis项目截图:

    如何部署并运行MyBatis3

    先贴一个pom文件的依赖,注意mybatis.version的版本一定要是自己源码的版本;

    我本地是mysql8,实际需按照自己情况导入依赖和配置。

    <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配置文件的内容:

    <?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根据自身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>

    实体类和mapper正常写,和平常项目没有任何区别,不贴代码了;

    测试类代码如下:

        @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执行测试方法,在第四行处打断点是可以在IDEA面板中跳转到我们的mybatis源码的类文件中的,接下来我们就可以自己写注释,来学习mybatis3的底层源码。

    如何部署并运行MyBatis3

    关于“如何部署并运行MyBatis3”的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识,可以关注亿速云行业资讯频道,小编每天都会为大家更新不同的知识点。

    向AI问一下细节

    免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

    AI