MyBatis总结与复习
Spring 主流框架
- 依赖注入容器/AOP实现
- 声明式事务
- 简化JAVAEE应用
- 粘合剂,将大家组装到一起
SpringMVC
1. 结构最清晰的MVC Model2实现
2. 高度可配置,支持多种视图技术
3. 定制化开发
MYBatis
半自动化的ORM实现
DAO层
动态SQL
MYBatis特点
1. 基于SQL语法,简单易学
2. 能了解底层封装过程
3. SQL语句封装在配置文件中,便于统一管理与维护,降低程序的耦合度
4. 方便程序代码调试
MYBatis框架优缺点
优点一:
1.与JDBC相比,减少了50%以上的代码量
2.最简单的持久化框架,小巧并简单易学
3.SQL代码从程序代码中彻底分离,可重用
4.提供XML标签,支持对象与数据库的ORM字段映射
缺点:
- SQL语句编写工作量大,对开发人员有一定要求
- 数据库移植性差
MYBatis的核心对象
SQLSessionFactoryBuilder
SQLSessionFactory
SQLSession
Mybatis-config.xml系统核心配置文件
Mapper.xml SQL隐射文件
SQLSession的两种使用方式
通用SQLSession实例直接运行映射的SQL语句
基于MAPPer接口方式操作数据
MYBatis中非集成环境下的最佳实践
SQLSessionFactryBuilder 用过即丢,推荐作用域范围:方法体内
SQLSessionFactory 最佳作用域范围:应用的全部作用域
生命周期与应用的生命周期相同
SQLsession
线程级
一个request请求期间
MYbatis-config.xml系统核心配置文件
重要的:settings 修改MYBatis在运行时的行为方式
Typealiases为JAVA类型命名一个别名(简称)
Environment环境变量
TransactionManager事务管理器
DataSource数据源
Mappers 映射器
映射器,定义SQL映射语句
须在配置中引用Mapper映射文件
方法一:
<!—将mapper映射文件加入到系统核心配置文件中>
<mappers>
<mappers resurce=”cn/smbms/dao/user/Usermapper.xml”>
</mappers>
方式二:使用URL获取资源
<mappers>
<mappers url=”file:///E:/×××.xml”>
<mappers url=” file:///E:/×××.xml”>
</mappers>
MyBatis总结与复习的更多相关文章
- Spring集成MyBatis的使用-使用Mapper映射器
Spring集成MyBatis使用 前面复习MyBatis时,发现在测试时,需要手动创建sqlSessionFactory,Spring将帮忙自动创建sqlSessionFactory,并且将自动扫描 ...
- SSM
今天内容安排 1:复习mybatis 2:复习springMVC 3:springMVC+spring+mybatis组合起来,搭建一个web应用开发的框架 4:用户管理系统,针对用户的CRUD操作, ...
- mybatis由浅入深day02_课程复习_1订单商品数据模型分析
mybatis第二天 高级映射 查询缓存 和spring整合 课程复习: mybatis是什么? mybatis是一个持久层框架,mybatis是一个不完全的ORM框架.sql语句需要程序员自己去编 ...
- mybatis复习01
1.mybatis的历史: mybatis是apache的一个开源项目,2010被google收购,转移到google code. mybatis是一个优秀的持久层框架,对jdbc操作进行了封装,是操 ...
- mybatis学习笔记之基础复习(3)
mybatis学习笔记之基础复习(3) mybatis是什么? mybatis是一个持久层框架,mybatis是一个不完全的ORM框架.sql语句需要程序员自己编写, 但是mybatis也是有映射(输 ...
- Java秋招面试复习大纲(二):Spring全家桶+MyBatis+MongDB+微服务
前言 对于那些想面试高级 Java 岗位的同学来说,除了算法属于比较「天方夜谭」的题目外,剩下针对实际工作的题目就属于真正的本事了,热门技术的细节和难点成为了面试时主要考察的内容. 这里说「天方夜谭」 ...
- Mybatis老手复习文档
Mybatis学习笔记 再次学习Mybatis,日后,有时间会把这个文档更新,改的越来越好,然后,改成新手老手通用的文档 1.我的认识 Mybatis 是一个持久层框架,(之前 我虽然学了这个myba ...
- Mybatis 复习 Mybatis 配置 Mybatis项目结构
pom.xml文件已经贴在了文末.该项目不使用mybatis的mybatis-generator-core,而是手写Entities类,DaoImpl类,CoreMapper类 其中,Entities ...
- MyBatis复习【简单配置CRUD】
这里的案例集成了log4j的日志框架,项目架构: 用到的jar文件 添加配置文件:mybatis-config.xml 和dao层配置文件StudentDao.xml 这里书写了个简单的案例仅为了说 ...
随机推荐
- pip 在windows下如何升级
建议:由于是pip的国外的,在更新之前先开启vpn,这样更新会顺畅些. 官方网页要求在 cmd中输入以下命令进行 pip的 更新: python -m pip install -U pip 更新成功后 ...
- wpf label下划线不显示的问题
突然发现label设置content的值为字符串时,如果字符串中包含_的话,在展示出来时下划线就不见了,百度了一下,发现了问题根源,说的label的ContentPresenter默认将下划线处理成快 ...
- 7、RNAseq Downstream Analysis
Created by Dennis C Wylie, last modified on Jun 29, 2015 Machine learning methods (including cluster ...
- 发现fork容易出错的一个地方
今天在看代码时发现一段有意思的代码 #include<stdio.h> #include<stdlib.h> #include<unistd.h> #include ...
- htmlparser API
htmlparser所有的filter htmlparser所有的Tags htmlparser API: http://htmlparser.sourceforge.net/javadoc/inde ...
- netty对http协议解析原理解析(转载)
本文主要介绍netty对http协议解析原理,着重讲解keep-alive,gzip,truncked等机制,详细描述了netty如何实现对http解析的高性能. 1 http协议 1.1 描述 标示 ...
- C++哪些函数不能是虚函数
1. inline是编译时展开,必须有实体:(不考虑不展开的假inline) 2. static属于class自己的,也必须有实体: 3. 构造函数.复制构造函数.virtual函数基于vta ...
- 程序员笔记|详解Eureka 缓存机制
引言 Eureka是Netflix开源的.用于实现服务注册和发现的服务.Spring Cloud Eureka基于Eureka进行二次封装,增加了更人性化的UI,使用更为方便.但是由于Eureka本身 ...
- 飘逸的python - 单例模式乱弹
方法一:装饰器 利用“装饰器只会执行一次”这个特点 def singleton(cls): instances = []# 为什么这里不直接为None,因为内部函数没法访问外部函数的非容器变量 def ...
- Unity Shader着色器优化
https://mp.weixin.qq.com/s?__biz=MzU5MjQ1NTEwOA==&mid=2247493518&idx=1&sn=c51b92e9300bcf ...