MyBatis框架与Hibernate 框架的区别,SpringMVC和MyBatis区别:

 MyBatis框架与Hibernate 框架的区别

  Hibernate 框架

  Hibernate是一个开放源代码的对象关系映射框架,它对JDBC进行了非常轻量级的对象封装,建立对象与数据库表的映射。是一个全自动的、完全面向对象的持久层框架。

  Mybatis框架

  Mybatis是一个开源对象关系映射框架,原名:ibatis,2010年由谷歌接管以后更名。是一个半自动化的持久层框架。

  两者区别

    开发方面

    在项目开发过程当中,就速度而言: 
    - hibernate开发中,sql语句已经被封装,直接可以使用,加快系统开发; 
    -Mybatis 属于半自动化,sql需要手工完成,稍微繁琐; 
    -但是,凡事都不是绝对的,如果对于庞大复杂的系统项目来说,发杂语句较多,选择hibernate 就不是一个好方案。

    sql优化方面

    Hibernate 自动生成sql,有些语句较为繁琐,会多消耗一些性能;

    Mybatis 手动编写sql,可以避免不需要的查询,提高系统性能;

    2.3 对象管理比对 Hibernate 是完整的对象-关系映射的框架,开发工程中,无需过多关注底层实现,只要去管理对象即可;

    Mybatis 需要自行管理 映射关系;

    2.4 缓存方面

    相同点:

    Hibernate和Mybatis的二级缓存除了采用系统默认的缓存机制外,都可以通过实现你自己的缓存或为其他第三方缓 存方案,创建适配器来完全覆盖缓存行为。

    不同点:

    Hibernate的二级缓存配置在SessionFactory生成的配置文件中进行详细配置,然后再在具体的表-对象映射中配置是那种缓存。

    MyBatis的二级缓存配置都是在每个具体的表-对象映射中进行详细配置,这样针对不同的表可以自定义不同的缓存机制。并且Mybatis可以在命名空间中共享相同的缓存配置和实例,通过Cache-ref来实现。

    比较: 
    - Hibernate 具有良好的管理机制,用户不需要关注SQL,如果二级缓存出现脏数据,系统会保存。 
    - Mybatis 在使用的时候要谨慎,避免缓存CAche 的使用。

    Hibernate优势

  1.Hibernate的DAO层开发比MyBatis简单,Mybatis需要维护SQL和结果映射。
  2.Hibernate对对象的维护和缓存要比MyBatis好,对增删改查的对象的维护要方便。
  3.Hibernate数据库移植性很好,MyBatis的数据库移植性不好,不同的数据库需要写不同SQL。
  4.Hibernate有更好的二级缓存机制,可以使用第三方缓存。MyBatis本身提供的缓存机制不佳。

    Mybatis优势

   1. .MyBatis可以进行更为细致的SQL优化,可以减少查询字段。
   2. MyBatis容易掌握,而Hibernate门槛较高。

   SpringMVC和MyBatis区别:
   (1)SpringMVC和Struts2的加载机制不同
    Struts2和核心是基于一个Filter即StrutsPrepareAndExecuteFilter
   SpringMVC的核心是基于一个Servlet即DispatcherServlet(前端控制器)
  
   (2)SpringMVC在性能上会稍微比struts2快
   Struts2是类级别的拦截,每次来了请求就创建一个Action,然后调用get和set方法把request中的数据注入
   Struts2中一个action对应一个request上下文,action是多例模式(singiton),需要将scope设置为原型模式(prototype

   SpringBoot和SpringMVC的区别
    1.SpringBoot是一个配置工具(快速开发整合包),SpringMVC是基于Spring的一个MVC框架
    2.SpringBoot可以建立独立的Spring应用程序
    3.内嵌了如Tomcat,Jetty和Undertow这样的容器,用不着再做部署工作
    4.SpringBoot可以自动配置Spring,降低了项目塔键的复杂度
    5.提供了POM文件可以就爱你华Maven配置
    6.SpringBoot提供了基于Http,SSH,telnet对运行时的项目进行监控

 

原文地址:https://www.cnblogs.com/rzbwyj/p/11597078.html

时间: 2024-10-22 09:53:52

MyBatis框架与Hibernate 框架的区别,SpringMVC和MyBatis区别:的相关文章

整合Spring框架和Hibernate框架

-------------------siwuxie095 整合 Spring 框架和 Hibernate 框架 1.导入相关 jar 包(共 28 个) (1)导入 Spring 的核心 jar 包和日志相关的 jar 包(6 个) Commons Logging 下载链接: http://commons.apache.org/proper/commons-logging/download_logging.cgi LOG4J 下载链接: https://www.apache.org/dist/

Java - Struts框架教程 Hibernate框架教程 Spring框架入门教程(新版) sping mvc spring boot spring cloud Mybatis

https://www.zhihu.com/question/21142149 http://how2j.cn/k/hibernate/hibernate-tutorial/31.html?tid=63 https://www.zhihu.com/question/29444491/answer/146457757 1. Java - Struts框架教程Struts 是Apache软件基金会(ASF)赞助的一个开源项目.通过采用JavaServlet/JSP技术,实现了基于Java EEWeb

JAVA框架之Hibernate框架的学习步骤

首先介绍一下Java三大框架的关系 以CRM项目即客户关系管理项目示例 hibernate框架的学习路线: 1.学习框架入门,自己搭建框架,完成增删改查的操作 2.学习一级缓存,事物管理和基本查询 3.学习一对多和多对多的操作等 4.学习基本查询和查询的优化 本人正在学习hibernate框架,今天是第一天,愿意把自己的学习过程分享给大家,希望大家提出宝贵意见,留言给我,共同进步需要什么软件.资源.例程jar包等的,可以留下邮箱,我晚上会给大家发过去的,谢谢

三大框架 之 Hibernate框架概述(概述、配置、核心API)

目录 Hibernate框架概述 什么是框架 hibernate简介(JavaEE技术三层架构所用到的技术) hibernate是什么框架 ORM hibernate好处 Hibernate基本使用 下载框架 Hibernate目录 使用 常见配置 映射配置 核心配置 核心API Configuration SessionFactory sessionFactory简介 配置连接池 查看日志 工具类 session session的api Hibernate框架概述 什么是框架 软件的一个半成品

Spring+SpringMVC+MyBatis深入学习及搭建(十四)——SpringMVC和MyBatis整合

转载请注明出处:http://www.cnblogs.com/Joanna-Yan/p/7010363.html 前面讲到:Spring+SpringMVC+MyBatis深入学习及搭建(十三)--SpringMVC入门程序(二) 1.需求 使用springmvc和mybatis完成商品列表查询. 2.整合思路 springmvc+mybatis的系统架构: 第一步:整合dao层 mybatis和spring整合,通过spring管理mapper接口. 使用mapper的扫描器自动扫描mappe

Java框架:spring框架整合hibernate框架的xml配置(使用注解的方式)

<?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:context="http://www.springframework.org/sch

粗浅看Struts2和Hibernate框架

----------------------------------------------------------------------------------------------[版权申明:本文系作者原创,转载请注明出处] 文章出处:http://blog.csdn.net/sdksdk0/article/details/52424578作者:朱培      ID:sdksdk0      邮箱: [email protected] --------------------------

Hibernate框架基础

Hibernate框架基础 Hibernate框架 ORM概念 O, Object 对象 R, Realtion 关系 (关系型数据库: MySQL, Oracle-) M,Mapping 映射 ORM, 对象关系映射! ORM, 解决什么问题? 存储: 能否把对象的数据直接保存到数据库? 获取: 能否直接从数据库拿到一个对象? 想做到上面2点,必须要有映射! 总结: Hibernate与ORM的关系? Hibernate是ORM的实现! Hibernate HelloWorld案例 搭建一个H

Spring + Hibernate 框架

原先一直没怎么用过Spring框架,一直是 Struts2+Hibernate4来构建WEB项目,最近,想学一些关于Spring的知识,毕竟Spring是现在用的最广的框架,而且以后也会在这行业工作,所以,有必要学习一下. 首先添加了Spring框架,并能正确运行: 随后,添加Hibernate框架,采用单独生成 hibernate.cfg.xml的方式,并且采用默认的DAO文件,而不是Spring框架下的DAO文件风格: 添加完框架后,Hibernate框架单独使用时能用,Spring框架原先