﻿<?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-因为专注，所以专业-文章分类-Java</title><link>http://www.blogjava.net/kevinzhan/category/33221.html</link><description>我的Java Blog
&lt;script src="http://www.google-analytics.com/urchin.js" type="text/javascript"&gt;
&lt;/script&gt;
&lt;script type="text/javascript"&gt;
_uacct = "UA-6064162-2";
urchinTracker();
&lt;/script&gt;</description><language>zh-cn</language><lastBuildDate>Fri, 01 Jun 2012 11:37:41 GMT</lastBuildDate><pubDate>Fri, 01 Jun 2012 11:37:41 GMT</pubDate><ttl>60</ttl><item><title>利用SVN信息制作升级包小工具</title><link>http://www.blogjava.net/kevinzhan/articles/379747.html</link><dc:creator>kevin.zhan</dc:creator><author>kevin.zhan</author><pubDate>Fri, 01 Jun 2012 08:06:00 GMT</pubDate><guid>http://www.blogjava.net/kevinzhan/articles/379747.html</guid><wfw:comment>http://www.blogjava.net/kevinzhan/comments/379747.html</wfw:comment><comments>http://www.blogjava.net/kevinzhan/articles/379747.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/kevinzhan/comments/commentRss/379747.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/kevinzhan/services/trackbacks/379747.html</trackback:ping><description><![CDATA[<p style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; font-family: Helvetica, Tahoma, Arial, sans-serif; line-height: 25px; text-align: left; background-color: #ffffff; "><span style="font-size: medium; ">背景：</span></p><p style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; font-family: Helvetica, Tahoma, Arial, sans-serif; line-height: 25px; text-align: left; background-color: #ffffff; "><span style="font-size: medium; "><span style="white-space: pre; ">	</span>做软件项目的开发人员，经常要制作升级包，但一般不会把整个项目再打包，而是把修改的文件打包，覆盖到已经部署的系统去，如果把一个个文件复制出来，又得与原来的文件结构一样，这样非常麻烦，所以作者就写了这么个小工具，只需要把SVN信息保存下来，然后做下简单修改，再利用此工具就可以制作升级包了。</span></p><p style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; font-family: Helvetica, Tahoma, Arial, sans-serif; line-height: 25px; text-align: left; background-color: #ffffff; "><span style="font-size: medium; "><br /></span></p><p style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; font-family: Helvetica, Tahoma, Arial, sans-serif; line-height: 25px; text-align: left; background-color: #ffffff; "><span style="font-size: medium; "><span style="white-space: pre; ">	</span>此软件实现非常简单，就是复制文件，保持结构与原来项目一样。</span></p><p style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; font-family: Helvetica, Tahoma, Arial, sans-serif; line-height: 25px; text-align: left; background-color: #ffffff; ">&nbsp;</p><p style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; font-family: Helvetica, Tahoma, Arial, sans-serif; line-height: 25px; text-align: left; background-color: #ffffff; "><span style="white-space: pre; ">	</span><img alt="" src="http://dl.iteye.com/upload/attachment/0068/9688/89de5c64-c8f9-34fb-8929-693ecfaf441e.bmp" title="点击查看原始大小图片" width="700" height="461" style="border-top-width: 0px; border-right-width: 0px; border-bottom-width: 0px; border-left-width: 0px; border-style: initial; border-color: initial; border-image: initial; cursor: url(http://www.iteye.com/images/magplus.gif), pointer; " /></p><p style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; font-family: Helvetica, Tahoma, Arial, sans-serif; line-height: 25px; text-align: left; background-color: #ffffff; "><span style="font-size: medium; ">使用方法：</span></p><p style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; font-family: Helvetica, Tahoma, Arial, sans-serif; line-height: 25px; text-align: left; background-color: #ffffff; "><span style="font-size: medium; "><span style="white-space: pre; ">	</span>1.在Copy to选择升级包存放路径</span></p><p style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; font-family: Helvetica, Tahoma, Arial, sans-serif; line-height: 25px; text-align: left; background-color: #ffffff; "><span style="font-size: medium; "><span style="white-space: pre; ">	</span>2.在Project path选择项目路径</span></p><p style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; font-family: Helvetica, Tahoma, Arial, sans-serif; line-height: 25px; text-align: left; background-color: #ffffff; "><span style="font-size: medium; "><span style="white-space: pre; ">	</span>3.在Source paths输入要升级的文件路径。一般的SVN信息是：&nbsp;</span></p><p style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; font-family: Helvetica, Tahoma, Arial, sans-serif; line-height: 25px; text-align: left; background-color: #ffffff; ">&nbsp;</p><p style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; font-family: Helvetica, Tahoma, Arial, sans-serif; line-height: 25px; text-align: left; background-color: #ffffff; "><span style="font-size: medium; "><span style="white-space: pre; ">	</span>Sending &nbsp; &nbsp; &nbsp; &nbsp; E:/project/Hello/web/a.jsp</span></p><p style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; font-family: Helvetica, Tahoma, Arial, sans-serif; line-height: 25px; text-align: left; background-color: #ffffff; ">&nbsp;</p><p style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; font-family: Helvetica, Tahoma, Arial, sans-serif; line-height: 25px; text-align: left; background-color: #ffffff; "><span style="font-size: medium; "><span style="white-space: pre; ">	</span>只需要把E:/project/Hello/web/a.jsp复制到Source paths就行，可以多个，一个文件占一行。</span></p><p style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; font-family: Helvetica, Tahoma, Arial, sans-serif; line-height: 25px; text-align: left; background-color: #ffffff; "><span style="font-size: medium; ">&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;4.点击Start Copy按钮即可。</span></p><p style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; font-family: Helvetica, Tahoma, Arial, sans-serif; line-height: 25px; text-align: left; background-color: #ffffff; ">&nbsp;</p><p style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; font-family: Helvetica, Tahoma, Arial, sans-serif; line-height: 25px; text-align: left; background-color: #ffffff; ">&nbsp;</p><p style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; font-family: Helvetica, Tahoma, Arial, sans-serif; line-height: 25px; text-align: left; background-color: #ffffff; "><span style="white-space: pre; ">	</span>PS:需要安装JAVA环境<br />&nbsp; &nbsp; &nbsp; &nbsp;<a href="http://dl.iteye.com/topics/download/541aebb7-2563-373e-88ac-bb15b6cf1f39" title="附件地址">附件地址</a></p><img src ="http://www.blogjava.net/kevinzhan/aggbug/379747.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/kevinzhan/" target="_blank">kevin.zhan</a> 2012-06-01 16:06 <a href="http://www.blogjava.net/kevinzhan/articles/379747.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>The method getRealPath(String) from the type ServletRequest is deprecated 解决方法</title><link>http://www.blogjava.net/kevinzhan/articles/341965.html</link><dc:creator>kevin.zhan</dc:creator><author>kevin.zhan</author><pubDate>Thu, 30 Dec 2010 03:04:00 GMT</pubDate><guid>http://www.blogjava.net/kevinzhan/articles/341965.html</guid><wfw:comment>http://www.blogjava.net/kevinzhan/comments/341965.html</wfw:comment><comments>http://www.blogjava.net/kevinzhan/articles/341965.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/kevinzhan/comments/commentRss/341965.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/kevinzhan/services/trackbacks/341965.html</trackback:ping><description><![CDATA[<span style="widows: 2; text-transform: none; text-indent: 0px; border-collapse: separate; font: medium 'Times New Roman'; white-space: normal; orphans: 2; letter-spacing: normal; color: rgb(0,0,0); word-spacing: 0px; -webkit-border-horizontal-spacing: 0px; -webkit-border-vertical-spacing: 0px; -webkit-text-decorations-in-effect: none; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px" class="Apple-style-span"><span style="text-align: left; line-height: 21px; font-family: 微软雅黑, verdana, 'ms song', 宋体, Arial, Helvetica, sans-serif; color: rgb(102,102,102); font-size: 14px" class="Apple-style-span">
<p style="padding-bottom: 0px; text-indent: 0px; margin: 5px auto; padding-left: 0px; padding-right: 0px; padding-top: 0px">（非原创）<br />
The method getRealPath(String) from the type ServletRequest is deprecated</p>
<p style="padding-bottom: 0px; text-indent: 0px; margin: 5px auto; padding-left: 0px; padding-right: 0px; padding-top: 0px">出现该警告,该方法已经不能使用了</p>
<p style="padding-bottom: 0px; text-indent: 0px; margin: 5px auto; padding-left: 0px; padding-right: 0px; padding-top: 0px">Deprecated. As of Version 2.1 of the Java Servlet API, use ServletContext.getRealPath(java.lang.String) instead.</p>
<p style="padding-bottom: 0px; text-indent: 0px; margin: 5px auto; padding-left: 0px; padding-right: 0px; padding-top: 0px">可以使用下面的方法来替代上面的方法</p>
<p style="padding-bottom: 0px; text-indent: 0px; margin: 5px auto; padding-left: 0px; padding-right: 0px; padding-top: 0px"><span style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; color: rgb(255,0,0); padding-top: 0px"><span style="padding-bottom: 0px; margin: 0px; padding-left: 0px; padding-right: 0px; color: rgb(255,0,0); padding-top: 0px">request.getSession().getServletContext().getRealPath() 得到站点的绝对地址</span></span></p>
<p style="padding-bottom: 0px; text-indent: 0px; margin: 5px auto; padding-left: 0px; padding-right: 0px; padding-top: 0px">在servlet或者struts中还可以这样：</p>
<p style="padding-bottom: 0px; text-indent: 0px; margin: 5px auto; padding-left: 0px; padding-right: 0px; padding-top: 0px">this.getServletContext().getRealPath("/");</p>
<p style="padding-bottom: 0px; text-indent: 0px; margin: 5px auto; padding-left: 0px; padding-right: 0px; padding-top: 0px">this.getServlet().getServletContext().getRealPath("/");</p>
</span></span>
<img src ="http://www.blogjava.net/kevinzhan/aggbug/341965.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/kevinzhan/" target="_blank">kevin.zhan</a> 2010-12-30 11:04 <a href="http://www.blogjava.net/kevinzhan/articles/341965.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>JFreeChart入门小例子</title><link>http://www.blogjava.net/kevinzhan/articles/266582.html</link><dc:creator>kevin.zhan</dc:creator><author>kevin.zhan</author><pubDate>Mon, 20 Apr 2009 09:47:00 GMT</pubDate><guid>http://www.blogjava.net/kevinzhan/articles/266582.html</guid><wfw:comment>http://www.blogjava.net/kevinzhan/comments/266582.html</wfw:comment><comments>http://www.blogjava.net/kevinzhan/articles/266582.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/kevinzhan/comments/commentRss/266582.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/kevinzhan/services/trackbacks/266582.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: 在这里主要贴上JFreeChart做的两个小例子，分别是柱状图和动态显示JVM内存状况图。先说明一下jfreechart的概念，jfreechart工具基本上把一个图形分成了几个逻辑部分：&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 1.首先是整个的画布对象(chart)，画布就相当与一个大的容器，包含一些图形元素，比如为一张白纸&nbsp;&nbsp;&nbsp;&n...&nbsp;&nbsp;<a href='http://www.blogjava.net/kevinzhan/articles/266582.html'>阅读全文</a><img src ="http://www.blogjava.net/kevinzhan/aggbug/266582.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/kevinzhan/" target="_blank">kevin.zhan</a> 2009-04-20 17:47 <a href="http://www.blogjava.net/kevinzhan/articles/266582.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>如何打印Hashtable或HashMap的所有key和value，如(key -- value)</title><link>http://www.blogjava.net/kevinzhan/articles/241014.html</link><dc:creator>kevin.zhan</dc:creator><author>kevin.zhan</author><pubDate>Mon, 17 Nov 2008 10:42:00 GMT</pubDate><guid>http://www.blogjava.net/kevinzhan/articles/241014.html</guid><wfw:comment>http://www.blogjava.net/kevinzhan/comments/241014.html</wfw:comment><comments>http://www.blogjava.net/kevinzhan/articles/241014.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/kevinzhan/comments/commentRss/241014.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/kevinzhan/services/trackbacks/241014.html</trackback:ping><description><![CDATA[思路，用hashtable的keySet()方法，把所有key保存在一个集合里，之后就迭代这个集合，逐个得到value，输出。<br />
代码实现
<div style="border-right: #cccccc 1px solid; padding-right: 5px; border-top: #cccccc 1px solid; padding-left: 4px; font-size: 13px; padding-bottom: 4px; border-left: #cccccc 1px solid; width: 98%; word-break: break-all; padding-top: 4px; border-bottom: #cccccc 1px solid; background-color: #eeeeee"><img id="Codehighlighter1_73_196_Open_Image" onclick="this.style.display='none'; Codehighlighter1_73_196_Open_Text.style.display='none'; Codehighlighter1_73_196_Closed_Image.style.display='inline'; Codehighlighter1_73_196_Closed_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedBlockStart.gif" align="top"  alt="" /><img id="Codehighlighter1_73_196_Closed_Image" style="display: none" onclick="this.style.display='none'; Codehighlighter1_73_196_Closed_Text.style.display='none'; Codehighlighter1_73_196_Open_Image.style.display='inline'; Codehighlighter1_73_196_Open_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ContractedBlock.gif" align="top"  alt="" /><span style="color: #0000ff">public</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">static</span><span style="color: #000000">&nbsp;</span><span style="color: #0000ff">void</span><span style="color: #000000">&nbsp;printHasptable(Hashtable</span><span style="color: #000000">&lt;</span><span style="color: #000000">String,&nbsp;String</span><span style="color: #000000">&gt;</span><span style="color: #000000">()&nbsp;hashtable)&nbsp;</span><span id="Codehighlighter1_73_196_Closed_Text" style="border-right: #808080 1px solid; border-top: #808080 1px solid; display: none; border-left: #808080 1px solid; border-bottom: #808080 1px solid; background-color: #ffffff"><img src="http://www.blogjava.net/Images/dot.gif"  alt="" /></span><span id="Codehighlighter1_73_196_Open_Text"><span style="color: #000000">{<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;Set</span><span style="color: #000000">&lt;</span><span style="color: #000000">String</span><span style="color: #000000">&gt;</span><span style="color: #000000">&nbsp;keys&nbsp;</span><span style="color: #000000">=</span><span style="color: #000000">&nbsp;hashtable.keySet();<br />
<img id="Codehighlighter1_144_194_Open_Image" onclick="this.style.display='none'; Codehighlighter1_144_194_Open_Text.style.display='none'; Codehighlighter1_144_194_Closed_Image.style.display='inline'; Codehighlighter1_144_194_Closed_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockStart.gif" align="top"  alt="" /><img id="Codehighlighter1_144_194_Closed_Image" style="display: none" onclick="this.style.display='none'; Codehighlighter1_144_194_Closed_Text.style.display='none'; Codehighlighter1_144_194_Open_Image.style.display='inline'; Codehighlighter1_144_194_Open_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ContractedSubBlock.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: #0000ff">for</span><span style="color: #000000">(String&nbsp;key:&nbsp;keys)&nbsp;</span><span id="Codehighlighter1_144_194_Closed_Text" style="border-right: #808080 1px solid; border-top: #808080 1px solid; display: none; border-left: #808080 1px solid; border-bottom: #808080 1px solid; background-color: #ffffff"><img src="http://www.blogjava.net/Images/dot.gif"  alt="" /></span><span id="Codehighlighter1_144_194_Open_Text"><span style="color: #000000">{<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;System.out.println(key</span><span style="color: #000000">+</span><span style="color: #000000">"</span><span style="color: #000000">--</span><span style="color: #000000">"</span><span style="color: #000000">+</span><span style="color: #000000">map.get(key));<br />
<img src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockEnd.gif" align="top"  alt="" />&nbsp;&nbsp;&nbsp;&nbsp;}</span></span><span style="color: #000000"><br />
<img src="http://www.blogjava.net/images/OutliningIndicators/ExpandedBlockEnd.gif" align="top"  alt="" />}</span></span></div>
<img src ="http://www.blogjava.net/kevinzhan/aggbug/241014.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/kevinzhan/" target="_blank">kevin.zhan</a> 2008-11-17 18:42 <a href="http://www.blogjava.net/kevinzhan/articles/241014.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>新的JPA---EJB3 Persistance API</title><link>http://www.blogjava.net/kevinzhan/articles/200027.html</link><dc:creator>kevin.zhan</dc:creator><author>kevin.zhan</author><pubDate>Mon, 12 May 2008 07:22:00 GMT</pubDate><guid>http://www.blogjava.net/kevinzhan/articles/200027.html</guid><wfw:comment>http://www.blogjava.net/kevinzhan/comments/200027.html</wfw:comment><comments>http://www.blogjava.net/kevinzhan/articles/200027.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/kevinzhan/comments/commentRss/200027.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/kevinzhan/services/trackbacks/200027.html</trackback:ping><description><![CDATA[今天刚了解这个东东，感觉挻好的，使用它很简单。没有了像以前那样要使用hibernate要写 *.hbm.xml。。<br />
使用javax.persistance.EntityManager可以实现基本的CRUD操作。<br />
在Spring的配置文件里,以前用hibernate时的sessionFactory现在被eneityManagerFactory代替了。<br />
使用它的时候你必须在包含实体的档案文件中（即<small>Classpath的META-INF資料夾</small>）打包描述符(persistence.xml)。<br />
正面是一个例子<br />
<div style="border: 1px solid rgb(204, 204, 204); padding: 4px 5px 4px 4px; background-color: rgb(238, 238, 238); font-size: 13px; width: 98%;"><!--<br />
<br />
Code highlighting produced by Actipro CodeHighlighter (freeware)<br />
http://www.CodeHighlighter.com/<br />
<br />
--><span style="color: rgb(0, 128, 128);">&nbsp;1</span>&nbsp;<span style="color: rgb(0, 0, 255);">package</span><span style="color: rgb(0, 0, 0);">&nbsp;onlyfun.caterpillar;<br />
</span><span style="color: rgb(0, 128, 128);">&nbsp;2</span>&nbsp;<span style="color: rgb(0, 0, 0);"><br />
</span><span style="color: rgb(0, 128, 128);">&nbsp;3</span>&nbsp;<span style="color: rgb(0, 0, 255);">import</span><span style="color: rgb(0, 0, 0);">&nbsp;java.util.List;<br />
</span><span style="color: rgb(0, 128, 128);">&nbsp;4</span>&nbsp;<span style="color: rgb(0, 0, 0);"><br />
</span><span style="color: rgb(0, 128, 128);">&nbsp;5</span>&nbsp;<span style="color: rgb(0, 0, 255);">import</span><span style="color: rgb(0, 0, 0);">&nbsp;javax.persistence.</span><span style="color: rgb(0, 0, 0);">*</span><span style="color: rgb(0, 0, 0);">;<br />
</span><span style="color: rgb(0, 128, 128);">&nbsp;6</span>&nbsp;<span style="color: rgb(0, 0, 0);"><br />
</span><span style="color: rgb(0, 128, 128);">&nbsp;7</span>&nbsp;<span style="color: rgb(0, 0, 255);">public</span><span style="color: rgb(0, 0, 0);">&nbsp;</span><span style="color: rgb(0, 0, 255);">class</span><span style="color: rgb(0, 0, 0);">&nbsp;JPADemo&nbsp;{<br />
</span><span style="color: rgb(0, 128, 128);">&nbsp;8</span>&nbsp;<span style="color: rgb(0, 0, 0);">&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: rgb(0, 0, 255);">public</span><span style="color: rgb(0, 0, 0);">&nbsp;</span><span style="color: rgb(0, 0, 255);">static</span><span style="color: rgb(0, 0, 0);">&nbsp;</span><span style="color: rgb(0, 0, 255);">void</span><span style="color: rgb(0, 0, 0);">&nbsp;main(String[]&nbsp;args)&nbsp;{<br />
</span><span style="color: rgb(0, 128, 128);">&nbsp;9</span>&nbsp;<span style="color: rgb(0, 0, 0);">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;User&nbsp;user&nbsp;</span><span style="color: rgb(0, 0, 0);">=</span><span style="color: rgb(0, 0, 0);">&nbsp;</span><span style="color: rgb(0, 0, 255);">new</span><span style="color: rgb(0, 0, 0);">&nbsp;User();<br />
</span><span style="color: rgb(0, 128, 128);">10</span>&nbsp;<span style="color: rgb(0, 0, 0);">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;user.setName(</span><span style="color: rgb(0, 0, 0);">"</span><span style="color: rgb(0, 0, 0);">justin</span><span style="color: rgb(0, 0, 0);">"</span><span style="color: rgb(0, 0, 0);">);<br />
</span><span style="color: rgb(0, 128, 128);">11</span>&nbsp;<span style="color: rgb(0, 0, 0);">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;user.setAge(</span><span style="color: rgb(0, 0, 255);">new</span><span style="color: rgb(0, 0, 0);">&nbsp;Long(</span><span style="color: rgb(0, 0, 0);">30</span><span style="color: rgb(0, 0, 0);">));<br />
</span><span style="color: rgb(0, 128, 128);">12</span>&nbsp;<span style="color: rgb(0, 0, 0);">&nbsp;<br />
</span><span style="color: rgb(0, 128, 128);">13</span>&nbsp;<span style="color: rgb(0, 0, 0);">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;EntityManager&nbsp;entityManager&nbsp;</span><span style="color: rgb(0, 0, 0);">=</span><span style="color: rgb(0, 0, 0);">&nbsp;<br />
</span><span style="color: rgb(0, 128, 128);">14</span>&nbsp;<span style="color: rgb(0, 0, 0);">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;JPAUtil.getEntityManagerFactory().createEntityManager();<br />
</span><span style="color: rgb(0, 128, 128);">15</span>&nbsp;<span style="color: rgb(0, 0, 0);">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;EntityTransaction&nbsp;etx&nbsp;</span><span style="color: rgb(0, 0, 0);">=</span><span style="color: rgb(0, 0, 0);">&nbsp;entityManager.getTransaction();<br />
</span><span style="color: rgb(0, 128, 128);">16</span>&nbsp;<span style="color: rgb(0, 0, 0);">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;etx.begin();<br />
</span><span style="color: rgb(0, 128, 128);">17</span>&nbsp;<span style="color: rgb(0, 0, 0);">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;entityManager.persist(user);<br />
</span><span style="color: rgb(0, 128, 128);">18</span>&nbsp;<span style="color: rgb(0, 0, 0);">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;etx.commit();<br />
</span><span style="color: rgb(0, 128, 128);">19</span>&nbsp;<span style="color: rgb(0, 0, 0);">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;entityManager.close();<br />
</span><span style="color: rgb(0, 128, 128);">20</span>&nbsp;<span style="color: rgb(0, 0, 0);">&nbsp;<br />
</span><span style="color: rgb(0, 128, 128);">21</span>&nbsp;<span style="color: rgb(0, 0, 0);">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;EntityManager&nbsp;newEntityManager&nbsp;</span><span style="color: rgb(0, 0, 0);">=</span><span style="color: rgb(0, 0, 0);">&nbsp;<br />
</span><span style="color: rgb(0, 128, 128);">22</span>&nbsp;<span style="color: rgb(0, 0, 0);">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;JPAUtil.getEntityManagerFactory().createEntityManager();<br />
</span><span style="color: rgb(0, 128, 128);">23</span>&nbsp;<span style="color: rgb(0, 0, 0);">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;EntityTransaction&nbsp;newEtx&nbsp;</span><span style="color: rgb(0, 0, 0);">=</span><span style="color: rgb(0, 0, 0);">&nbsp;newEntityManager.getTransaction();<br />
</span><span style="color: rgb(0, 128, 128);">24</span>&nbsp;<span style="color: rgb(0, 0, 0);">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;newEtx.begin();<br />
</span><span style="color: rgb(0, 128, 128);">25</span>&nbsp;<span style="color: rgb(0, 0, 0);">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;List&nbsp;users&nbsp;</span><span style="color: rgb(0, 0, 0);">=</span><span style="color: rgb(0, 0, 0);">&nbsp;newEntityManager.createQuery(<br />
</span><span style="color: rgb(0, 128, 128);">26</span>&nbsp;<span style="color: rgb(0, 0, 0);">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span style="color: rgb(0, 0, 0);">"</span><span style="color: rgb(0, 0, 0);">select&nbsp;user&nbsp;from&nbsp;User&nbsp;user&nbsp;order&nbsp;by&nbsp;user.name&nbsp;asc</span><span style="color: rgb(0, 0, 0);">"</span><span style="color: rgb(0, 0, 0);">)<br />
</span><span style="color: rgb(0, 128, 128);">27</span>&nbsp;<span style="color: rgb(0, 0, 0);">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;.getResultList();<br />
</span><span style="color: rgb(0, 128, 128);">28</span>&nbsp;<span style="color: rgb(0, 0, 0);">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;System.out.println(users.size()&nbsp;</span><span style="color: rgb(0, 0, 0);">+</span><span style="color: rgb(0, 0, 0);">&nbsp;</span><span style="color: rgb(0, 0, 0);">"</span><span style="color: rgb(0, 0, 0);">&nbsp;user(s)&nbsp;found.</span><span style="color: rgb(0, 0, 0);">"</span><span style="color: rgb(0, 0, 0);">);<br />
</span><span style="color: rgb(0, 128, 128);">29</span>&nbsp;<span style="color: rgb(0, 0, 0);">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;newEtx.commit();<br />
</span><span style="color: rgb(0, 128, 128);">30</span>&nbsp;<span style="color: rgb(0, 0, 0);">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;newEntityManager.close();<br />
</span><span style="color: rgb(0, 128, 128);">31</span>&nbsp;<span style="color: rgb(0, 0, 0);">&nbsp;<br />
</span><span style="color: rgb(0, 128, 128);">32</span>&nbsp;<span style="color: rgb(0, 0, 0);">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;JPAUtil.shutdown();<br />
</span><span style="color: rgb(0, 128, 128);">33</span>&nbsp;<span style="color: rgb(0, 0, 0);">&nbsp;&nbsp;&nbsp;&nbsp;}<br />
</span><span style="color: rgb(0, 128, 128);">34</span>&nbsp;<span style="color: rgb(0, 0, 0);">}</span></div>
<br />
<br />
具体可参考http://develop.csai.cn/java/200607261632081624.htm<br />
http://caterpillar.onlyfun.net/Gossip/HibernateGossip/HibernateEntityManager.html<br />
<br />
<img src ="http://www.blogjava.net/kevinzhan/aggbug/200027.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/kevinzhan/" target="_blank">kevin.zhan</a> 2008-05-12 15:22 <a href="http://www.blogjava.net/kevinzhan/articles/200027.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item></channel></rss>