Mybatis初步认识
分三层
第一章
1.三层架构
界面层:和用户打交道,接收用户的请求参数明显是处理结果的(jsp,html,servlet)
业务逻辑层:接收了界面层传递的数据,计算逻辑,调用数据库,获取数据
数据访问层:就是访问数据库,执行对数据的查询,修改,删除等等的
三层对应的包
界面层:controller包(servlet)
业务逻辑层:servlce包(XXXservlce类)
数据访问层:dao包(XXXDao类)
三层中类的的交互
用户使用界面层-->业务逻辑层-->数据访问层(持久层)-->数据库(mysql)
三层对应的处理框架
界面层---servlet---springmvc(框架)
业务逻辑层---service类---spring(框架) 1,2两个比较大 所以推荐先学习第三个
数据访问层--dao类---mybatis(框架)
2,框架(Framework)
框架是一个舞台,一个模板,
模板:
1.规定好了一些条款,内容。
· 2.加入自己的东西
框架是一个模板
1.框架中定义好了一些功能,这些功能是可用的
2。可以加入项目中自己的功能,这些功能可以利用框架中写好的功能
框架是一个软件,半成品的软件,定义好了一些基础功能,需要加入你的功能就是完整的,基础功能是可重复使用的,可升级的
框架特点:
1.框架一般不是全能的,不能做所有事情
2. 框架是针对某一个领域有效,特长在一个方面,比如mybatis做数据库操作强,但是他不能做其他的
3.框架是一个软件!
mabatis框架
一个框架,早期叫做ibatis,代码在github
mybatis是 MyBatis SQL Mapper Framework for Java(sql映射框架)
1)sql mapper(sql映射)
可以把数据库表中的一行数据 映射为一个java对象
一行数据可以看作是一个java对象。操作这个对象,就相当于操作表中的数据
2)Data Access Object(DAOs):数据访问,对数据库执行增删改查。
mybatis提供了哪些功能
1.提供了创建Connection,Statement,Resultset的能力,不用开发人员创建这些对象
2.它提供了执行sql语句的能力,不用你执行sql
3.提供了循环sql,把sql的结果转为java对象,List集合的能力
while(rs,next()){
Student stu = new Student();
stu.setId(rs.getInt('"id"));
stu,setName(rs.getString(""name));
stu.setAge(rs.getInt("age"));
stuList.add(stu);
}
4.提供了关闭资源的能力,不用你关闭Connection,Statement,Resultset
开发人员做的是,提供sql语句(站在巨人的肩膀上哈哈哈哈哈)
最后是开发人员提供sql语句--->mybatis处理sql--->开发人员得到List计集合或java对象(表中数据)
总结:mybatis是一个sql映射框架,提供的数据库的操作能力。增强的JDBC
使用mybatis让开发人员集中精神写sql就可以了,而不必关心Connection,Statement,Resultset等的创建,销毁,sql的执行。
Mybatis初步认识的更多相关文章
- Mybatis初步详细配置
1.Mybatis所需包 下载地址:https://github.com/mybatis/mybatis-3/releases,其中log4j是日志包,mysql是数据库所需包,需自行下载 2.项目结 ...
- mybatis 初步使用(IDEA的Maven项目, 超详细)
目录 创建 Maven 项目 Maven配置 pom.xml 创建数据库 配置Mybatis 配置mybatis的XML文件 创建实体类和对应的Mapper.xml 测试 源码 @ 创建 Maven ...
- mybatis初步理解
mybatis概念 mybatis 是一款轻量级的orm的数据持久框架,封装jdbc 对开发提供了便利,但是性能会比jdbc低,从开发的角度来说,现在是比较流行的 掌握上比较容易,也支持缓存,级联 ...
- Spring 14: Spring + MyBatis初步整合开发
SM整合步骤 预期项目结构 新建数据库和数据表 springuser.sql脚本如下 create database ssm; use ssm; create table users( userid ...
- mybatis初步配置容易出现的问题
The server time zone value 'Öйú±ê׼ʱ¼ä' is unrecognized or represents more than one time zone. You ...
- mybatis 缓存的使用, 看这篇就够了
目录 1 一级缓存 1.1 同一个 SqlSession 1.2 不同的 SqlSession 1.3 刷新缓存 1.4 总结 2 二级缓存 2.1 配置二级缓存 2.2 使用二级缓存 2.3 配置详 ...
- mybatis源码-解析配置文件(三)之配置文件Configuration解析
目录 1. 简介 1.1 系列内容 1.2 适合对象 1.3 本文内容 2. 配置文件 2.1 mysql.properties 2.2 mybatis-config.xml 3. Configura ...
- mybatis源码-解析配置文件(二)之解析的流程
目录 1. 简介 2. 配置文件解析流程分析 2.1 调用 2.2 解析的目的 2.3 XML 解析流程 2.3.1 build(parser) 2.3.2 new XMLConfigBuilder( ...
- mybatis源码-解析配置文件(一)之XML的DOM解析方式
目录 简介 Java 中 XML 文件解析 解析方式 DOM 解析 XML 新建 XML 文件 DOM 操作相关类 Java 读取 XML 文件 一起学 mybatis @ 简介 在之前的文章< ...
随机推荐
- Wormholes (spfa)
一种路是双向的,路的长度是正值:另一种路是单向的,路的长度是负值: 如果有负环输出YES:否则输出NO:不同的路可能有相同的起点和终点:必须用邻接表 While exploring his many ...
- E - E(最短路解决源点到多点,多点到源点的和(有向图))
问从1号点到各个点的距离+各个点到1号点之间的距离和的最小值 详解键连接https://www.cnblogs.com/csx-zzh/p/13411588.html In the age of te ...
- poj3260 The Fewest Coins
Description Farmer John has gone to town to buy some farm supplies. Being a very efficient man, he a ...
- SSM框架整合(Spring + SpringMVC + MyBatis)
搭建环境 使用Spring(业务层)整合其他的框架SpringMVC(表现层)和MyBatis(持久层) Spring框架 创建数据库表 CREATE DATABASE ssm; USE ssm; C ...
- LINUX - 寄存器和堆栈
堆栈模型: 函数调用: EBP:ESP EBP当前调用函数的栈底: ESP当前调用函数的栈顶: ---------------------------------------------------- ...
- Win10永久禁用驱动程序强制签名
在win10下用一个命令就可以禁用驱动程序强制签名 1.禁止强制签名,以管理员的身份运行cmd 执行以下命令 bcdedit.exe /set nointegritychecks on 恢复默认验证, ...
- SQL优化汇总
今天面某家公司,然后问我SQL优化,感觉有点忘了,今天特此总结一下: 总结得是分两方面:索引优化和查询优化: 一. 索引优化: 1. 独立的列 在进行查询时,索引列不能是表达式的一部分,也不能是函数的 ...
- Leetcode(105)-从前序与中序遍历序列构造二叉树
根据一棵树的前序遍历与中序遍历构造二叉树. 注意:你可以假设树中没有重复的元素. 例如,给出 前序遍历 preorder = [3,9,20,15,7] 中序遍历 inorder = [9,3,15, ...
- 可重入锁ReentrantLock解析
说到可重入锁,先从AQS的ConditionObject说起,AQS的内部类ConditionObject是构建显示锁条件队列的基础.之前AQS的解析没有说这个内部类,这里和ReentrantLock ...
- git hooks All In One
git hooks All In One $ xgqfrms git:(main) cd .git/ $ .git git:(main) ls COMMIT_EDITMSG HEAD branches ...