1. mybatis是什么?
  2. mybatis是一个持久层框架,是apache下的开源项目,前身是itbatis,是一个不完全的ORM框架(因为mybatis提供输入和输出的映射,需要程序员自己写sql语句),所以mybatis重点是对 sql语句的灵活操作。
  3. 适合用于:需求变化频繁, 数据模型不固定的项目,例如:互联网项目。
  4.  
  5. mybatis架构?
  6. SqlMapConfig.xml(名称不固定),配置内容:数据源、事务、propertiestypeAliasessettingsmapper配置。
  7.  
  8. SqlSessionFactory--会话工厂,作用是创建SqlSession,实际开发中以单例模式管理 SqlSessionFactory
  9.  
  10. SqlSession--会话,是一个面向用户(程序员)的接口,使用mapper代理方法开发是不需要程序员直接调用sqlSession的方法。是线程不安全,最佳适用场合方法体内。
  11.  
  12. mybatis开发dao的方法:
  13. 1、原始dao开发方法,需要程序员编写dao接口和实现类,此方法在当前企业中还有使用,因为ibatis使用的就是原始dao开发方法。
  14. 2mapper代理方法,程序员只需要写mapper接口(相当于dao接口),不用写实现类,mybatis自动根据mapper接口和mapper接口对应的statement自动生成代理对象(接口实现类对象)。
  15. 开发需要遵循规则:
  16. 1mapper.xmlmapper.java连接起来,因此mapper.xmlnamespacemapper接口的全限定名
  17. 2mapper.xmlstatementidmapper接口方法名
  18. 3mapper.xmlstatement的输入映射类型(parameterType)和mapper接口方法输入参数类型一致
  19. 4) mapper.xmlstatement的输出映射类型(resultType)和mapper接口方法返回结果类型一致
  20.  
  21. resultTyperesultMap都可以完成输出映射:
  22. resultType映射要求sql查询的列名和输出映射pojo(自定义java类)类型的属性名一致
  23. resultMap映射时对sql查询的列名和输出映射pojo类型的属性名作一个对应关系。
  24.  
  25. 动态sql
  26. #{}和${}完成输入参数的属性值获取,通过OGNL获取parameterType指定pojo的属性名。
  27. #{}:占位符号,好处防止sql注入
  28. ${}:sql拼接符号
  29. if
  30. where
  31. foreach
  1. 1、使用resultMap完成高级映射(重点)
  2. 学习商品订单数据模型(一对一、一对多、多对多)
  3. resultMap实现一对一、一对多、多对多
  4. 延迟加载
  5.  
  6. 2、查询缓存(重点)
  7. 一级缓存
  8. 二级缓存
  9.  
  10. 3mbatisspring整合(重点)
  11.  
  12. 4mybatis逆向工程(常用)
  1. 商品订单数据模型
  2. 学会在企业中如何去分析陌生表的数据模型:
  3. 1、学习单表记录了什么东西(去学习理解需求)
  4. 2、学习单表重要字段的意义(优先学习不能为空的字段)
  5. 3、学习表与表之间的关系(一对一、一对多、多对多)
  6. 通过表的外键分析表之间的关系
  7. 注意:分析表与表之间的关系时是要建立在具体 的业务意义基础之上

mybatis0201 01复习的更多相关文章

  1. JS高级. 01 复习JS基础

    1. JavaScript 包含: ____, ____, 和 ____. 2. JavaScript 的基本类型有 ____, ____, 和 ____. 3. JavaScript 的复合类型有 ...

  2. 23----2013.07.01---Div和Span区别,Css常用属性,选择器,使用css的方式,脱离文档流,div+css布局,盒子模型,框架,js基本介绍

    01 复习内容 复习之前的知识点 02演示VS创建元素 03div和span区别 通过display属性进行DIV与Span之间的转换.div->span 设置display:inline   ...

  3. python就业班-淘宝-目录.txt

    卷 TOSHIBA EXT 的文件夹 PATH 列表卷序列号为 AE86-8E8DF:.│ python就业班-淘宝-目录.txt│ ├─01 网络编程│ ├─01-基本概念│ │ 01-网络通信概述 ...

  4. Python全栈开发第二期课表

     day01-python 全栈开发-基础篇                 01 开课介绍 01:55:13 ★  02 开课介绍02 01:28:31 ★  03 开课介绍03 00:22:55 ...

  5. js初学总结

    基础 交换变量方式 //利用第三方变量进行交换 var num1 = 10; var num2 = 20; var temp; temp = num1; num1 = num2; num2 = tem ...

  6. 满血复活前的记录(持续更新ing)

    时隔一年重新开启算法竞赛征程. 该记录大多为老课件.已经做过的习题重做和已经看过的书本重看 7.21 下午到山大 娄晨耀basic_algorithm课件中的内容: 复习线性筛原理 复习差分 做完Co ...

  7. COGS 68. [NOIP2005] 采药【01背包复习】

    68. [NOIP2005] 采药 ★   输入文件:medic.in   输出文件:medic.out   简单对比 时间限制:1 s   内存限制:128 MB [问题描述] 辰辰是个天资聪颖的孩 ...

  8. COGS 144. [USACO Dec07] 魅力手镯【01背包复习】

    144. [USACO Dec07] 魅力手镯 ★   输入文件:charm.in   输出文件:charm.out   简单对比 时间限制:1 s   内存限制:8 MB 译 by CmYkRgB1 ...

  9. day 21 01 序列化模块和模块的导入的复习以及包的初识

    day 21 01 序列化和模块的导入的复习以及包的初识 1.序列化模块 什么是序列化模块:数据类型转化成字符串的过程就是序列卷 为什么要使用序列化模块:为了方便存储和网络传输 三种序列化模块: (1 ...

随机推荐

  1. 大数据量查询优化——数据库设计、SQL语句、JAVA编码

    数据库设计方面: 1.对查询进行优化,应尽量避免全表扫描,首先应考虑在 where 及 order by 涉及的列上建立索引. 2.应尽量避免在 where 子句中对字段进行 null 值判断,否则将 ...

  2. canvas仿黑客帝国的字符下落

    ? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 ...

  3. Linux Screen命令使用

    参考URL: http://jingyan.baidu.com/article/295430f128d8ea0c7e005089.html ~~~~~~~~~~~~~~~~~~~~~~~~ 其它的不提 ...

  4. 2.6.2 Notification的功能与用法

    <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout ...

  5. Node.js权威指南 (12) - Node.js中的其他模块

    12.1 使用dns模块解析域名 / 313 12.1.1 使用resolve方法将域名解析为DNS记录 / 313 12.1.2 使用lookup方法查询IP地址 / 315 12.1.3 使用re ...

  6. 清理ms sql server 大日志文件数据

    1.手动分离数据库: 2.手动删除日志文件: 3.重新生成日志文件: CREATE DATABASE FMIS0 ON (FILENAME = 'E:\FMIS0_DATA\FMIS0-Date') ...

  7. mac上做透明图片, png, alpha

    现在OS X中自带的[预览]功能十分强大,我们甚至可以通过预览来直接制作一些透明效果的PNG图片,当做图片素材(例如图标)使用.这里要用到的是[预览]中的“即时Alpha”工具. -首先我们要使用预览 ...

  8. Unity3D插件之Easy Touch 3.1(1): Easy Joystick

    先看官方介绍:https://www.assetstore.unity3d.com/#/content/3322 (Allows you to quickly and easily develop a ...

  9. [C#]网络编程系列专题二:HTTP协议详解

    转自:http://www.cnblogs.com/zhili/archive/2012/08/18/2634475.html 我们在用Asp.net技术开发Web应用程序后,当用户在浏览器输入一个网 ...

  10. [转]NHibernate之旅(1):开篇有益

    本节内容 NHibernate是什么 NHibernate的架构 NHibernate资源 欢迎加入NHibernate中文社区 作者注:2009-11-06已更新 NHibernate开篇有益 学习 ...