JDBC, Ibtais ,Hibernate ,SpringJDBC 是我们平时大家开发的过程中使用的比较多的几种持久化技术,具体在开发的过程中该怎么选择呢?
先来说说各自的特点,首先是JDBC,这个是Java语言提供的规范,主要就是定义一些接口和通讯类,接口定义好之后,各个数据库厂商来提供具体的实现,比如Oracle,Mysql等,这些厂商都有自己的JDBC具体实现,当然,我们也可以自己实现一个,不过成本比较高。对于JDBC ,个人认为主要的特点是原生,效率高(用得好的情况下),使用起来也比较灵活 ,缺点呢也很明显,开发起来代码比较罗嗦,可扩展性不够好。
然后是ibatis,现在已经改名为mybatis,这是一个半自动化的ORM框架,需要我们自己写SQL语句,主要特点是把SQL语句和Java的Field做映射,通过parameterMap和resultMap来做映射,所以,ibatis使用起来也是比较灵活的,可以自己写Sql,并且如果你家公司有高手DBA,交给他来优化或者写SQl也是很不错的选择,缺点呢,由于Sql语句和具体的数据库相对应,换了数据库的话,那么Sql语句需要重写过或则修改过。
和ibatis对比的比较多的就是hibernate了,这可以算是一个自动化的ORM框架,应为他自带HQL语句解释器,利用这个特性,开发人员可以认真写HQl语句就可以了,只要在不同的数据库中使用不同的驱动,这样就可以比较方便的在不同的DB上切换或者移植 ,但是有些比较复杂的SQL语句在转换为HQL语句的时候还是比较有难度的,如果没有hibernate开发高手,个人觉得还是使用ibatis比较好
spring 的核心思想是IOC和AOP,但是为了和其他框架竞争,Spring自己也实现了一套JDBC的东西,使用的过程中也可以简化一些开发的代码量,并且Spring本身对事物提供强大的支持能力,这是我觉得他比较有特色的地方。
所以,一般项目在开发之前首先要搭框架,选择什么样的持久化方案要根据自己团队的情况来定,而不是别人说什么好就用什么。
相关推荐
本压缩包文件"基于Java 通用数据访问组件,基于mybatis、spring jdbc、hibernate.zip"包含了一些关于如何使用Java中的三种主流数据访问技术——MyBatis、Spring JDBC和Hibernate的资源,这些技术都是Java开发者必备...
在本教程中,我们将深入探讨如何在Spring Boot项目中整合MyBatis和Hibernate这两个流行的ORM框架。Spring Boot因其简化配置和快速开发的能力而备受青睐,而MyBatis和Hibernate则是Java世界里常用的持久层解决方案。...
Uncode-DAL是 Java 通用数据访问组件,基于mybatis、spring jdbc、hibernate等ORM框架开发,同时支持基于多数据源的读写分离、主备切换、故障转移,自动恢复、负载均衡、缓存等。可以大大提高开发速度
3. 数据访问(DAO)支持:Spring支持多种数据访问技术,包括JDBC、Mybatis、Hibernate等,简化了数据库访问代码的编写,并提供了数据访问异常的统一处理机制。 4. Web支持:Spring MVC是Spring框架的一部分,提供了...
spring+springMVC+mybatis+struts2+jdbc+hibernate 全面集成 此框架本人花费2天时间完成 工作中请勿配置如此多元化框架 框架的意义是为了让代码风格统一 此框架是为了学习 作为参考 jdbc.properties为数据库链接参数...
本人手打的项目 里面包含spring整合当下流行框架的例子和整理好的jar 包含的例子:Spring+SpringMVC+Hibernate,Spring+SpringMVC+Mybatis spring+jdbc
标题中的"spring-mybatis-hibernate-jar包"指的是一个整合了Spring、MyBatis和Hibernate三个框架的Java项目打包成的JAR文件。这个JAR文件通常用于简化部署,将所有依赖集中在一起,便于在Java应用程序中使用。下面将...
Spring JDBC模块简化了数据库操作,而Spring的DAO支持则可以与各种ORM框架,如Hibernate和MyBatis,进行无缝集成。 整合MyBatis和Spring,主要是通过Spring的DataSource、TransactionManager以及...
- **数据访问/集成**:提供对各种数据访问技术的支持,如JDBC、ORM(Hibernate、JPA)等。 - **Web模块**:Spring MVC是其Web层的一部分,用于构建基于模型-视图-控制器(MVC)架构的Web应用程序。 2. **Spring ...
Spring还提供了多种数据访问集成,包括JDBC模板、ORM框架集成(如Hibernate和MyBatis)等。 MyBatis与Spring整合的主要目的是实现更高效的事务管理。Spring通过PlatformTransactionManager接口来管理事务,它可以...
5. **事务管理**:Spring提供PlatformTransactionManager接口来管理事务,可以配置JDBC的DataSourceTransactionManager或者使用Spring的DelegatingTransactionManager配合Hibernate等ORM框架。在MyBatis与Spring集成...
Spring还提供了一个方便的事务管理机制,可以处理不同数据源的事务,包括JDBC、Hibernate、JPA等。 **MyBatis与Spring的整合** 整合MyBatis和Spring主要是为了利用Spring的IOC和AOP特性来管理MyBatis的...
Spring 的另一个重要特性是它支持各种数据访问技术,包括JDBC、Hibernate和MyBatis等。 MyBatis-Spring 是这两者的桥梁,它允许你在Spring应用中无缝地使用MyBatis。`mybatis-spring-1.0.0-RC1` 是这个整合库的一个...
在Spring 3.0.5中,它引入了对Java配置的支持,降低了对XML的依赖,同时也增强了对各种数据源的支持,包括JDBC、Hibernate、Mybatis等。 在将Mybatis与Spring集成时,通常会使用Spring的ApplicationContext来管理...
在Java开发领域,MyBatis、Spring、Struts2和Hibernate是四大主流的开源框架,它们各自负责不同的职责,但可以协同工作以构建强大的企业级应用。这些框架的联合配置对于提升开发效率和代码质量至关重要。下面将详细...
在这个项目中,开发者选择了Mybatis、Hibernate和Spring这三个主流的Java框架来构建系统,这显示了对高效、稳定和灵活开发的追求。 **Mybatis** 是一个轻量级的持久层框架,它解决了传统JDBC操作数据库时代码繁琐的...
- **数据访问集成**:支持多种数据访问技术,包括JDBC、Hibernate、JPA等。 2. MyBatis框架:MyBatis 3.2版本主要特性包括: - **动态SQL**:允许在XML映射文件或者注解中编写动态SQL,提高了SQL语句的灵活性。 ...
在本项目中,我们探讨的是一个使用Mybatis、Hibernate和Spring框架开发的绿色健康购物网站。这个项目展示了如何将这三大主流的Java技术栈整合在一起,构建一个功能完善的电子商务平台。接下来,我们将深入讨论这三个...
Spring还提供了数据访问抽象,包括JDBC模板和ORM集成,如Hibernate和MyBatis。 2. **SpringMVC**:作为Spring的一部分,SpringMVC是一个用于构建Web应用程序的轻量级MVC框架。它处理HTTP请求,将请求映射到控制器,...
在构建Web应用程序时,"Spring4+SpringMVC+mysql+memcached【同时支持mybatis+hibernate两种底层操作框架】"是一个常见的技术栈,它涵盖了多个关键组件,为高效、灵活的开发提供了坚实的基础。以下是这个技术组合中...