MyBatis概述

目录

1. 软件中常见的开发结构

    1. web常用架构, mvc(数据, 视图, 控制器)

    2. 三层架构

        三层中类的交互关系

        三层对应的处理框架

2. 框架

    模板的特点

    框架的特点

使用JDBC的缺陷

MyBatis框架

什么是SQL映射?

MyBatis功能

MyBatis好处

总结


1. 软件中常见的开发结构

    1. web常用架构, mvc(数据, 视图, 控制器)

    2. 三层架构: 

        1.界面层(表示层, 视图层) 和用户打交道的, 接受用户的请求参数, 显示处理结果的(jsp, html, servlet)
            controller包(servlet类)
        2.业务逻辑层: 接受界面层传出来的数据, 检查数据, 计算业务逻辑, 调用数据库访问层获取数据
            service包(XXXService类)
        3.数据访问层(持久层): 和数据打交道, 完成数据的增删改查的
            dao包(XXXDao类)
        

        三层中类的交互关系

          用户使用界面层-->业务逻辑层-->数据访问层-->数据库-->数据访问层-->业务逻辑层-->用户使用界面层
        

        三层对应的处理框架

        层次        无框架时技术        框架
        --------------------------------------------------
        页面层        servlet类        springMVC
        业务逻辑层    service类        spring
        数据访问层    dao类            MyBatis


2. 框架

    框架是是一个模板

    模板的特点

        1. 规定好了一些条款和内容
        2. 可以加入自己的东西
    
    框架是是一个模板

        1. 框架中定义好了一些功能, 这些功能是可用的
        2. 可以加入项目中自己的功能, 这些功能可以利用框架中写好的功能
    
    框架是一个半成品软件, 加入你的功能后才是完整的

    框架的特点

        1. 框架不是全能的, 不能做所有事情
        2. 框架一般是针对某个领域的, 特长在某一个方面, 所以得学多个框架

使用JDBC的缺陷

    1. 代码比较多,开发效率低
    2. 需要关注 Connection ,Statement, ResultSet 对象创建和销毁
    3. 对 ResultSet 查询的结果,需要自己封装为 List
    4. 重复的代码比较多些
    5. 业务代码和数据库的操作混在一起

MyBatis框架

    是一个持久层(数据访问层)的框架, 是一个SQL映射框架

    什么是SQL映射?

        可以把数据库表中的一行数据映射为一个java对象, 
        一行数据可以看做一个Java对象, 操作这个对象就是操作数据库的表
    

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"));
        //从数据库取出数据转为 Student 对象,封装到 List 集合
        stuList.add(stu);
      }

    4.提供了关闭资源的能力,不用你关闭Connection, Statement, ResultSet
    开发人员做的是: 提供sql语句
    最后是: 开发人员提供sql语句--mybatis处理sql---开发人员得到List集合或java对象(表中的数据)

MyBatis好处

    减轻使用 JDBC 的复杂性,不用编写重复的创建 Connetion , Statement ; 不用编写关闭资源代码。
    直接使用 java 对象,表示结果数据。让开发者专注 SQL 的处理。 其他分心的工作由 MyBatis 代劳。

总结

    mybatis是一个sql映射框架,提供的数据库的操作能力。增强的JDBC,
    使用mybatis让开发人员集中精神写sql就可以了,不必关心Connection,Statement,ResultSet
    的创建,销毁,sql的执行。
 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值