java的持久化技术选型

          在java开发过程中,JDBC, Ibtais ,Hibernate ,SpringJDBC 是使用比较多的几种持久化技术,下面说说各自的特点。


          JDBC,这个是java语言提供的规范,主要就是定义一些接口和通讯类,接口定义好之后,各个数据库厂商来提供具体的实现,比Oracle、MySql等,这些厂商都有自己的JDBC具体实现,当然,我们也可以自己实现一个,不过成本比较高。

优点:原生,效率高(用得好的情况下),使用起来也比较灵活 。

缺点:开发的代码比较罗嗦,可扩展性不够好。

 

         ibatis,现在已经改名为mybatis,这是一个半自动化的ORM框架,需要我们自己写SQL语句,主要特点是把SQL语句和Java的Field做映射,通过parameterMap和resultMap来做映射。

优点:比较灵活,可以自己写Sql,有高手DBA的话更是方便。

缺点:由于Sql语句和具体的数据库相对应,换了数据库的话,那么Sql语句需要重写过或则修改过。

 

          Hibernate,可以算是一个自动化的ORM框架,应为他自带HQL语句解释器,利用这个特性,开发人员写HQl语句就可以了,只要在不同的数据库中使用不同的驱动,这样就可以比较方便的在不同的DB上切换或者移植 。缺点:有些比较复杂的SQL语句在转换为HQL语句的时候还是比较有难度的。

如果没有hibernate开发高手,个人觉得还是使用mybatis比较好。

 

         SpringJDBC,spring核心思想是IOC和AOP,但是也实现了一套JDBC的东西,即SpringJDBC,使用的过程中也可以简化一些开发的代码量,并且Spring本身对事物提供强大的支持能力。

 

        总结: 项目在开发之前首先要搭框架,选择什么样的持久化方案要根据项目特点和自己团队情况来定。


你可能感兴趣的:(⊹●架构选型)