﻿<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/"><channel><title>BlogJava-黙了默-文章分类-hibernate</title><link>http://www.blogjava.net/feicer/category/38111.html</link><description>java hibernate struts2 spring</description><language>zh-cn</language><lastBuildDate>Mon, 16 Nov 2009 19:20:05 GMT</lastBuildDate><pubDate>Mon, 16 Nov 2009 19:20:05 GMT</pubDate><ttl>60</ttl><item><title>Hibernate  SQLQuery 原生SQL 查询及返回结果集处理-1</title><link>http://www.blogjava.net/feicer/articles/SQLQuery_1.html</link><dc:creator>fd</dc:creator><author>fd</author><pubDate>Fri, 25 Sep 2009 07:37:00 GMT</pubDate><guid>http://www.blogjava.net/feicer/articles/SQLQuery_1.html</guid><wfw:comment>http://www.blogjava.net/feicer/comments/296430.html</wfw:comment><comments>http://www.blogjava.net/feicer/articles/SQLQuery_1.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/feicer/comments/commentRss/296430.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/feicer/services/trackbacks/296430.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp;只有注册用户登录后才能阅读该文。<a href='http://www.blogjava.net/feicer/articles/SQLQuery_1.html'>阅读全文</a><img src ="http://www.blogjava.net/feicer/aggbug/296430.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/feicer/" target="_blank">fd</a> 2009-09-25 15:37 <a href="http://www.blogjava.net/feicer/articles/SQLQuery_1.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>hibernate-3.3.1GA包结构解释</title><link>http://www.blogjava.net/feicer/articles/hibernate_3_3_1GA_package.html</link><dc:creator>fd</dc:creator><author>fd</author><pubDate>Thu, 05 Mar 2009 07:53:00 GMT</pubDate><guid>http://www.blogjava.net/feicer/articles/hibernate_3_3_1GA_package.html</guid><wfw:comment>http://www.blogjava.net/feicer/comments/258021.html</wfw:comment><comments>http://www.blogjava.net/feicer/articles/hibernate_3_3_1GA_package.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/feicer/comments/commentRss/258021.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/feicer/services/trackbacks/258021.html</trackback:ping><description><![CDATA[<span style="color: red">hibernate3.3.1GA <br />
目录结构 <br />
hibernate-distribution-3.3.1.GA <br />
---hibernate3.jar</span>---lib//Hibernate的库，没有什么可说的，必须使用的jar包 <br />
<br />
------bytecode <br />
------optional <br />
------required <br />
---------<span style="color: red">antlr-2.7.6.jar</span>//个人认为此包是对HQL的支持 <br />
---------<span style="color: red">commons-collections-3.1.jar</span>//Apache Commons包中的一个，包含了一些Apache开发的集合类，功能比java.util.*强大。必须使用的jar包。 <br />
---------<span style="color: red">dom4j-1.6.1.jar</span>//dom4j是一个Java的XML API，类似于jdom，用来读写XML文件的。dom4j是一个非常非常优秀的Java XML API，具有性能优异、功能强大和极端易用使用的特点，同时它也是一个开放源代码的软件，可以在SourceForge上找到它。在IBM developerWorks上面可以找到一篇文章，对主流的Java XML API进行的性能、功能和易用性的评测，dom4j无论在那个方面都是非常出色的。我早在将近两年之前就开始使用dom4j，直到现在。如今你可以看到越来越多的Java软件都在使用dom4j来读写XML，特别值得一提的是连Sun的JAXM也在用dom4j。这是必须使用的jar包，Hibernate用它来读写配置文件。 <br />
<br />
---------<span style="color: red">javassist-3.4.GA.jar</span>//JAAS是用来进行权限验证的，已经包含在JDK1.4里面了。所以实际上是多余的包 <br />
---------<span style="color: red">jta-1.1.jar</span>//JTA规范，当Hibernate使用JTA的时候需要，不过App Server都会带上，所以也是多余的 <br />
---------<span style="color: red">slf4j-api-1.5.2.jar</span>//一种日志插件，事后证明需要<span style="color: red">slf4j-api-1.5.6.jar 和slf4j-nop-1.5.6.jar</span>两个包配合（版本一致）<br />
---documentation <br />
---project <br />
<br />
此为下载下来的hibernate3.3.1 解压后在required 文件夹中所带的包。<br />
本人导入这些包以后，提示：<br />
<span><span>SLF4J:&nbsp;Failed&nbsp;to&nbsp;load&nbsp;</span><span class="keyword">class</span><span>&nbsp;</span><span class="string">"org.slf4j.impl.StaticLoggerBinder"</span><span>.&nbsp;&nbsp;</span></span><br />
&nbsp;很明显是相关的jar包没有被引入，而且&#8220;hibernate-distribution-3.3.1.GA-dist.zip&#8221;中压根就没有<span style="white-space: pre">org/slf4j/impl/StaticLoggerBinder类的存在，还需另外下载slf4j-nop-1.5.2.jar引入到工程中才行。<br />
<br />
本人就下载了 <span style="color: red">slf4j-api-1.5.6.jar 和slf4j-nop-1.5.6.jar </span>，导入以后问题解决<br />
<br />
</span>
 <img src ="http://www.blogjava.net/feicer/aggbug/258021.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/feicer/" target="_blank">fd</a> 2009-03-05 15:53 <a href="http://www.blogjava.net/feicer/articles/hibernate_3_3_1GA_package.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>hibernate 3.* C3P0配置</title><link>http://www.blogjava.net/feicer/articles/C3P0_config.html</link><dc:creator>fd</dc:creator><author>fd</author><pubDate>Thu, 05 Mar 2009 07:13:00 GMT</pubDate><guid>http://www.blogjava.net/feicer/articles/C3P0_config.html</guid><wfw:comment>http://www.blogjava.net/feicer/comments/258009.html</wfw:comment><comments>http://www.blogjava.net/feicer/articles/C3P0_config.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/feicer/comments/commentRss/258009.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/feicer/services/trackbacks/258009.html</trackback:ping><description><![CDATA[<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Hibernate自带的连接池算法相当不成熟。 它只是为了让你快些上手，并不适合用于产品系统或性能测试中。 出于最佳性能和稳定性考虑你应该使用第三方的连接池。只需要用特定连接池的设置替换 hibernate.connection.pool_size即可。这将关闭Hibernate自带的连接池。 例如， 你可能会想用C3P0. <br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; C3P0是一个随Hibernate一同分发的开源的JDBC连接池， 它位于lib目录下。 如果你设置了hibernate.c3p0.*相关的属性， Hibernate将使用 C3P0ConnectionProvider来缓存JDBC连接。 如果你更原意使用Proxool， 请参考发 行包中的hibernate.properties并到Hibernate网站获取更多的信息。</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 这是一个使用C3P0的hibernate.properties样例文件（来自Hibernate包中etc目录下）：</p>
<p>###########################<br />
### C3P0 Connection Pool###<br />
###########################</p>
<p>#hibernate.c3p0.max_size 2<br />
#hibernate.c3p0.min_size 2<br />
#hibernate.c3p0.timeout 5000<br />
#hibernate.c3p0.max_statements 100<br />
#hibernate.c3p0.idle_test_period 3000<br />
#hibernate.c3p0.acquire_increment 2<br />
#hibernate.c3p0.validate false<br />
&nbsp;</p>
<p><br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 在hibernate.cfg.xml文件里面加入如下的配置：</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;!-- 最大连接数 --&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;property name="hibernate.c3p0.max_size"&gt;20&lt;/property&gt;</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;!-- 最小连接数 --&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;property name="hibernate.c3p0.min_size"&gt;5&lt;/property&gt;</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;!-- 获得连接的超时时间,如果超过这个时间,会抛出异常，单位毫秒 ***--&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;property name="hibernate.c3p0.timeout"&gt;120&lt;/property&gt;</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;!-- 最大的PreparedStatement的数量 --&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;property name="hibernate.c3p0.max_statements"&gt;100&lt;/property&gt;</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;!-- 每隔120秒检查连接池里的空闲连接 ，单位是秒--&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;property name="hibernate.c3p0.idle_test_period"&gt;120&lt;/property&gt;</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;!-- 当连接池里面的连接用完的时候，C3P0一下获取的新的连接数 --&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;property name="hibernate.c3p0.acquire_increment"&gt;2&lt;/property&gt;</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;!-- 每次都验证连接是否可用 --&gt;<br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;property name="hibernate.c3p0.validate"&gt;true&lt;/property&gt;<br />
&nbsp;</p>
<p><br />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 完整示例如下（hibernate.properties）：</p>
<p>hibernate.connection.driver_class = org.postgresql.Driver<br />
hibernate.connection.url = jdbc:postgresql://localhost/mydatabase</p>
<p>hibernate.connection.username = myuser<br />
hibernate.connection.password = secret<br />
hibernate.c3p0.min_size=5<br />
hibernate.c3p0.max_size=20<br />
hibernate.c3p0.timeout=1800<br />
hibernate.c3p0.max_statements=50<br />
hibernate.dialect = org.hibernate.dialect.PostgreSQLDialect<br />
&nbsp;</p>
<p>&nbsp;</p>
<p><br />
&nbsp;</p>
 <img src ="http://www.blogjava.net/feicer/aggbug/258009.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/feicer/" target="_blank">fd</a> 2009-03-05 15:13 <a href="http://www.blogjava.net/feicer/articles/C3P0_config.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>hibernate-distribution-3.3.1.GA 部署slf4j-api-1.5.6.jar 包导入</title><link>http://www.blogjava.net/feicer/articles/slf4j.html</link><dc:creator>fd</dc:creator><author>fd</author><pubDate>Thu, 05 Mar 2009 06:37:00 GMT</pubDate><guid>http://www.blogjava.net/feicer/articles/slf4j.html</guid><wfw:comment>http://www.blogjava.net/feicer/comments/258001.html</wfw:comment><comments>http://www.blogjava.net/feicer/articles/slf4j.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/feicer/comments/commentRss/258001.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/feicer/services/trackbacks/258001.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp;只有注册用户登录后才能阅读该文。<a href='http://www.blogjava.net/feicer/articles/slf4j.html'>阅读全文</a><img src ="http://www.blogjava.net/feicer/aggbug/258001.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/feicer/" target="_blank">fd</a> 2009-03-05 14:37 <a href="http://www.blogjava.net/feicer/articles/slf4j.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item></channel></rss>