三层架构:

表现层:用于展示数据

业务层:处理业务需求

持久层:和数据库交互的

3.持久层技术解决方案:

JDBC技术:

Connecction

PreparedStatement

ResultSet

Spring的JdbcTemplate

APACHE的Dbutils

以上都不是框架,

JDBC是规范

Spring中的JDBCTEMPLATE和Apache中的DBUtils都只是工具类

4.mybatis的概述

mybatis是一个持久层框架,用java编写

它封装了jdbc操作的很多细节,使开发者只需要关注sql语句本身,而无需关注注册驱动,创建连接等繁杂过程

它使用orm思想思想了结果集的封装

ORM:

Object Relateional Mappging 对象关系映射

简单来说:

就是把数据库表和实体类及实体类的属性对应起来,让我们可以操作实体类就实现操作数据库表

5.mybatis的入门

mybatis的环境搭建





导入mybatis的依赖



接下来创建mybatis的主配置文件



再继续创建映射配置文件



环境搭建的注意事项

第一个:创建IUserDao.xml和IUser.java名称为了和之前的知识保持一致。

在mybatis中它把持久层的操作接口和映射文件也叫做:Mapper

所有:IUserDao和IUserMapper是一样的

第二个:在idea创建目录的时候,和包是不一样的

包在创建时:com.itheima.dao它是三级结构

目录com.ithema.dao是一级结构

第三个:mybatis的映射配置文件位置必须和dao接口的包结构相同

第四个:映射配置文件的mapper标签namespace属性的取值必须是dao接口的全限定类名

第五个:映射配置文件的操作配置,id属性的取值必须是dao接口的方法名

当我们遵守第三,四,五之后,开发中就不需要再写dao的实现类(方便快捷)

mybatis的入门案例



第一步:读取配置文件

第二步:创建SqlSessionFactory工厂

第三部:创建SqlSession

第四步:创建Dao接口的代理对象

第五步:执行dao中的方法

第六步:释放资源

注意事项:

不要忘记再映射配置中告知mybatis要封装到哪个实体类中

配置方式:指定实体类的全限定类名

二.mybatis基于注解的入门案列

把IUserDAO.xml移除,在dao接口的方法上使用@Select注解,并且指定SQL语句

同时需要在SqlMapConfig.xml中的mapper配置时,使用class属性指定dao接口的全限定类





明确:

我们在实际开发中,都是越简便越好,所有都是采用不写dao实现类的方式

mybatis框架学习第一天的更多相关文章

  1. MyBatis框架之第一篇

    MyBatis 本是apache的一个开源项目iBatis, 2010年这个项目由apache software foundation 迁移到了google code,并且改名为MyBatis.201 ...

  2. Struts2框架学习第一章——Struts2概述

    本章要点 —  Web应用的发展 —  Model 1和Model 2 —  MVC思想 —  MVC模式的优势 — 常用MVC框架及其特征 —  Struts 1的基本结构及其存在的问题 —  We ...

  3. 03 Mybatis框架---学习笔记1--框架的概念及优势

    1.框架的概念 框架其实就是某种应用的半成品,就是一组组件,供你选用完成你自己的系统.简单说就是使用别人搭好的舞台,你来做表演.而且,框架一般是成熟的,不断升级的软件.框架是我们软件开发中的一套解决方 ...

  4. mybatis框架学习:

    一.什么是框架 它是我们软件开发中的一套解决方案,不同的框架解决的是不同的问题 使用框架的好处: 框架封装了很多的细节,使开发者可以使用极简的方式实现功能 大大提高开发效率 二.三层框架 表现层: 用 ...

  5. scrapy框架学习第一天

    今天是学习的第一天: 知识总结如下: 1,调试器相当于原料出口地(URL提供) 2,scrapy相当于中间加工商(具有销售权利)封装URL为request(请求) 3,下载器使用request(请求) ...

  6. hibernate框架学习第一天:hibernate介绍及基本操作

    框架辅助开发者进行开发,半成品软件,开发者与框架进行合作开发 Hibernate3Hibernate是一种基于Java的轻量级的ORM框架 基于Java:底层实现是Java语言,可以脱离WEB,在纯J ...

  7. Artech的MVC4框架学习——第一章初步认识ASP.NET MVC

    前言: Artech觉得掌握ASP.NET MVC具有三个层次. 第一层了解基本的编程模式,掌握Controller和View的定义方式,知道路由如何注册以及验证规则如何定义. 第二个层次要求我们对A ...

  8. Mybatis框架学习总结-Mybatis框架搭建和使用

    Mybatis介绍 Mybatis是一个支持普通SQL查询,存储过程,和高级映射的优秀持久层框架.Mybatis消除了几乎所有的JDBC代码和参数的手工设置以及对结果集的检索封装.Mybatis可以使 ...

  9. Mybatis框架学习1:入门

    一框架介绍 1.Mybatis介绍 ​ MyBatis 本是apache的一个开源项目iBatis, 2010年这个项目由apache software foundation 迁移到了google c ...

随机推荐

  1. C语言编程 菜鸟练习100题(51-60)

    [练习51]矩阵转置 0. 题目: 矩阵的转置 1. 分析: 练习使用 for 循环嵌套,多维数组的表达. 2. 程序: #include <stdio.h> int main() { i ...

  2. Django settings 描述

    """ Django settings for log_collect_statistics project. Generated by 'django-admin st ...

  3. IAP 订阅后端踩坑总结之 Google 篇

    前言: 本文利用 python 作为后端服务器, 且接入的 Google Cloud Pub/Sub 服务作为实时开发者通知, 未记录具体支付流程的代码,只记录了再开发过程中较为耗时,个人认为比较麻烦 ...

  4. 书列荐书 |《至关重要的关系》 【美】里德&#183;霍夫曼

    本书的内容不算多,堪称精辟,有些东西甚至可以作为指导思想.括号内为书列君书评. 经典语录: 每个人都是企业家!(否则你无法最大化努力!) 创业和做人是相通的.我们要有计划,要执着,但是也要有弹性,懂得 ...

  5. CUDA 内存统一分析

    CUDA 内存统一分析 关于CUDA 编程的基本知识,如何编写一个简单的程序,在内存中分配两个可供 GPU 访问的数字数组,然后将它们加在 GPU 上. 本文介绍内存统一,这使得分配和访问系统中任何处 ...

  6. VB 老旧版本维护系列---有点懵逼的webserver访问

    有点懵逼的webserver访问 '定义webserver地址 Dim postUrl As String = "" '定义webserver所需xml字符串参数 Dim xmlR ...

  7. Spring Cloud Alibaba(14)---SpringCloudAlibaba整合Sleuth

    SpringCloudAlibaba整合Sleuth 上一篇有写过Sleuth概述,Spring Cloud Alibaba(13)---Sleuth概述 这篇我们开始通过示例来演示链路追踪. 一.环 ...

  8. Linux学习笔记:linux命令之目录处理命令

    目录处理命令 ls 命令名称:ls 英文原意:list 执行权限:所有用户 功能:显示目录文件 语法:ls 选项[-ald] [文件或目录] -a:显示所有文件,包括隐藏文件 -l:详细信息显示 -d ...

  9. 仅用CSS几步实现赛博朋克2077风格视觉效果

    背景 文章开始之前先简单了解下什么是 赛博朋克,以及什么是 赛博朋克2077. 赛博朋克(Cyberpunk)是"控制论.神经机械学"与"朋克"的结合词,背景大 ...

  10. selenium 隐式等待与显式等待

    1.隐式等待:driver.implicitly_wait() driver = webdriver.Chrome()driver.implicitly_wait(10)     #获取元素时最多会等 ...