01 mybatis框架整体概况(2018.7.10)-

F:\廖雪峰 JavaEE 企业级分布式高级架构师课程\廖雪峰JavaEE一期\第一课(2018.7.10)

maven用的是3.39的版本

F:\廖雪峰 JavaEE 企业级分布式高级架构师课程\廖雪峰JavaEE一期\第一课(2018.7.10)\笔记\01_MyBatis\02_工具\maven工具包

mysql用的是5.5的版本

mysql的客户端用的是Mysql_Front

ecplise和Maven全都是绿色版本

基于的jdk的版本是1.8的版本

github的地址:

https://github.com/mybatis/mybatis-3

MyBatis官方文档

http://www.mybatis.org/mybatis-3/

下面可以选择中文

基于jdbc的封装

jdbc链接数据库的回顾

首先是加载驱动类

Class.formName();

本地的数据库:我们要使用MyBatis插入到这个开课吧数据库内的dept部门表内的数据,一共就有三个字段。

github首页中下载最新的版本的Mybatis

看官方文档的介绍,要使用就要先引入jar包文件

使用Maven去管理,我们来按照他的要求去做一下

Maven就是jar包的管理工具,在我们的工具里面有Maven工具包。我们这里的maven是一个免安装的版本,把maven的压缩包解压出来,然后和我们的Ecplise工具进行关联。

Maven的关联

选择自己电脑上的maven的路径:D:\java\maven

如果是断网了,可以直接复制这个文件夹替换到我们机器的:

F:\廖雪峰 JavaEE 企业级分布式高级架构师课程\廖雪峰JavaEE一期\第一课(2018.7.10)\笔记\01_MyBatis\03_资料\.m2

.m2的文件夹

鼠标右键新建maven的工程

设置包名和项目名称:

Group Id:就是包名

Artifact Id:就是工程的名称了

如果写测试的话可以在test/java下写

每一个Maven工程都会有一个pom.xml

把哦我们要添加的jar包,在pom.xml内做一个注册就可以了

32分钟

写上依赖的标签:

dependencies。然后把我们遗爱的jar包放到这个标签里面

复制官方文档的配置标签代码:

http://www.mybatis.org/mybatis-3/zh/getting-started.html#

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

我们只需要修改version的标签写上版本号3.4.6

当我们ctrl+s保存这个文件以后,Maven就会自动从网上下载对应的包

光有Mybatis框架还不能操作数据库,还需要使用数据库的驱动包,这里我们还需要第二个jar包的依赖,我们还需要添加MySql的驱动包

可以去Maven的仓库去下载。但是由于讲课的老师的电脑网速的问题,所以我们直接用下载好的

F:\廖雪峰 JavaEE 企业级分布式高级架构师课程\廖雪峰JavaEE一期\第一课(2018.7.10)\笔记\01_MyBatis\03_资料\约束文件

F:\廖雪峰 JavaEE 企业级分布式高级架构师课程\廖雪峰JavaEE一期\第一课(2018.7.10)\笔记\01_MyBatis\03_资料\mybatis依赖配置文件

<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>5.1.</version>
</dependency>

有了这些驱动包之后

看文档我们需要新建一个SqlSessionFactory

这里有一个读取流读取的是一个文件:

读取的文件是:org/mybatis/example/mybatis-config.xml

mybatis-config.xml是Mybit的核心配置文档。在这里文档里面 它会告诉Mybit框架,要访问哪些数据库、事务管理、sql映射文件在项目中的位置

视频里面又不详细讲了,说是要快速的过一下这部分内容:38分。

视频中导入了一个项目

导入到Ecplisse中

Mybaits_01_Simple

在resource下面找到SQL映射文件:

这里将会对部门表进行插入操作。

这里要做加载处理

先新建一个实体对象,然后给实体对象的属性赋值

然后鼠标右键,执行这个java类。console内没有任何的输出

我们到数据库内看一下插入的数据

Mybabits是对jdbc的封装,但是没有看到任何一点与jdbc有相像的地方:

SqlSessionFactor和SqlSession都是什么东西?我们通过源码跟踪的方式给大家讲解

19行接了断点。然后dubug as 去执行 java application

44分28秒。断点调试

01 mybatis框架整体概况(2018.7.10)-的更多相关文章

  1. 01 Mybatis框架添加英雄步骤

    客户端发出请求的几种方式 通过浏览器的地址栏中发出请求 通过html页面中的超链接发出请求 通过html页面中的form表单发出请求 通过前端框架发出请求 工程中使用数据库需要做的几件事: 在pom. ...

  2. Mybatis之整体描述

    Mybatis在我看来最大的用处就是封装了jdbc,设置参数操作和获取解析结果集.同时控制了数据库链接等操作,大部分采用了反射来映射javabean对象来进行数据库操作. 1.接下来先整体介绍下主要的 ...

  3. Mybatis原理分析之二:框架整体设计

    1.引言 本文主要讲解Mybatis的整体程序设计,理清楚框架的主要脉络.后面文章我们再详细讲解各个组件. 2.整体设计 2.1 总体流程 (1)加载配置并初始化       触发条件:加载配置文件 ...

  4. 【MyBatis学习01】宏观上把握MyBatis框架

    今天开始学习mybatis框架,博客主要记录学习过程中的一些总结,如有错误之处,欢迎留言指正~先用mybatis的鸟鸟来镇个楼,咳咳~~ mybatis框架是一个持久层框架,是Apache下的顶级项目 ...

  5. SpringBoot2.0 基础案例(10):整合Mybatis框架,集成分页助手插件

    一.Mybatis框架 1.mybatis简介 MyBatis 是一款优秀的持久层框架,它支持定制化 SQL.存储过程以及高级映射.MyBatis 避免了几乎所有的 JDBC 代码和手动设置参数以及获 ...

  6. MyBatis 框架 基础应用

    1.ORM的概念和优势 概念: 对象关系映射(Object Relational Mapping,简称ORM)是通过使用描述对象和数据库之间映射的元数据,将面向对象语言程序中的对象自动持久化到关系数据 ...

  7. 搭建一个简单的mybatis框架

    一.Mybatis介绍 MyBatis是一个支持普通SQL查询,存储过程和高级映射的优秀持久层框架.MyBatis消除了几乎所有的JDBC代码和参数的手工设置以及对结果集的检索封装.MyBatis可以 ...

  8. SSM框架-----------SpringMVC+Spring+Mybatis框架整合详细教程

    1.基本概念 1.1.Spring Spring是一个开源框架,Spring是于2003 年兴起的一个轻量级的Java 开发框架,由Rod Johnson 在其著作Expert One-On-One  ...

  9. Spring3.0 与 MyBatis框架 整合小实例

    本文将在Eclipse开发环境下,采用Spring MVC + Spring + MyBatis + Maven + Log4J 框架搭建一个Java web 项目. 1. 环境准备: 1.1 创建数 ...

随机推荐

  1. TIP2

    mktemp :建立暂存/临时文件 more to see 'man mktemp' 语 法 mktemp[选择参数] 功 能 mktemp 命令:用于建立暂存文件,提供给shell脚本安全的使用临时 ...

  2. iframe仿ajax图片上传

    1.前台页面: iframe_upload.html <html> <body> <form action="upload.php" id=" ...

  3. Nginx下的https配置

    https: https(Secure Hypertext Transfer Protocol) 安全超文本传输协议 它是以安全为目标的http通道,即它是http的安全版.它使用安全套接字层(SSL ...

  4. EasyDarwin开源音频解码项目EasyAudioDecoder:EasyPlayer Android音频解码库(第二部分,封装解码器接口)

    上一节我们讲了如何基于ffmpeg-Android工程编译安卓上的支持音频的ffmpeg静态库:http://blog.csdn.net/xiejiashu/article/details/52524 ...

  5. EasyDarwin手机直播转发快速显示问题之音频处理过程

    前言 在我们前面一篇<EasyDarwin手机直播是如何实现的快速显示视频的方法>中,我们描述到了EasyDarwin流媒体服务器端是如何对视频H.264进行缓冲,再以最快的方式将最新的视 ...

  6. iOS应用的入口自定义和事件处理的自定义

    iOS应用的入口自定义和事件处理的自定义 - (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions: ...

  7. Android Weekly Notes Issue #243

    Android Weekly Issue #243 February 5th, 2017 Android Weekly Issue #243 本期内容包括: ConstraintLayout的动画; ...

  8. [zjoi2003]密码机

    一台密码机按照以下的方式产生密码:首先往机器中输入一系列数,然后取出其中一部分数,将它们异或以后得到一个新数作为密码.现在请你模拟这样一台密码机的运行情况,用户通过输入控制命令来产生密码.密码机中存放 ...

  9. JavaScript学习第三天

    今天学习第三天. 凡事都是需要坚持的,坚持下去. 学习内容: 1.document.getElementById(""),document.getElementByTagName( ...

  10. poj2773 —— 二分 + 容斥原理 + 唯一分解定理

    题目链接:http://poj.org/problem?id=2773 Happy 2006 Time Limit: 3000MS   Memory Limit: 65536K Total Submi ...