01 mybatis框架整体概况(2018.7.10)-
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)-的更多相关文章
- 01 Mybatis框架添加英雄步骤
客户端发出请求的几种方式 通过浏览器的地址栏中发出请求 通过html页面中的超链接发出请求 通过html页面中的form表单发出请求 通过前端框架发出请求 工程中使用数据库需要做的几件事: 在pom. ...
- Mybatis之整体描述
Mybatis在我看来最大的用处就是封装了jdbc,设置参数操作和获取解析结果集.同时控制了数据库链接等操作,大部分采用了反射来映射javabean对象来进行数据库操作. 1.接下来先整体介绍下主要的 ...
- Mybatis原理分析之二:框架整体设计
1.引言 本文主要讲解Mybatis的整体程序设计,理清楚框架的主要脉络.后面文章我们再详细讲解各个组件. 2.整体设计 2.1 总体流程 (1)加载配置并初始化 触发条件:加载配置文件 ...
- 【MyBatis学习01】宏观上把握MyBatis框架
今天开始学习mybatis框架,博客主要记录学习过程中的一些总结,如有错误之处,欢迎留言指正~先用mybatis的鸟鸟来镇个楼,咳咳~~ mybatis框架是一个持久层框架,是Apache下的顶级项目 ...
- SpringBoot2.0 基础案例(10):整合Mybatis框架,集成分页助手插件
一.Mybatis框架 1.mybatis简介 MyBatis 是一款优秀的持久层框架,它支持定制化 SQL.存储过程以及高级映射.MyBatis 避免了几乎所有的 JDBC 代码和手动设置参数以及获 ...
- MyBatis 框架 基础应用
1.ORM的概念和优势 概念: 对象关系映射(Object Relational Mapping,简称ORM)是通过使用描述对象和数据库之间映射的元数据,将面向对象语言程序中的对象自动持久化到关系数据 ...
- 搭建一个简单的mybatis框架
一.Mybatis介绍 MyBatis是一个支持普通SQL查询,存储过程和高级映射的优秀持久层框架.MyBatis消除了几乎所有的JDBC代码和参数的手工设置以及对结果集的检索封装.MyBatis可以 ...
- SSM框架-----------SpringMVC+Spring+Mybatis框架整合详细教程
1.基本概念 1.1.Spring Spring是一个开源框架,Spring是于2003 年兴起的一个轻量级的Java 开发框架,由Rod Johnson 在其著作Expert One-On-One ...
- Spring3.0 与 MyBatis框架 整合小实例
本文将在Eclipse开发环境下,采用Spring MVC + Spring + MyBatis + Maven + Log4J 框架搭建一个Java web 项目. 1. 环境准备: 1.1 创建数 ...
随机推荐
- hdu4455 dp
pid=4455">http://acm.hdu.edu.cn/showproblem.php?pid=4455 Substrings Time Limit: 10000/5000 M ...
- 关于angular JS 中$timeOut 的一些不正常情况下的$destory
最近项目中存在的问题头疼脑热了好一会. 我先简单说明下问题是由,使用$timeOut循环调用的时候由于页面存在异步加载会出现反复执行循环反复调用$timeOut,怎么清除跳出循环都不管用.于是查到了如 ...
- ZOJ 1516 Uncle Tom's Inherited Land(二分匹配 最大匹配 匈牙利啊)
题目链接:http://acm.zju.edu.cn/onlinejudge/showProblem.do?problemId=516 Your old uncle Tom inherited a p ...
- sap保存时小写字母自己主动转大写字母的解决方法
在实际应用中.ABAP保存数据到后台数据库表中时.会自己主动把前台输入的小写字母自己主动转换为大写字母来保存.有时候客户可能不须要转换,就须要用到以下的方法: 1.找到相应字段的Data ...
- FFMPEG SDK流媒体开发2---分离.mp4等输入流音视频而且进行解码输出
对于FFMPEG SDK 提供的Demuxing 为我们实现多路复用 提供了非常多方便,以下的案案例 实现的是 分离一个媒体文件的音频 视频流 而且解码输出 到 不同的文件里. 对于音频被还原回 ...
- 使用jquery datatables插件遇到fnReloadAjax的问题
1 官网地址:http://www.datatables.net/ 2 基本参数介绍 http://blog.csdn.net/mickey_miki/article/details/8240477 ...
- 2-3-4树的java实现
一.什么是2-3-4树 2-3-4树和红黑树一样,也是平衡树.只不过不是二叉树,它的子节点数目可以达到4个. 每个节点存储的数据项可以达到3个.名字中的2,3,4是指节点可能包含的子节点数目.具体而言 ...
- 无感知的用同步的代码编写方式达到异步IO的效果和性能,避免了传统异步回调所带来的离散的代码逻辑和陷入多层回调中导致代码无法维护
golang/goroutine 和 swoole/coroutine 协程性能测试对比 - Go语言中文网 - Golang中文社区 https://studygolang.com/articles ...
- Mongoose学习(1)
1.Schema : 一种以文件形式存储的数据库模型骨架,不具备数据库的操作能力 Model : 由Schema发布生成的模型,具有抽象属性和行为的数据库操作对 Entity : 由Mod ...
- 【LeetCode】Maximum Depth of Binary Tree
http://oj.leetcode.com/problems/maximum-depth-of-binary-tree/ public class Solution { public int max ...