一个框架的运行流程从最简单的一个helloworld来看其源码就能了解到框架的原理是什么,这篇文章主要给大家介绍了关于如何一步到位部署运行MyBatis3源码的相关资料,需要的朋友可以参考下
源码部署
下载
mybatis3中文网址:mybatis.org/mybatis-3/z…
mybatis3下载地址:github.com/mybatis/myb…
mybatis父工程下载地址:github.com/mybatis/par…
点击链接下载zip包,注意对应版本(本文为稳妥起见下载了前人趟过坑的mybatis3的3.5.3版本)。
该项目pom文件中有引入mybatis-parent
工程,需按照对应版本下载,切记!
下载后解压。
编译安装
使用CMD编译安装项目前需要先配置好maven系统变量和本地仓库路径,不然会下载依赖到到C盘隐藏目录.m2中。
环境变量截图:
变量path:
maven 下config文件中setting.xml
中配置:
切换到你下载的mybatis-parent目录打开cmd:
执行命令:mvn clean install -Dmaven.test.skip=true
等待BUILD SUCCESS。
或者IDEA open项目自己clean install也不会报错
接下来切换到你下载的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成功。
idea导入
- IDEA 新建Maven项目后先不进行操作(本人项目名为
source-mybatis
); ctrl+shift+ alt+ s
打开项目配置,将两个项目添加进module中,至此源码导入结束。
demo测试
先贴一个source-mybatis
项目截图:
先贴一个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&useSSL=false&allowPublicKeyRetrieval=true-->
<property name="url" value="jdbc:mysql://localhost:3306/news?characterEncoding=utf8&serverTimezone=Asia/Shanghai&useSSL=false&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源码内容请搜索编程学习网以前的文章希望大家以后多多支持编程学习网!
本文标题为:教你一步到位部署运行MyBatis3源码(保姆级)
基础教程推荐
- Java并发编程进阶之线程控制篇 2023-03-07
- Java实现线程插队的示例代码 2022-09-03
- Java数据结构之对象比较详解 2023-03-07
- java基础知识之FileInputStream流的使用 2023-08-11
- JDK数组阻塞队列源码深入分析总结 2023-04-18
- ConditionalOnProperty配置swagger不生效问题及解决 2023-01-02
- springboot自定义starter方法及注解实例 2023-03-31
- Java文件管理操作的知识点整理 2023-05-19
- java实现多人聊天系统 2023-05-19
- Java实现查找文件和替换文件内容 2023-04-06