zoukankan      html  css  js  c++  java
  • 存储层技术:JDBC、Hibernate、Mybatis三者之间的比较学习

     

    JDBC     Hibernate Mybatis   

    (Java  DataBase Connnection)

    是通过JAVA访问数据库 

    对JDBC的轻量封装

    像操作对象操作数据库 

    对SQL的轻量封装

    是ORM框架

    前身(ibatis)

    导入mysql包 项目结构 项目结构
    CRUD CRUD CRUD

    查询

    executeQuery 执行SQL查询语句

    查询 查询

    特殊操作

    (获取自增长id)

    通过Statement的getGeneratedKeys

    获取该id

    (获取表的元数据)

    查询总数 查询总数

    预编译Statement

    (PreparedStatement)

    JAVA里唯二的基1的地方

    ResultSet也是基1的

       

    execute  executeUpdate

    (都可以执行增加,删除,修改)

    executeUpdate返回的是int,

    表示有多少条数据受到了影响。

    execute返回boolean类型,

    true表示执行的是查询语句,

    false表示执行的是

    insert,delete,update等等

       
      关系(三种) 关系(三种)
        动态SQL
        日志

    事务

    处于同一个事务当中,要么都成功,

    要么都失败

    事务 事务

    ORM(Object Relationship Database Mapping )

    对象和关系数据库的映射

    一个对象,对应数据库里的一条记录

       

    DAOData Access Object

    数据访问对象

    把数据库相关的操作都封装在这个类里面,

    其他地方看不到JDBC的代码

       
      延迟加载 延迟加载
      级联  
      缓存(一级、二级) 缓存(一级、二级)

     分页

    String sql =
     "select * from hero limit "
    +start + "," + count;

     

    分页 分页
        PageHelper插件
      两种获取方式(get、load)  
     

    两种Session方式

    (open、getCurrent)

     
      N+1  
      乐观锁  

    数据库连接池

    (原理涉及多线程)

    C3P30连接池 C3P30连接池
      注解 注解
        逆向工程
  • 相关阅读:
    03014_properties配置文件
    Python 文件I/O
    Python面向对象
    Python CGI编程
    Python正则表达式
    Python使用SMTP发送邮件
    python操作mysql数据库
    Python多线程
    python XML解析
    给傻瓜用的SP2010开发--第一部分--理解SP开发平台--第一章节--理解SP促销讨论(2)--追踪SP源头
  • 原文地址:https://www.cnblogs.com/Strugglinggirl/p/12906456.html
Copyright © 2011-2022 走看看