解决方案 »

  1.   


    你的意思是mybits和hibernate好用么,不管在哪一方面?
      

  2.   

    如果系统中的映射都相对简单,建议使用hibernate
    如果系统的sql比较负责,或者复杂sql居多,建议使用mybatis看团队哪个技术更熟练些,使用哪个技术,这样问题方便解决。hibernate优在面向对象,跨平台,好移植
    mybatis 可以自己控制sql,mybatis帮助做结果集映射都非常厉害了,那就无所谓了。感觉说了一堆废话
      

  3.   


    没有啦,很有帮助的,为什么复杂SQL多反而要用mybits呢,是因为hibernate复杂SQL执行效率比较慢么?另外,在移植方面,mybits比起hibernate来说,是不是不方便的地方就是不部分sql需要重新写而hibernate只是切换配置文件而已。请大神赐教,别嫌我烦哈,先谢过啦!!虽然我分比较少。
      

  4.   

    太过复杂的sql连接,用hibernate配置太过麻烦,再就是性能问题了。
    经常涉及三四张表或更多的表查询时,自己写sql感觉比使用hibernate的配置文件要方便些。
    自己写sql,也方便测试,可以直接拿sql出来到客户端执行。用hibernate的话,就要跟着配置文件一点点的找了。
    移植方面,是hibernate的优势,mybatis没有任何优势了。
    之前完成的一个项目,开发时用的是oracle数据库,现场是DB2,然后开发完成后就切数据库,用的是mybatis
    然后 就找DB2的专家,一个一个的翻译sql,关键一些oracle的语法DB2是没有的,不支持的
    然后就写一大堆的语句,为的就是完成一个简单的oracle的语法功能
    而且 翻译过程中,一些sql翻译错误,也都是移植的风险点
    hibernate的话,直接通过方言就搞定了数据库间的差异了。
      

  5.   

    太过复杂的sql连接,用hibernate配置太过麻烦,再就是性能问题了。
    经常涉及三四张表或更多的表查询时,自己写sql感觉比使用hibernate的配置文件要方便些。
    自己写sql,也方便测试,可以直接拿sql出来到客户端执行。用hibernate的话,就要跟着配置文件一点点的找了。
    移植方面,是hibernate的优势,mybatis没有任何优势了。
    之前完成的一个项目,开发时用的是oracle数据库,现场是DB2,然后开发完成后就切数据库,用的是mybatis
    然后 就找DB2的专家,一个一个的翻译sql,关键一些oracle的语法DB2是没有的,不支持的
    然后就写一大堆的语句,为的就是完成一个简单的oracle的语法功能
    而且 翻译过程中,一些sql翻译错误,也都是移植的风险点
    hibernate的话,直接通过方言就搞定了数据库间的差异了。
    恩,非常感谢你的分享,我会好好斟酌的,看起来用hibernate或许会更好一些。这段时间也是刚刚用mybatis把一个hibernate项目给替换了,感觉这mybatis还挺好用,没有牵扯到移植方面的问题或是一般移植也就是在本机用mysql,在服务器上用oracle,这两个数据库之间移植起来还是比较好弄的,不过为了长久的考虑,很多方面都还是要照顾到的,感谢你的回答!
      

  6.   

    我说下hibernate吧,如果数据量大,对程序性能要求较高,就不要用hibernate了!!!
    ORM相对消耗资源很大的!!!!
      

  7.   

    mybatis的sql语句是需要单独自己去写的,hibernate的则是封装好的。所有mybatis的灵活性一级执行效率要比hibernate高一些。但是如果你的系统需要数据库移植的话,mybatis就比较麻烦,因为它的sql语句不同的数据库需要重新修改。
      

  8.   


    对性能方面没有特别的要求,数据级别也不是很大,可能数据表之间的关系会比较复杂一点
    表关系复杂无非是多表之间的连接,如果表中的数据量不大,性能要求不过分,hibernate对程序猿来说更爽些,不过在某些大量数据上可以结合servlet让hibernate提高性能;
    我有个同学现在做飞信项目,他们对性能要求高点,用的是servlet和mybatis;