精华帖 (1) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
|
|
---|---|
作者 | 正文 |
发表时间:2007-10-08
这个帖子,不是对Hibernate性能的讨论,这里只做简单的介绍。Hibernate有很多致命的弱点。最重要的是Hibernate是单库(可以说单实例)解决方案。尽管Hibernate现在除了一个新的多库解决方案。但目前是不成熟的。
就写这么多吧。我怕引发争议,偏离了主题。 |
|
返回顶楼 | |
发表时间:2007-10-08
(7)这个文件是怎样被加载到Hibernate的处理系统的呢?是通过org.hibernate.cfg.Configuration的。请看下面源码(只解释几个重要的方法)
public class Configuration implements Serializable { ...... } 这个配置文件是是序列化的,其实Hibernate把全局的类对象都给序列化了。 public Configuration addJar(File jar) throws MappingException { log.info( "Searching for mapping documents in jar: " + jar.getName() ); JarFile jarFile = null; try { try { jarFile = new JarFile( jar ); } catch (IOException ioe) { throw new InvalidMappingException( "Could not read mapping documents from jar: " + jar.getName(), "jar", jar.getName(), ioe ); } Enumeration jarEntries = jarFile.entries(); while ( jarEntries.hasMoreElements() ) { ZipEntry ze = (ZipEntry) jarEntries.nextElement(); if ( ze.getName().endsWith( ".hbm.xml" ) ) { log.info( "Found mapping document in jar: " + ze.getName() ); try { addInputStream( jarFile.getInputStream( ze ) ); } catch (Exception e) { throw new InvalidMappingException( "Could not read mapping documents from jar: " + jar.getName(), "jar", jar.getName(), e ); } } } } finally { try { if ( jarFile != null ) { jarFile.close(); } } catch (IOException ioe) { log.error("could not close jar", ioe); } } return this; } 这个方法是我们不常用的方法,用于加载jar包里面*.hbm.xml文件。其实我们从中学到的不仅仅是Hibernate的一个功能,而是学到了如何对Jar文件进行合理的操作。如果有一天需要对jar文件进行操作,到Hibernate源码里看看就行了。 |
|
返回顶楼 | |
发表时间:2007-10-09
fu80008 写道 这个帖子,不是对Hibernate性能的讨论,这里只做简单的介绍。Hibernate有很多致命的弱点。最重要的是Hibernate是单库(可以说单实例)解决方案。尽管Hibernate现在除了一个新的多库解决方案。但目前是不成熟的。
就写这么多吧。我怕引发争议,偏离了主题。 我也觉得这是hibernate一个很值得讨论的问题。 你能否以此为主题另开新贴,让高手们都来参与一下。 |
|
返回顶楼 | |
发表时间:2007-10-09
奇怪,这个帖子写的还可以吧,怎么投隐藏了?
|
|
返回顶楼 | |
发表时间:2007-10-09
好酒不怕巷子深。只要是好东西,会有人发现的。至于Hibernate的优劣,也懒得去讨论了,一般没有什么结果。就是一帮不懂的人在瞎侃。没劲
这个帖子就写到这儿吧,如果有什么好的思想,大家可以来补充。 |
|
返回顶楼 | |
发表时间:2007-10-09
你怎么能说别人不懂hibernate呢,几百万上千万的项目都是这样的人做出来的!
|
|
返回顶楼 | |
发表时间:2007-10-09
大哥,就这样吧。别难为我了,你要是觉得合适你也可以去开辟一个专栏试试。
|
|
返回顶楼 | |
发表时间:2007-10-09
不是啊,我觉得你写得很好,那个投隐藏的太可耻了。
你写了这么多条,全部都切合"从应用角度看hibernate源码"的主题,虽然有几条稍微浅显点,但总的来说,对那些刚入门者、甚至用了几年hibernate的人都极具启发意义。当然,对于那些"不屑编码"者,"忽悠"者,确实没有用。我觉得这是篇很好的帖子,希望楼主继续(可另开帖)。 还有我建议你再开专栏时,尽量把前面几楼、甚至首页自己给占了,免得让别人说废话,影响气氛。 |
|
返回顶楼 | |
发表时间:2007-10-09
谢谢,兄台的关注。
|
|
返回顶楼 | |