MyBatis简介

1、MyBatis;和数据库进行交互;持久化层框架(SQL映射框架)

1)、从原始的JDBC-----dbutils(QueryRunner)-------JdbcTemplate----xxx;不用的

称为工具

工具:一些功能的简单封装

    框架:某个领域的整体解决方案;

缓存,考虑异常处理问题,考虑部分字段映射问题。。。


不用原生JDBC:

1)、麻烦;

2)、sql语句是硬编码在程序中的耦合(数据库层的和java编码耦合)


2)、Hibernate-数据库交互的框架(ORM框架)   (使用各种框架,全自动的框架)

ORM(Object Relation Mapping)对象关系映射;

@Table("t_employee")

class Employee{

private Integer empId;

private String empName;

}

session.get("1",Employe.class);

缺点:

1)、定制sql;

2)、HQL;SQL;

3)、全映射框架; 部分字段映射很难;能做;


注:最好有一个框架能支持定制化sql,而且还功能强大;sql也不要硬编码在java文件中(导致维护修改起来比较麻烦);



1)、MyBatis将重要的步骤抽取出来可以人工定制,其他步骤自动化;

2)、重要步骤都是写在配置文件中(好维护);

3)、完全解决数据库的优化问题

4)、MyBatis底层就是对原生JDBC的一个简单封装

5)、既将java编码与sql抽取了出来,还不会失去自动化功能;半自动的持久化层框架

6)、mybatis是一个轻量级的框架

MyBatis简介——半自动的持久化层框架(SQL映射框架)|| 支持定制化sql相关推荐

  1. MyBatis是持久化层框架(SQL映射框架)-操作数据库

    MyBatis是持久化层框架(SQL映射框架)-操作数据库 1.环境搭建 1).创建一个java工程: 2).创建测试库,测试表,以及封装数据的javaBean,和操作数据库的dao接口 创建表:自己 ...

  2. 【持久化框架】Mybatis简介与原理

    从这篇博文开始我们学习一下Mybatis,希望大家提出宝贵的建议. 什么是Mybatis MyBatis 本是apache的一个开源项目iBatis, 2010年这个项目由apache softwar ...

  3. mybatis学习(1):【持久化框架】Mybatis简介与原理

    从这篇博文开始我们学习一下Mybatis,希望大家提出宝贵的建议. 什么是Mybatis MyBatis 本是apache的一个开源项目iBatis, 2010年这个项目由apache softwar ...

  4. 【java学习】MyBatis使用——Java 数据持久层框架

    1,概念 MyBatis是一个数据持久层(ORM)框架,封装了jdbc.把实体类和SQL语句之间建立了映射关系,是一种半自动化的ORM实现.MyBATIS需要开发人员自己来写sql语句,这可以增加了程 ...

  5. (Mybatis)Mybatis简介和初步使用

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

  6. Mybatis简介与原理

    转载自  Mybatis简介与原理 什么是Mybatis MyBatis 本是apache的一个开源项目iBatis, 2010年这个项目由apache software foundation 迁移到 ...

  7. Mybatis简介和优缺点

    一.什么是Mybatis? Mybatis是一个半自动的ORM持久层框架,内部封装了JDBC.作为开发者只需要关注sql语句本身.Mybatis是通过xml或注解的方式将需要执行的各种statemen ...

  8. MyBatis简介与配置

    一.MyBatis简介与配置MyBatis+Spring+MySql MyBatis学习 之 一.MyBatis简介与配置MyBatis+Spring+MySql MyBatis学习 之 二.SQL语 ...

  9. 6、mybatis中的sql映射文件详解(1)

    对于初学者,如果进行mybatis的学习呢?我总结了几点,会慢慢的更新出来.首先大家需要了解mybatis是什么.用mybatis来做什么.为什么要用mybatis.有什么优缺点:当知道了为什么的时候 ...

最新文章

  1. 免费教材丨第55期:Python机器学习实践指南、Tensorflow 实战Google深度学习框架
  2. Linux SSH无交互式访问配置
  3. 你的CSDN粉丝为何那么少
  4. tkinter 笔记 :主体框架窗口内容
  5. Aruba与中国电信国际有限公司达成战略合作 助力中国企业扬帆出海
  6. 编译后没有taget文件夹_maven资源文件的相关配置才会在编译后的target里面有
  7. [Codeforces967C]Stairs and Elevators(二分查找)
  8. TCMalloc内存分配器如何减少内存碎片?
  9. linux桌面版本安装MSDM,Parallel_s desktop怎么安装linux系统
  10. [转]——软件开发人员如何成长
  11. 【leetcode】617. Merge Two Binary Trees
  12. 调度算法——时间片轮转、优先级、多级反馈队列(例题详细!!!)
  13. Odin插件与基于元数据的编辑器实现
  14. FPGA之道(6)软件编程思路与FPGA编程思路的变革
  15. 和“目标”相关的名言
  16. 图的邻接矩阵存储(简单代码实现)
  17. latex 字母上面加符号
  18. 后端:发送短信(腾讯云)-nodejs
  19. 使用QUuid生成唯一码
  20. java中图标_java中图标按钮

热门文章

  1. [源码和文档分享]基于FFMEPEG-MATLAB和C#-SQL SERVER构建的手机录音数据库及特征分析...
  2. 2.5 linux C 进程与多线程入门--(5)使用互斥量进行同步
  3. javamail 收邮件并解析附件
  4. Visio对象插入Word后周围空白过大
  5. 步骤详解安装Apache web服务器
  6. Dell R740服务器添加GPU卡
  7. 不动产登记进入倒计时 哪些房子必须要卖掉?
  8. 显示android缓存文件,android – 使用ACTION_VIEW在缓存目录中打开文件
  9. 扬州古城门高挂大红春联迎新春 环卫工受邀揭幕
  10. centos7下安装mariadb