hibernate之我见 言之有理,对有复杂对象,比如要从三个以上的表中取数据来生成对象的,还不如直接写SQL语句。不过大部分情况上还是可以很好的使用的,可以省开发时间。当要改动数据库结构时也比较方便 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 我不太赞同你的观点。hibernate的主要设计目的不是简化数据库编程,而是实现ORM,也就是说,用面向对象的技术建立业务模型,用关系数据库进行持久化。如果没有面向对象的业务模型,就不要使用hibernate,也不要用ejb,用JDBC更好(最好用一些简化JDBC的简单框架)。许多项目基本上没有面向对象的业务模型,业务逻辑与数据库操作混和在一起,所以直接用JDBC反而更方便。如果此时使用hibernate,就需要建立所谓的业务对象,并且要受限于hibernate的一些功能。但是这种对象只是为了用于存储,没有封装业务逻辑,只有数据和get、set方法,没有行为。这样就给我们一个坏影响,hibernate复杂且功能受限。这种情形下,我们即没有享受到面向对象的业务模型的易维护性、重用性;也没有享受到JDBC的简洁。其实这种项目反而是我们平常最常见的。对于复杂的商业软件,面向对象的业务模型就很重要了,此时将业务逻辑与数据库操作混和在一起就是一场恶梦。这时hibernate就可以排上用场了,用JDBC手工将对象映射到关系数据库中就太辛苦了。对于中小商业软件,建立面向对象的业务模型也是可行的。但是,许多程序员对OO的理解还不够透彻,首次建立业务模型还是相当困难的。希望大家能早日跨进OO的世界。 对于多表关联的情况,取值很方便,但是插入时很复杂。不过就像jiafcat说的一样,它主要是为了实现orm,让我们只对对象进行编程,而不必考虑对数据库的操作。 java连接sql server2008失败 这条sql为什么红线部分有问题?? 关于Jfreechart 时序图 热点超链接的问题 一个奇怪的问题,大家帮我分析下? tomcat+struts+spring+hibernate 可以叫j2ee 应用吗? org/hibernate/cfg/SecondPass (Unsupported major.minor version 49.0) 错误 如何配置web.xml使得*.html的页面不经过Spring去解析? Oracle存储过程 各位大哥大姐帮我看看问题在哪里, 我现在不能访问到sun,谁能告诉我一个J2ee的链接,谢谢先 如何通过RMI注册服务器??高手指教!! 如何用DOM在内存中生成一个DOM对象?
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货