﻿<?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-好学驿站-文章分类-struts</title><link>http://www.blogjava.net/hxweb/category/20058.html</link><description>JSP、JAVA、struts、hibernate、spring、eclipse、工作流、电子政务、协同办公、J2ME</description><language>zh-cn</language><lastBuildDate>Wed, 13 Jun 2007 06:35:38 GMT</lastBuildDate><pubDate>Wed, 13 Jun 2007 06:35:38 GMT</pubDate><ttl>60</ttl><item><title>Hibernate中代码自动生成功能小结 （很早的版本）</title><link>http://www.blogjava.net/hxweb/articles/123824.html</link><dc:creator>好学蜘蛛</dc:creator><author>好学蜘蛛</author><pubDate>Wed, 13 Jun 2007 03:22:00 GMT</pubDate><guid>http://www.blogjava.net/hxweb/articles/123824.html</guid><wfw:comment>http://www.blogjava.net/hxweb/comments/123824.html</wfw:comment><comments>http://www.blogjava.net/hxweb/articles/123824.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/hxweb/comments/commentRss/123824.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/hxweb/services/trackbacks/123824.html</trackback:ping><description><![CDATA[
		<table width="100%">
				<tbody>
						<tr>
								<td>
										<p>Hibernate中需要class和mapping file, 也就是java文件和hbm.xml文件，由于Hibernate只支持DML， 不支持DDL，所以在DB中需要有DDL或已经存在的数据库的表。Hibernate中共有三种文件与代码自动生成功能有关： <br />class, mapping file and DDL</p>
										<p>1. Middlegen <br />是用来从DB中已存在的表，生成相应的mapping file. 可以下载一个老外的middlegen的例子。 <br /><a href="http://sourceforge.net/project/showfiles.php?group_id=40712" target="blank">http://sourceforge.net/project/showfiles.php?group_id=40712</a></p>
										<p>调用Middlegen很简单，例子中的middlegen自动生成ant指令如下 <br /></p>
										<div class="quote_title">引用</div>
										<div class="quote_div">
												<br />&lt;middlegen <br />appname="${name}" <br />prefsdir="${src.dir}" <br />gui="${gui}" <br />databaseurl="${database.url}" <br />initialContextFactory="${java.naming.factory.initial}" <br />providerURL="${java.naming.provider.url}" <br />datasourceJNDIName="${datasource.jndi.name}" <br />driver="${database.driver}" <br />username="${database.userid}" <br />password="${database.password}" <br /><br />&gt; <br />&lt;hibernate <br />destination="${build.gen-src.dir}" <br />package="${name}.hibernate" <br />/&gt; <br />&lt;/middlegen&gt; <br /></div>
										<p>
										</p>
										<p>然后会有一个GUI，给我们专门设计各种表与表之间的关系(一对一，一对多以及单向双向关系)。需要说明的是，middlegen生成的代码没有直接写mapping file灵活性好，所以生成的mapping file有时还需要我们去修改。</p>
										<p>2. XDoclet <br />它是用来从java文件自动生成hbm文件的，不过我们需要在java代码中写一些规定的tag，才能得到自动生成的hbm文件. <br /></p>
										<div class="code_title">代码</div>
										<div class="code_div">
												<div class="dp-highlighter">
														<div class="bar">
														</div>
														<ol class="dp-xml">
																<li class="alt">
																		<span>
																				<span class="tag">&lt;</span>
																				<span class="tag-name">hibernatedoclet</span>
																				<span>  </span>
																		</span>
																</li>
																<li class="">
																		<span>          </span>
																		<span class="attribute">destdir</span>
																		<span>=</span>
																		<span class="attribute-value">"src"</span>
																		<span>  </span>
																</li>
																<li class="alt">
																		<span>          </span>
																		<span class="attribute">excludedtags</span>
																		<span>=</span>
																		<span class="attribute-value">"@version,@author,@todo"</span>
																		<span>  </span>
																</li>
																<li class="">
																		<span>          </span>
																		<span class="attribute">force</span>
																		<span>=</span>
																		<span class="attribute-value">"true"</span>
																		<span>  </span>
																</li>
																<li class="alt">
																		<span>          </span>
																		<span class="attribute">verbose</span>
																		<span>=</span>
																		<span class="attribute-value">"true"</span>
																		<span class="tag">&gt;</span>
																		<span>  </span>
																</li>
																<li class="">
																		<span>          </span>
																		<span class="tag">&lt;</span>
																		<span class="tag-name">fileset</span>
																		<span> </span>
																		<span class="attribute">dir</span>
																		<span>=</span>
																		<span class="attribute-value">"src"</span>
																		<span class="tag">&gt;</span>
																		<span>  </span>
																</li>
																<li class="alt">
																		<span>              </span>
																		<span class="tag">&lt;</span>
																		<span class="tag-name">include</span>
																		<span> </span>
																		<span class="attribute">name</span>
																		<span>=</span>
																		<span class="attribute-value">"**/*.java"</span>
																		<span class="tag">/&gt;</span>
																		<span>  </span>
																</li>
																<li class="">
																		<span>              </span>
																		<span class="tag">&lt;</span>
																		<span class="tag-name">exclude</span>
																		<span> </span>
																		<span class="attribute">name</span>
																		<span>=</span>
																		<span class="attribute-value">"**/Product.java"</span>
																		<span class="tag">/&gt;</span>
																		<span>  </span>
																</li>
																<li class="alt">
																		<span>          </span>
																		<span class="tag">&lt;/</span>
																		<span class="tag-name">fileset</span>
																		<span class="tag">&gt;</span>
																		<span>  </span>
																</li>
																<li class="">
																		<span>          </span>
																		<span class="tag">&lt;</span>
																		<span class="tag-name">hibernate</span>
																		<span> </span>
																		<span class="attribute">version</span>
																		<span>=</span>
																		<span class="attribute-value">"2.0"</span>
																		<span class="tag">/&gt;</span>
																		<span>  </span>
																</li>
																<li class="alt">
																		<span>    </span>
																		<span class="tag">&lt;/</span>
																		<span class="tag-name">hibernatedoclet</span>
																		<span class="tag">&gt;</span>
																		<span>  </span>
																</li>
														</ol>
												</div>
										</div>
										<script><![CDATA[ender_code();]]&gt;</script>
										<p>
										</p>
										<p>3. hbm2java <br />它是用来从mapping 文件生成java代码的工具，调用很简单，在参数中需要给出所有的hbm文件，如下： <br /></p>
										<div class="code_title">代码</div>
										<div class="code_div">
												<div class="dp-highlighter">
														<div class="bar">
														</div>
														<ol class="dp-xml">
																<li class="alt">
																		<span>
																				<span class="tag">&lt;</span>
																				<span class="tag-name">java</span>
																				<span> </span>
																				<span class="attribute">classname</span>
																				<span>=</span>
																				<span class="attribute-value">"net.sf.hibernate.tool.hbm2java.CodeGenerator"</span>
																				<span> </span>
																				<span class="attribute">fork</span>
																				<span>=</span>
																				<span class="attribute-value">"true"</span>
																				<span class="tag">&gt;</span>
																				<span>  </span>
																		</span>
																</li>
																<li class="">
																		<span>      </span>
																		<span class="tag">&lt;</span>
																		<span class="tag-name">classpath</span>
																		<span> </span>
																		<span class="attribute">refid</span>
																		<span>=</span>
																		<span class="attribute-value">"classpath"</span>
																		<span class="tag">/&gt;</span>
																		<span>  </span>
																</li>
																<li class="alt">
																		<span>      </span>
																		<span class="tag">&lt;</span>
																		<span class="tag-name">arg</span>
																		<span> </span>
																		<span class="attribute">line</span>
																		<span>=</span>
																		<span class="attribute-value">"${build.gen-src.dir}/airline/hibernate/*.hbm.xml"</span>
																		<span class="tag">/&gt;</span>
																		<span>  </span>
																</li>
																<li class="">
																		<span>    </span>
																		<span class="tag">&lt;/</span>
																		<span class="tag-name">java</span>
																		<span class="tag">&gt;</span>
																		<span>  </span>
																</li>
														</ol>
												</div>
										</div>
										<script><![CDATA[ender_code();]]&gt;</script>
										<p>
										</p>
										<p>4. SchemaExport <br />如果写好了java文件和hbm文件，就可以用SchemaExport直接生成DDL文件，调用同样简单，只需在java代码中，加入如下： <br /></p>
										<div class="code_title">代码</div>
										<div class="code_div">
												<div class="dp-highlighter">
														<div class="bar">
														</div>
														<ol class="dp-j">
																<li class="alt">
																		<span>
																				<span>conf = </span>
																				<span class="keyword">new</span>
																				<span> Configuration()   </span>
																		</span>
																</li>
																<li class="">
																		<span>     .addClass(a.</span>
																		<span class="keyword">class</span>
																		<span>)   </span>
																</li>
																<li class="alt">
																		<span>     .addClass(b.</span>
																		<span class="keyword">class</span>
																		<span>);   </span>
																</li>
																<li class="">
																		<span>SchemaExport dbExport = </span>
																		<span class="keyword">new</span>
																		<span> SchemaExport(conf);   </span>
																</li>
																<li class="alt">
																		<span>dbExport.setOutputFile(</span>
																		<span class="string">"myschema.sql"</span>
																		<span>);   </span>
																</li>
																<li class="">
																		<span>dbExport.create(</span>
																		<span class="keyword">true</span>
																		<span>, </span>
																		<span class="keyword">true</span>
																		<span>);   </span>
																</li>
														</ol>
												</div>
										</div>
										<script><![CDATA[ender_code();]]&gt;</script>
										<p>
										</p>
										<p>从这四种自动生成工具来看， mapping file, java file and DDL，只要知道任何一种文件，都可以得到另外两种文件， <br />如：</p>
										<p>1. 只有mapping file: <br />mapping file---hbm2java----java---SchemaExport----DDL</p>
										<p>2.只有DDL <br />DDL---Middlegen---hbm----hbm2java----java</p>
										<p>3.只有Java <br />java---XDoclet---hbm----SchemaExport----DDL</p>
										<p>从这里，大家也可以体会到, Hibernate强大的灵活性。</p>
								</td>
						</tr>
				</tbody>
		</table>
		<br />
<img src ="http://www.blogjava.net/hxweb/aggbug/123824.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/hxweb/" target="_blank">好学蜘蛛</a> 2007-06-13 11:22 <a href="http://www.blogjava.net/hxweb/articles/123824.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>Hibernate的JNDI绑定分析</title><link>http://www.blogjava.net/hxweb/articles/123823.html</link><dc:creator>好学蜘蛛</dc:creator><author>好学蜘蛛</author><pubDate>Wed, 13 Jun 2007 03:20:00 GMT</pubDate><guid>http://www.blogjava.net/hxweb/articles/123823.html</guid><wfw:comment>http://www.blogjava.net/hxweb/comments/123823.html</wfw:comment><comments>http://www.blogjava.net/hxweb/articles/123823.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/hxweb/comments/commentRss/123823.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/hxweb/services/trackbacks/123823.html</trackback:ping><description><![CDATA[
		<table width="100%">
				<tbody>
						<tr>
								<td>
										<p>Hibernate的JNDI名称绑定是在net.sf.hibernate.impl.SessionFactoryObjectFactory程序里面实现的，我来分析一下Hibernate的绑定JNDI的过程： <br />我们获得SessionFactory一般是这样写代码：</p>
										<p>
										</p>
										<div class="code_title">代码</div>
										<div class="code_div">
												<div class="dp-highlighter">
														<div class="bar">
														</div>
														<ol class="dp-j">
																<li class="alt">
																		<span>
																				<span>Configuration conf = </span>
																				<span class="keyword">new</span>
																				<span> Configuration().addClass(Cat.</span>
																				<span class="keyword">class</span>
																				<span>);   </span>
																		</span>
																</li>
																<li class="">
																		<span>SessionFactory sf = conf.buildSessionFactory();   </span>
																</li>
														</ol>
												</div>
										</div>
										<script><![CDATA[ender_code();]]&gt;</script>
										<p>
										</p>
										<p>首先是new Configuration()创建一个Configuration，在这个构造器里面进行配置文件(hibernate.properties)的读取工作，然后保存到一个Properties对象里面去，和JNDI相关的是这个属性：</p>
										<p>
										</p>
										<div class="code_title">代码</div>
										<div class="code_div">
												<div class="dp-highlighter">
														<ol class="dp-j">
																<li class="alt">
																		<span>
																				<span>hibernate.session_factory_name hibernate/session_factory  </span>
																		</span>
																</li>
														</ol>
												</div>
										</div>
										<script><![CDATA[ender_code();]]&gt;</script>
										<p>
										</p>
										<p>接着调用buildSessionFactory()方法，该方法检查一下配置信息，然后调用SessionFactoryImpl的一个构造器。在构造器里面注意下面两行代码：</p>
										<p>
										</p>
										<div class="code_title">代码</div>
										<div class="code_div">
												<div class="dp-highlighter">
														<div class="bar">
														</div>
														<ol class="dp-j">
																<li class="alt">
																		<span>
																				<span>name = properties.getProperty(Environment.SESSION_FACTORY_NAME);   </span>
																		</span>
																</li>
																<li class="">
																		<span>SessionFactoryObjectFactory.addInstance(uuid, name, </span>
																		<span class="keyword">this</span>
																		<span>, properties);  </span>
																</li>
														</ol>
												</div>
										</div>
										<script><![CDATA[ender_code();]]&gt;</script>
										<p>
										</p>
										<p>调用了SessionFactoryObjectFactory的addInstance方法，并且把自身（SessionFactory的实例）作为参数传递。最后在addInstance方法可以看到如下代码：</p>
										<p>
										</p>
										<div class="code_title">代码</div>
										<div class="code_div">
												<div class="dp-highlighter">
														<ol class="dp-j">
																<li class="alt">
																		<span>
																				<span>Context ctx = NamingHelper.getInitialContext(properties);   </span>
																		</span>
																</li>
																<li class="">
																		<span>NamingHelper.bind(ctx, name, instance);  </span>
																</li>
														</ol>
												</div>
										</div>
										<script><![CDATA[ender_code();]]&gt;</script>
										<p>
										</p>
										<p>instance 就是SessionFactory的实例，通过读源代码，可以清楚的看到Hibernate是在conf.buildSessionFactory()的时候通过一系列类方法调用，把创建的SessionFactory实例绑定到配置文件（hibernate.properties）中 hibernate.session_factory_name属性指定的名称上的，因此可见Hibernate自身是具有JNDI的动态绑定功能的。但是Hibernate需要获得一个SessionFactory实例用于绑定，而这个SessionFactory实例需要我们写代码进行预先创建，并且必须保证该过程要在所有其它要从JNDI上获得SessionFactory实例的程序之前完成。</p>
										<p>因此对于任何App Server来说，我们都不必去管JNDI名称的绑定过程，只需要保证预先创建一个SessionFactory实例出来就够了，剩下的工作 Hibernate会做的。那么如何确保预创建SessionFactory实例呢，如果是Servlet，可以配置一个初始化的Servlet，只要把</p>
										<p>
										</p>
										<div class="code_title">代码</div>
										<div class="code_div">
												<div class="dp-highlighter">
														<div class="bar">
														</div>
														<ol class="dp-j">
																<li class="alt">
																		<span>
																				<span>Configuration conf = </span>
																				<span class="keyword">new</span>
																				<span> Configuration().addClass(Cat.</span>
																				<span class="keyword">class</span>
																				<span>);   </span>
																		</span>
																</li>
																<li class="">
																		<span>SessionFactory sf = conf.buildSessionFactory();   </span>
																</li>
														</ol>
												</div>
										</div>
										<script><![CDATA[ender_code();]]&gt;</script>
										<p>
										</p>
										<p>这样的代码加进去就可以了。如果是包含EJB的的复杂的J2EE应用，可能需要依靠App Server的功能来保证预创建SessionFactory实例。</p>
								</td>
						</tr>
				</tbody>
		</table>
		<br />
<img src ="http://www.blogjava.net/hxweb/aggbug/123823.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/hxweb/" target="_blank">好学蜘蛛</a> 2007-06-13 11:20 <a href="http://www.blogjava.net/hxweb/articles/123823.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>如何在Weblogic上配置Hibernate为JNDI </title><link>http://www.blogjava.net/hxweb/articles/123821.html</link><dc:creator>好学蜘蛛</dc:creator><author>好学蜘蛛</author><pubDate>Wed, 13 Jun 2007 03:11:00 GMT</pubDate><guid>http://www.blogjava.net/hxweb/articles/123821.html</guid><wfw:comment>http://www.blogjava.net/hxweb/comments/123821.html</wfw:comment><comments>http://www.blogjava.net/hxweb/articles/123821.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/hxweb/comments/commentRss/123821.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/hxweb/services/trackbacks/123821.html</trackback:ping><description><![CDATA[
		<table width="100%">
				<tbody>
						<tr>
								<td>
										<p>一、首先需要把Hibernate 用到的jar包和配置文件都放到Weblogic能够搜索到的CLASSPATH路径上。单单这一步就有很多人很迷茫，其实去仔细看看Weblogic的启动脚本文件startWeblogic.cmd和startWLS.cmd，我想大部分人都知道该怎么配置了。</p>
										<p>我机器上的有个Hibernate的项目，在D:\test\oracle目录下，该目录下的结构是： <br /></p>
										<div class="code_title">代码</div>
										<div class="code_div">
												<div class="dp-highlighter">
														<ol class="dp-j">
																<li class="alt">
																		<span>
																				<span>D:\test\oracle\lib 放置hibernate的所有jar包   </span>
																		</span>
																</li>
																<li class="">
																		<span>D:\test\oracle\src 放置源代码   </span>
																</li>
																<li class="alt">
																		<span>D:\test\oracle\classes 编译好的代码和hibernate的配置文件(hibernate.properties, log4j.properties, cache.ccf)  </span>
																</li>
														</ol>
												</div>
										</div>
										<script><![CDATA[ender_code();]]&gt;</script>
										<p>
										</p>
										<p>现在需要把D:\test\oracle\lib目录下那些jar文件和D:\test\oracle\classes目录都放置到Weblogic的 CLASSPATH里面去，所以修改mydomain里面的Weblogic启动脚本startWeblogic.cmd，在启动Weblogic之前，插入设置CLASSPATH的命令，如下：</p>
										<p>
										</p>
										<div class="code_title">代码</div>
										<div class="code_div">
												<div class="dp-highlighter">
														<div class="bar">
														</div>
														<ol class="dp-j">
																<li class="alt">
																		<span>
																				<span class="annotation">@rem</span>
																				<span> set hibernate classpath   </span>
																		</span>
																</li>
																<li class="">
																		<span>set HIBERNATE_LIB=D:\test\oracle\lib   </span>
																</li>
																<li class="alt">
																		<span>set HIBERNATE_CLASSES=D:\test\oracle\classes   </span>
																</li>
																<li class="">
																		<span>set CLASSPATH=%HIBERNATE_LIB%\cglib-asm.jar;%HIBERNATE_LIB%\commons-beanutils.jar;%HIBERNATE_LIB%\commons-collections.jar;%HIBERNATE_LIB%\commons-lang.jar;%HIBERNATE_LIB%\commons-logging.jar;%HIBERNATE_LIB%\dom4j-full.jar;%HIBERNATE_LIB%\hibernate2.jar;%HIBERNATE_LIB%\jcs.jar;%HIBERNATE_LIB%\log4j-</span>
																		<span class="number">1.2</span>
																		<span>.</span>
																		<span class="number">8</span>
																		<span>.jar;%HIBERNATE_LIB%\odmg.jar;%HIBERNATE_CLASSES%;%CLASSPATH%  </span>
																</li>
														</ol>
												</div>
										</div>
										<script><![CDATA[ender_code();]]&gt;</script>
										<p>
										</p>
										<p>下面一行，就是本来脚本里面的启动命令： <br /></p>
										<div class="code_title">代码</div>
										<div class="code_div">
												<div class="dp-highlighter">
														<div class="bar">
														</div>
														<ol class="dp-j">
																<li class="alt">
																		<span>
																				<span class="annotation">@rem</span>
																				<span> Call Weblogic Server   </span>
																		</span>
																</li>
																<li class="">
																		<span>call </span>
																		<span class="string">"C:\bea\weblogic700\server\bin\startWLS.cmd"</span>
																		<span>  </span>
																</li>
														</ol>
												</div>
										</div>
										<script><![CDATA[ender_code();]]&gt;</script>
										<p>
										</p>
										<p>二、在Weblogic上配置 Oracle数据库的连接池。这一步本来和Hibernate无关，但是如果你想要使用EJB，想要使用JTA，那么必须使用Weblogic提供的连接池，而不能使用Hibernate自带的连接池，或者其它第三方连接池，否则容器将无法管理数据库事务。这一步很简单，就是在Weblogic Console里面配置Connection Pool和TxData Source，我的Tx DataSource取名称为“mypool”</p>
										<p>三、修改hibernate.properties。使用Weblogic的连接池，而不是自带的连接池。我修改的是D:\test\oracle\classes\hibernate.properties，增加如下行： <br /></p>
										<div class="code_title">代码</div>
										<div class="code_div">
												<div class="dp-highlighter">
														<ol class="dp-j">
																<li class="alt">
																		<span>
																				<span>hibernate.dialect net.sf.hibernate.dialect.OracleDialect   </span>
																		</span>
																</li>
																<li class="">
																		<span>hibernate.connection.datasource mypool   </span>
																</li>
																<li class="alt">
																		<span>hibernate.connection.provider_class net.sf.hibernate.connection.DatasourceConnectionProvider   </span>
																</li>
																<li class="">
																		<span>hibernate.session_factory_name hibernate.session_factory  </span>
																</li>
														</ol>
												</div>
										</div>
										<script><![CDATA[ender_code();]]&gt;</script>
										<p>
										</p>
										<p>注意最后一行，这是使用 Hibernate来绑定JNDI给JNDI起的名称，本来应该是hibernate/session_factory，但是Weblogic要求改为. 号，不过在程序中lookup的时候还是要写hibernate/session_factory</p>
										<p>另外提到一点的是 <br /></p>
										<div class="code_title">代码</div>
										<div class="code_div">
												<div class="dp-highlighter">
														<div class="bar">
														</div>
														<ol class="dp-j">
																<li class="alt">
																		<span>
																				<span>hibernate.jdbc.fetch_size </span>
																				<span class="number">50</span>
																				<span>  </span>
																		</span>
																</li>
																<li class="">
																		<span>hibernate.jdbc.batch_size </span>
																		<span class="number">25</span>
																		<span>  </span>
																</li>
														</ol>
												</div>
										</div>
										<script><![CDATA[ender_code();]]&gt;</script>
										<p>
										</p>
										<p>分别对数据库查询和插入有很大的性能影响，调节这两个选项可以得到最好的性能。</p>
										<p>为了保证SessionFactory实例的预创建，使用Weblogic的T3StartUpDef接口创建一个StartUp类，在Weblogic启动的时候运行： <br /></p>
										<div class="code_title">代码</div>
										<div class="code_div">
												<div class="dp-highlighter">
														<div class="bar">
														</div>
														<ol class="dp-j">
																<li class="alt">
																		<span>
																				<span class="keyword">package</span>
																				<span> com.fankai;   </span>
																		</span>
																</li>
																<li class="">
																		<span>  </span>
																</li>
																<li class="alt">
																		<span>
																		</span>
																		<span class="keyword">import</span>
																		<span> java.util.Hashtable;   </span>
																</li>
																<li class="">
																		<span>
																		</span>
																		<span class="keyword">import</span>
																		<span> weblogic.common.T3StartupDef;   </span>
																</li>
																<li class="alt">
																		<span>
																		</span>
																		<span class="keyword">import</span>
																		<span> weblogic.common.T3ServicesDef;   </span>
																</li>
																<li class="">
																		<span>
																		</span>
																		<span class="keyword">import</span>
																		<span> net.sf.hibernate.cfg.Configuration;   </span>
																</li>
																<li class="alt">
																		<span>
																		</span>
																		<span class="keyword">import</span>
																		<span> net.sf.hibernate.SessionFactory;   </span>
																</li>
																<li class="">
																		<span>  </span>
																</li>
																<li class="alt">
																		<span>
																		</span>
																		<span class="keyword">public</span>
																		<span> </span>
																		<span class="keyword">class</span>
																		<span> HibernateStartUp </span>
																		<span class="keyword">implements</span>
																		<span> T3StartupDef {   </span>
																</li>
																<li class="">
																		<span>  </span>
																</li>
																<li class="alt">
																		<span>  </span>
																		<span class="keyword">public</span>
																		<span> </span>
																		<span class="keyword">void</span>
																		<span> setServices(T3ServicesDef services) {}   </span>
																</li>
																<li class="">
																		<span>  </span>
																</li>
																<li class="alt">
																		<span>  </span>
																		<span class="keyword">public</span>
																		<span> String startup(String name, Hashtable args) </span>
																		<span class="keyword">throws</span>
																		<span> Exception {   </span>
																</li>
																<li class="">
																		<span>    Configuration conf = </span>
																		<span class="keyword">new</span>
																		<span> Configuration().addClass(Cat.</span>
																		<span class="keyword">class</span>
																		<span>);   </span>
																</li>
																<li class="alt">
																		<span>    SessionFactory sf = conf.buildSessionFactory();    </span>
																</li>
																<li class="">
																		<span>    </span>
																		<span class="keyword">return</span>
																		<span> </span>
																		<span class="string">"Hibernate Startup completed successfully"</span>
																		<span>;   </span>
																</li>
																<li class="alt">
																		<span>  }    </span>
																</li>
																<li class="">
																		<span>}  </span>
																</li>
														</ol>
												</div>
										</div>
										<script><![CDATA[ender_code();]]&gt;</script>
										<p>
										</p>
										<p>代码非常简单，其实就是确保预先运行</p>
										<p>
										</p>
										<div class="code_title">代码</div>
										<div class="code_div">
												<div class="dp-highlighter">
														<div class="bar">
														</div>
														<ol class="dp-j">
																<li class="alt">
																		<span>
																				<span>Configuration conf = </span>
																				<span class="keyword">new</span>
																				<span> Configuration().addClass(Cat.</span>
																				<span class="keyword">class</span>
																				<span>);   </span>
																		</span>
																</li>
																<li class="">
																		<span>SessionFactory sf = conf.buildSessionFactory();   </span>
																</li>
														</ol>
												</div>
										</div>
										<script><![CDATA[ender_code();]]&gt;</script>
										<p>
										</p>
										<p>把sf创建出来，而Hibernate会自行调用一系列类方法，把sf绑定到Weblogic的的JNDI树下的hibernate/session_factory路径中。</p>
										<p>4、编译HibernateStartUp.java <br />编译这个源代码的时候需要注意的是，要把weblogic.jar包和Hibernate所有的相关包和配置文件导入。我是把这个源代码放到D:\test\oracle\src目录下的，用早已编写好的ant脚本运行一下就编译好了，并且编译好的 class文件被放置到D:\test\oracle\classes目录下，该目录已经被加入到Weblogic的CLASSPATH里面，因此很省事。</p>
										<p>五、配置StartUp类 <br />启动Weblogic，打开Console控制台，在左边的Applet树上找到StartUp &amp; Shutdown，然后在右边点击“Configure a new Startup Class...”，在Name框里面随便填写，在ClassName里面填写你编写的StartUp类，我填写的是 com.fankai.HibernateStartUp ，然后点击“Apply”。然后切换到Target这选项卡，在Target-Server左边的 Avaiable框里面选择“myserver”，点击右箭头，把它挪到右边的“Chosen”框里面去，最后再点击一下“Apply"按钮。如果此时 Weblogic的DOS窗口里面没有出错信息，那么应该已经配置成功了。</p>
										<p>六、现在关闭Weblogic，再重新运行 startWelogic.cmd，启动Weblogic，观察DOS窗口的输出信息，可以看到Hibernate的初始化信息一屏屏的滚动输出，证明已经配置成功。现在再打开Console控制台，点击左边Applet树中的Servers|myserver，然后可以在右边最下面找到“View JNDI tree ”，点击它，会打开一个浏览器窗口，显示JNDI树，这时你可以看到一个名称为hibernate的JNDI对象，在左边的Applet树中点击它，看右边的详细信息，我的机器上的信息如下： <br /></p>
										<div class="code_title">代码</div>
										<div class="code_div">
												<div class="dp-highlighter">
														<div class="bar">
														</div>
														<ol class="dp-j">
																<li class="alt">
																		<span>
																				<span>Bind Name: hibernate   </span>
																		</span>
																</li>
																<li class="">
																		<span>Object Class: net.sf.hibernate.impl.SessionFactoryImpl   </span>
																</li>
																<li class="alt">
																		<span>Object Hash Code: </span>
																		<span class="number">454492</span>
																		<span>  </span>
																</li>
																<li class="">
																		<span>Object To String: net.sf.hibernate.impl.SessionFactoryImpl</span>
																		<span class="annotation">@6ef5c</span>
																		<span>  </span>
																</li>
														</ol>
												</div>
										</div>
										<script><![CDATA[ender_code();]]&gt;</script>
										<br />完全正确！ <br />最后你可以随意在EJB或者Servlet/JSP里面使用JND查找来获得SessionFactory了。 
<p></p><p>例如：</p><p></p><div class="code_title">代码</div><div class="code_div"><div class="dp-highlighter"><div class="bar"></div><ol class="dp-j"><li class="alt"><span><span>Context ctx = </span><span class="keyword">new</span><span> InitialContext();   </span></span></li><li class=""><span>SessionFactory sf = (SessionFactory) ctx.lookup(</span><span class="string">"hibernate/session_factory"</span><span>);  </span></li></ol></div></div><script><![CDATA[ender_code();]]&gt;</script><p></p><p>在其它App Server上如何配置，本质上和Weblogic是一样的，只是你要确保在其它程序运行之前，先把</p><p></p><div class="code_title">代码</div><div class="code_div"><div class="dp-highlighter"><div class="bar"></div><ol class="dp-j"><li class="alt"><span><span>Configuration conf = </span><span class="keyword">new</span><span> Configuration().addClass(Cat.</span><span class="keyword">class</span><span>);   </span></span></li><li class=""><span>SessionFactory sf = conf.buildSessionFactory();   </span></li></ol></div></div><script><![CDATA[ender_code();]]&gt;</script><p></p><p>这两行代码运行一遍就OK了</p></td>
						</tr>
				</tbody>
		</table>
		<br />
		<br />
<img src ="http://www.blogjava.net/hxweb/aggbug/123821.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/hxweb/" target="_blank">好学蜘蛛</a> 2007-06-13 11:11 <a href="http://www.blogjava.net/hxweb/articles/123821.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>页面嵌入在线聊天 (prototype) </title><link>http://www.blogjava.net/hxweb/articles/123819.html</link><dc:creator>好学蜘蛛</dc:creator><author>好学蜘蛛</author><pubDate>Wed, 13 Jun 2007 03:07:00 GMT</pubDate><guid>http://www.blogjava.net/hxweb/articles/123819.html</guid><wfw:comment>http://www.blogjava.net/hxweb/comments/123819.html</wfw:comment><comments>http://www.blogjava.net/hxweb/articles/123819.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/hxweb/comments/commentRss/123819.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/hxweb/services/trackbacks/123819.html</trackback:ping><description><![CDATA[
		<strong>
				<font color="#ff0000">问题 :</font>
		</strong>提供给B/S 结构一个实时的运行展现<br /><strong><font color="#0000ff">解决:</font></strong>   prototype 的 Ajax.PeriodicalUpdater 更新<br />            prototype 的    Ajax.Request 语句提交<br />            action 语句的组织展现<br /><a href="/Files/Good-Game/take.rar"><br />http://www.blogjava.net/Files/Good-Game/take.rar</a><br />    没有lib 大家可以就加 struct 相关 lib 就可以了<br /><br /><strong><font color="#006400">说明:</font></strong> <br />      <br /><div style="BORDER-RIGHT: rgb(204,204,204) 1px solid; PADDING-RIGHT: 5px; BORDER-TOP: rgb(204,204,204) 1px solid; PADDING-LEFT: 4px; FONT-SIZE: 13px; PADDING-BOTTOM: 4px; BORDER-LEFT: rgb(204,204,204) 1px solid; WIDTH: 98%; PADDING-TOP: 4px; BORDER-BOTTOM: rgb(204,204,204) 1px solid; BACKGROUND-COLOR: rgb(238,238,238)"><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" /><span style="COLOR: rgb(0,0,0)"><br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" /></span><span style="COLOR: rgb(0,0,255)">&lt;!</span><span style="COLOR: rgb(255,0,255)">DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"</span><span style="COLOR: rgb(0,0,255)">&gt;</span><span style="COLOR: rgb(0,0,0)"><br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" /></span><span style="COLOR: rgb(0,0,255)">&lt;</span><span style="COLOR: rgb(128,0,0)">html</span><span style="COLOR: rgb(0,0,255)">&gt;</span><span style="COLOR: rgb(0,0,0)"><br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />  </span><span style="COLOR: rgb(0,0,255)">&lt;</span><span style="COLOR: rgb(128,0,0)">head</span><span style="COLOR: rgb(0,0,255)">&gt;</span><span style="COLOR: rgb(0,0,0)"><br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />          </span><span style="COLOR: rgb(0,0,255)">&lt;</span><span style="COLOR: rgb(128,0,0)">SCRIPT </span><span style="COLOR: rgb(255,0,0)">language</span><span style="COLOR: rgb(0,0,255)">="Javascript"</span><span style="COLOR: rgb(255,0,0)"> src</span><span style="COLOR: rgb(0,0,255)">="prototype1.5.0.js"</span><span style="COLOR: rgb(0,0,255)">&gt;&lt;/</span><span style="COLOR: rgb(128,0,0)">SCRIPT</span><span style="COLOR: rgb(0,0,255)">&gt;</span><span style="COLOR: rgb(0,0,0)"><br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />  </span><span style="COLOR: rgb(0,0,255)">&lt;/</span><span style="COLOR: rgb(128,0,0)">head</span><span style="COLOR: rgb(0,0,255)">&gt;</span><span style="COLOR: rgb(0,0,0)"><br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />  <br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />  </span><span style="COLOR: rgb(0,0,255)">&lt;</span><span style="COLOR: rgb(128,0,0)">body </span><span style="COLOR: rgb(255,0,0)">onload</span><span style="COLOR: rgb(0,0,255)">="Said()"</span><span style="COLOR: rgb(0,0,255)">&gt;</span><span style="COLOR: rgb(0,0,0)"> <br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />      </span><span style="COLOR: rgb(0,0,255)">&lt;</span><span style="COLOR: rgb(128,0,0)">INPUT </span><span style="COLOR: rgb(255,0,0)">id</span><span style="COLOR: rgb(0,0,255)">='name1' </span><span style="COLOR: rgb(255,0,0)">type</span><span style="COLOR: rgb(0,0,255)">="text"</span><span style="COLOR: rgb(255,0,0)"> size</span><span style="COLOR: rgb(0,0,255)">="10"</span><span style="COLOR: rgb(255,0,0)"> value</span><span style="COLOR: rgb(0,0,255)">="请输入名字"</span><span style="COLOR: rgb(255,0,0)"> onfocus</span><span style="COLOR: rgb(0,0,255)">="if($('name1').value=='请输入名字') $('name1').innerText='' "</span><span style="COLOR: rgb(255,0,0)"> </span><span style="COLOR: rgb(0,0,255)">/&gt;</span><span style="COLOR: rgb(0,0,0)"><br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />      </span><span style="COLOR: rgb(0,0,255)">&lt;</span><span style="COLOR: rgb(128,0,0)">INPUT </span><span style="COLOR: rgb(255,0,0)">id</span><span style="COLOR: rgb(0,0,255)">='text1' </span><span style="COLOR: rgb(255,0,0)">type</span><span style="COLOR: rgb(0,0,255)">="text"</span><span style="COLOR: rgb(255,0,0)"> onkeydown</span><span style="COLOR: rgb(0,0,255)">="if(event.keyCode==13){event.keyCode=0; onb();}"</span><span style="COLOR: rgb(0,0,255)">/&gt;</span><span style="COLOR: rgb(0,0,0)"><br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />      </span><span style="COLOR: rgb(0,0,255)">&lt;</span><span style="COLOR: rgb(128,0,0)">INPUT </span><span style="COLOR: rgb(255,0,0)">id</span><span style="COLOR: rgb(0,0,255)">='button1' </span><span style="COLOR: rgb(255,0,0)">type</span><span style="COLOR: rgb(0,0,255)">="button"</span><span style="COLOR: rgb(255,0,0)"> value</span><span style="COLOR: rgb(0,0,255)">="test"</span><span style="COLOR: rgb(255,0,0)"> onclick</span><span style="COLOR: rgb(0,0,255)">='onb()' </span><span style="COLOR: rgb(0,0,255)">/&gt;</span><span style="COLOR: rgb(0,0,0)"><br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />  </span><span style="COLOR: rgb(0,0,255)">&lt;/</span><span style="COLOR: rgb(128,0,0)">body</span><span style="COLOR: rgb(0,0,255)">&gt;</span><span style="COLOR: rgb(0,0,0)"><br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />  </span><span style="COLOR: rgb(0,0,255)">&lt;</span><span style="COLOR: rgb(128,0,0)">div </span><span style="COLOR: rgb(255,0,0)">id</span><span style="COLOR: rgb(0,0,255)">='div1'</span><span style="COLOR: rgb(0,0,255)">/&gt;</span><span style="COLOR: rgb(0,0,0)"><br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" /></span><span style="COLOR: rgb(0,0,255)">&lt;/</span><span style="COLOR: rgb(128,0,0)">html</span><span style="COLOR: rgb(0,0,255)">&gt;</span><span style="COLOR: rgb(0,0,0)"><br /><img id="Codehighlighter1_549_1348_Open_Image" onclick="this.style.display='none'; Codehighlighter1_549_1348_Open_Text.style.display='none'; Codehighlighter1_549_1348_Closed_Image.style.display='inline'; Codehighlighter1_549_1348_Closed_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedBlockStart.gif" align="top" /><img id="Codehighlighter1_549_1348_Closed_Image" style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_549_1348_Closed_Text.style.display='none'; Codehighlighter1_549_1348_Open_Image.style.display='inline'; Codehighlighter1_549_1348_Open_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ContractedBlock.gif" align="top" /></span><span style="COLOR: rgb(0,0,255)">&lt;</span><span style="COLOR: rgb(128,0,0)">script </span><span style="COLOR: rgb(255,0,0)">type</span><span style="COLOR: rgb(0,0,255)">="text/javascript"</span><span style="COLOR: rgb(255,0,0)">  </span><span style="COLOR: rgb(0,0,255)">&gt;</span><span id="Codehighlighter1_549_1348_Closed_Text" style="BORDER-RIGHT: rgb(128,128,128) 1px solid; BORDER-TOP: rgb(128,128,128) 1px solid; DISPLAY: none; BORDER-LEFT: rgb(128,128,128) 1px solid; BORDER-BOTTOM: rgb(128,128,128) 1px solid; BACKGROUND-COLOR: rgb(255,255,255)"><img src="http://www.blogjava.net/images/dot.gif" /></span><span id="Codehighlighter1_549_1348_Open_Text"><span style="COLOR: rgb(0,0,0); BACKGROUND-COLOR: rgb(245,245,245)"><br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />     <font color="#008000">  <font style="BACKGROUND-COLOR: rgb(255,255,255)"> //语句异步提交给服务器 Ajax.Request</font></font><br /><img id="Codehighlighter1_566_1005_Open_Image" onclick="this.style.display='none'; Codehighlighter1_566_1005_Open_Text.style.display='none'; Codehighlighter1_566_1005_Closed_Image.style.display='inline'; Codehighlighter1_566_1005_Closed_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockStart.gif" align="top" /><img id="Codehighlighter1_566_1005_Closed_Image" style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_566_1005_Closed_Text.style.display='none'; Codehighlighter1_566_1005_Open_Image.style.display='inline'; Codehighlighter1_566_1005_Open_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ContractedSubBlock.gif" align="top" />    </span><span style="COLOR: rgb(0,0,255); BACKGROUND-COLOR: rgb(245,245,245)">function</span><span style="COLOR: rgb(0,0,0); BACKGROUND-COLOR: rgb(245,245,245)"> onb()</span><span id="Codehighlighter1_566_1005_Closed_Text" style="BORDER-RIGHT: rgb(128,128,128) 1px solid; BORDER-TOP: rgb(128,128,128) 1px solid; DISPLAY: none; BORDER-LEFT: rgb(128,128,128) 1px solid; BORDER-BOTTOM: rgb(128,128,128) 1px solid; BACKGROUND-COLOR: rgb(255,255,255)"><img src="http://www.blogjava.net/images/dot.gif" /></span><span id="Codehighlighter1_566_1005_Open_Text"><span style="COLOR: rgb(0,0,0); BACKGROUND-COLOR: rgb(245,245,245)">{                                          <br /><img id="Codehighlighter1_624_668_Open_Image" onclick="this.style.display='none'; Codehighlighter1_624_668_Open_Text.style.display='none'; Codehighlighter1_624_668_Closed_Image.style.display='inline'; Codehighlighter1_624_668_Closed_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockStart.gif" align="top" /><img id="Codehighlighter1_624_668_Closed_Image" style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_624_668_Closed_Text.style.display='none'; Codehighlighter1_624_668_Open_Image.style.display='inline'; Codehighlighter1_624_668_Open_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ContractedSubBlock.gif" align="top" />      </span><span style="COLOR: rgb(0,0,255); BACKGROUND-COLOR: rgb(245,245,245)">if</span><span style="COLOR: rgb(0,0,0); BACKGROUND-COLOR: rgb(245,245,245)">($('name1').value</span><span style="COLOR: rgb(0,0,0); BACKGROUND-COLOR: rgb(245,245,245)">==</span><span style="COLOR: rgb(0,0,0); BACKGROUND-COLOR: rgb(245,245,245)">'请输入名字' </span><span style="COLOR: rgb(0,0,0); BACKGROUND-COLOR: rgb(245,245,245)">||</span><span style="COLOR: rgb(0,0,0); BACKGROUND-COLOR: rgb(245,245,245)"> $('name1').value</span><span style="COLOR: rgb(0,0,0); BACKGROUND-COLOR: rgb(245,245,245)">==</span><span style="COLOR: rgb(0,0,0); BACKGROUND-COLOR: rgb(245,245,245)">'')</span><span id="Codehighlighter1_624_668_Closed_Text" style="BORDER-RIGHT: rgb(128,128,128) 1px solid; BORDER-TOP: rgb(128,128,128) 1px solid; DISPLAY: none; BORDER-LEFT: rgb(128,128,128) 1px solid; BORDER-BOTTOM: rgb(128,128,128) 1px solid; BACKGROUND-COLOR: rgb(255,255,255)"><img src="http://www.blogjava.net/images/dot.gif" /></span><span id="Codehighlighter1_624_668_Open_Text"><span style="COLOR: rgb(0,0,0); BACKGROUND-COLOR: rgb(245,245,245)">{<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />          window.alert('请输入名字');<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />          </span><span style="COLOR: rgb(0,0,255); BACKGROUND-COLOR: rgb(245,245,245)">return</span><span style="COLOR: rgb(0,0,0); BACKGROUND-COLOR: rgb(245,245,245)"> <br /><img src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockEnd.gif" align="top" />      }</span></span><span style="COLOR: rgb(0,0,0); BACKGROUND-COLOR: rgb(245,245,245)"><br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />      <br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />      </span><span style="COLOR: rgb(0,0,255); BACKGROUND-COLOR: rgb(245,245,245)">var</span><span style="COLOR: rgb(0,0,0); BACKGROUND-COLOR: rgb(245,245,245)"> url </span><span style="COLOR: rgb(0,0,0); BACKGROUND-COLOR: rgb(245,245,245)">=</span><span style="COLOR: rgb(0,0,0); BACKGROUND-COLOR: rgb(245,245,245)"> 'http:</span><span style="COLOR: rgb(0,128,0); BACKGROUND-COLOR: rgb(245,245,245)">//</span><span style="COLOR: rgb(0,128,0); BACKGROUND-COLOR: rgb(245,245,245)">192.168.1.130:7000/xxs/mySaid.do?name='+$F('name1')+'&amp;take='+$F('text1');                </span><span style="COLOR: rgb(0,128,0); BACKGROUND-COLOR: rgb(245,245,245)"><br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" /></span><span style="COLOR: rgb(0,0,0); BACKGROUND-COLOR: rgb(245,245,245)">      </span><span style="COLOR: rgb(0,0,255); BACKGROUND-COLOR: rgb(245,245,245)">new</span><span style="COLOR: rgb(0,0,0); BACKGROUND-COLOR: rgb(245,245,245)"> Ajax.Request(<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />        url,<br /><img id="Codehighlighter1_818_885_Open_Image" onclick="this.style.display='none'; Codehighlighter1_818_885_Open_Text.style.display='none'; Codehighlighter1_818_885_Closed_Image.style.display='inline'; Codehighlighter1_818_885_Closed_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockStart.gif" align="top" /><img id="Codehighlighter1_818_885_Closed_Image" style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_818_885_Closed_Text.style.display='none'; Codehighlighter1_818_885_Open_Image.style.display='inline'; Codehighlighter1_818_885_Open_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ContractedSubBlock.gif" align="top" />        </span><span id="Codehighlighter1_818_885_Closed_Text" style="BORDER-RIGHT: rgb(128,128,128) 1px solid; BORDER-TOP: rgb(128,128,128) 1px solid; DISPLAY: none; BORDER-LEFT: rgb(128,128,128) 1px solid; BORDER-BOTTOM: rgb(128,128,128) 1px solid; BACKGROUND-COLOR: rgb(255,255,255)"><img src="http://www.blogjava.net/images/dot.gif" /></span><span id="Codehighlighter1_818_885_Open_Text"><span style="COLOR: rgb(0,0,0); BACKGROUND-COLOR: rgb(245,245,245)">{<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />            method: 'get',<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />            onComplete: action              <br /><img src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockEnd.gif" align="top" />        }</span></span><span style="COLOR: rgb(0,0,0); BACKGROUND-COLOR: rgb(245,245,245)">);<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />        <br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />        $('name1').readOnly </span><span style="COLOR: rgb(0,0,0); BACKGROUND-COLOR: rgb(245,245,245)">=</span><span style="COLOR: rgb(0,0,0); BACKGROUND-COLOR: rgb(245,245,245)"> </span><span style="COLOR: rgb(0,0,255); BACKGROUND-COLOR: rgb(245,245,245)">true</span><span style="COLOR: rgb(0,0,0); BACKGROUND-COLOR: rgb(245,245,245)"><br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />        $('name1').style.background </span><span style="COLOR: rgb(0,0,0); BACKGROUND-COLOR: rgb(245,245,245)">=</span><span style="COLOR: rgb(0,0,0); BACKGROUND-COLOR: rgb(245,245,245)"> 'lightblue'<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />        $('text1').innerText</span><span style="COLOR: rgb(0,0,0); BACKGROUND-COLOR: rgb(245,245,245)">=</span><span style="COLOR: rgb(0,0,0); BACKGROUND-COLOR: rgb(245,245,245)">'' <br /><img src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockEnd.gif" align="top" />    }</span></span><span style="COLOR: rgb(0,0,0); BACKGROUND-COLOR: rgb(245,245,245)"><br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />       <font color="#008000">//局部刷新 并提取 语句<br /></font><img id="Codehighlighter1_1025_1247_Open_Image" onclick="this.style.display='none'; Codehighlighter1_1025_1247_Open_Text.style.display='none'; Codehighlighter1_1025_1247_Closed_Image.style.display='inline'; Codehighlighter1_1025_1247_Closed_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockStart.gif" align="top" /><img id="Codehighlighter1_1025_1247_Closed_Image" style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_1025_1247_Closed_Text.style.display='none'; Codehighlighter1_1025_1247_Open_Image.style.display='inline'; Codehighlighter1_1025_1247_Open_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ContractedSubBlock.gif" align="top" />    </span><span style="COLOR: rgb(0,0,255); BACKGROUND-COLOR: rgb(245,245,245)">function</span><span style="COLOR: rgb(0,0,0); BACKGROUND-COLOR: rgb(245,245,245)"> Said()</span><span id="Codehighlighter1_1025_1247_Closed_Text" style="BORDER-RIGHT: rgb(128,128,128) 1px solid; BORDER-TOP: rgb(128,128,128) 1px solid; DISPLAY: none; BORDER-LEFT: rgb(128,128,128) 1px solid; BORDER-BOTTOM: rgb(128,128,128) 1px solid; BACKGROUND-COLOR: rgb(255,255,255)"><img src="http://www.blogjava.net/images/dot.gif" /></span><span id="Codehighlighter1_1025_1247_Open_Text"><span style="COLOR: rgb(0,0,0); BACKGROUND-COLOR: rgb(245,245,245)">{<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />        </span><span style="COLOR: rgb(0,0,255); BACKGROUND-COLOR: rgb(245,245,245)">var</span><span style="COLOR: rgb(0,0,0); BACKGROUND-COLOR: rgb(245,245,245)"> url </span><span style="COLOR: rgb(0,0,0); BACKGROUND-COLOR: rgb(245,245,245)">=</span><span style="COLOR: rgb(0,0,0); BACKGROUND-COLOR: rgb(245,245,245)"> 'http:</span><span style="COLOR: rgb(0,128,0); BACKGROUND-COLOR: rgb(245,245,245)">//</span><span style="COLOR: rgb(0,128,0); BACKGROUND-COLOR: rgb(245,245,245)">192.168.1.130:7000/xxs/mySaid.do';  </span><span style="COLOR: rgb(0,128,0); BACKGROUND-COLOR: rgb(245,245,245)"><br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" /></span><span style="COLOR: rgb(0,0,0); BACKGROUND-COLOR: rgb(245,245,245)">        </span><span style="COLOR: rgb(0,0,255); BACKGROUND-COLOR: rgb(245,245,245)">new</span><span style="COLOR: rgb(0,0,0); BACKGROUND-COLOR: rgb(245,245,245)"> Ajax.PeriodicalUpdater(<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />            'div1',<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />            url,<br /><img id="Codehighlighter1_1136_1239_Open_Image" onclick="this.style.display='none'; Codehighlighter1_1136_1239_Open_Text.style.display='none'; Codehighlighter1_1136_1239_Closed_Image.style.display='inline'; Codehighlighter1_1136_1239_Closed_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockStart.gif" align="top" /><img id="Codehighlighter1_1136_1239_Closed_Image" style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_1136_1239_Closed_Text.style.display='none'; Codehighlighter1_1136_1239_Open_Image.style.display='inline'; Codehighlighter1_1136_1239_Open_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ContractedSubBlock.gif" align="top" />            </span><span id="Codehighlighter1_1136_1239_Closed_Text" style="BORDER-RIGHT: rgb(128,128,128) 1px solid; BORDER-TOP: rgb(128,128,128) 1px solid; DISPLAY: none; BORDER-LEFT: rgb(128,128,128) 1px solid; BORDER-BOTTOM: rgb(128,128,128) 1px solid; BACKGROUND-COLOR: rgb(255,255,255)"><img src="http://www.blogjava.net/images/dot.gif" /></span><span id="Codehighlighter1_1136_1239_Open_Text"><span style="COLOR: rgb(0,0,0); BACKGROUND-COLOR: rgb(245,245,245)">{<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />                method: 'get',<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />                onComplete: SumSaid,<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />                evalScripts: </span><span style="COLOR: rgb(0,0,255); BACKGROUND-COLOR: rgb(245,245,245)">true</span><span style="COLOR: rgb(0,0,0); BACKGROUND-COLOR: rgb(245,245,245)">,<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />                frequency: </span><span style="COLOR: rgb(0,0,0); BACKGROUND-COLOR: rgb(245,245,245)">1</span><span style="COLOR: rgb(0,0,0); BACKGROUND-COLOR: rgb(245,245,245)">,<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />                decay: </span><span style="COLOR: rgb(0,0,0); BACKGROUND-COLOR: rgb(245,245,245)">1</span><span style="COLOR: rgb(0,0,0); BACKGROUND-COLOR: rgb(245,245,245)"><br /><img src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockEnd.gif" align="top" />            }</span></span><span style="COLOR: rgb(0,0,0); BACKGROUND-COLOR: rgb(245,245,245)"><br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />        );<br /><img src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockEnd.gif" align="top" />    }</span></span><span style="COLOR: rgb(0,0,0); BACKGROUND-COLOR: rgb(245,245,245)"><br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />     <strong><font color="#008000">  //展现<br /></font></strong><img id="Codehighlighter1_1274_1319_Open_Image" onclick="this.style.display='none'; Codehighlighter1_1274_1319_Open_Text.style.display='none'; Codehighlighter1_1274_1319_Closed_Image.style.display='inline'; Codehighlighter1_1274_1319_Closed_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockStart.gif" align="top" /><img id="Codehighlighter1_1274_1319_Closed_Image" style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_1274_1319_Closed_Text.style.display='none'; Codehighlighter1_1274_1319_Open_Image.style.display='inline'; Codehighlighter1_1274_1319_Open_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ContractedSubBlock.gif" align="top" />    </span><span style="COLOR: rgb(0,0,255); BACKGROUND-COLOR: rgb(245,245,245)">function</span><span style="COLOR: rgb(0,0,0); BACKGROUND-COLOR: rgb(245,245,245)"> SumSaid(req)</span><span id="Codehighlighter1_1274_1319_Closed_Text" style="BORDER-RIGHT: rgb(128,128,128) 1px solid; BORDER-TOP: rgb(128,128,128) 1px solid; DISPLAY: none; BORDER-LEFT: rgb(128,128,128) 1px solid; BORDER-BOTTOM: rgb(128,128,128) 1px solid; BACKGROUND-COLOR: rgb(255,255,255)"><img src="http://www.blogjava.net/images/dot.gif" /></span><span id="Codehighlighter1_1274_1319_Open_Text"><span style="COLOR: rgb(0,0,0); BACKGROUND-COLOR: rgb(245,245,245)">{<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />        $('div1').innerHTML </span><span style="COLOR: rgb(0,0,0); BACKGROUND-COLOR: rgb(245,245,245)">=</span><span style="COLOR: rgb(0,0,0); BACKGROUND-COLOR: rgb(245,245,245)"> req.responseText;<br /><img src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockEnd.gif" align="top" />    }</span></span><span style="COLOR: rgb(0,0,0); BACKGROUND-COLOR: rgb(245,245,245)"><br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" /><br /><img id="Codehighlighter1_1343_1346_Open_Image" onclick="this.style.display='none'; Codehighlighter1_1343_1346_Open_Text.style.display='none'; Codehighlighter1_1343_1346_Closed_Image.style.display='inline'; Codehighlighter1_1343_1346_Closed_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockStart.gif" align="top" /><img id="Codehighlighter1_1343_1346_Closed_Image" style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_1343_1346_Closed_Text.style.display='none'; Codehighlighter1_1343_1346_Open_Image.style.display='inline'; Codehighlighter1_1343_1346_Open_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ContractedSubBlock.gif" align="top" />    </span><span style="COLOR: rgb(0,0,255); BACKGROUND-COLOR: rgb(245,245,245)">function</span><span style="COLOR: rgb(0,0,0); BACKGROUND-COLOR: rgb(245,245,245)"> action(req)</span><span id="Codehighlighter1_1343_1346_Closed_Text" style="BORDER-RIGHT: rgb(128,128,128) 1px solid; BORDER-TOP: rgb(128,128,128) 1px solid; DISPLAY: none; BORDER-LEFT: rgb(128,128,128) 1px solid; BORDER-BOTTOM: rgb(128,128,128) 1px solid; BACKGROUND-COLOR: rgb(255,255,255)"><img src="http://www.blogjava.net/images/dot.gif" /></span><span id="Codehighlighter1_1343_1346_Open_Text"><span style="COLOR: rgb(0,0,0); BACKGROUND-COLOR: rgb(245,245,245)">{<br /><img src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockEnd.gif" align="top" />    }</span></span><span style="COLOR: rgb(0,0,0); BACKGROUND-COLOR: rgb(245,245,245)"><br /><img src="http://www.blogjava.net/images/OutliningIndicators/ExpandedBlockEnd.gif" align="top" />    </span></span><span style="COLOR: rgb(0,0,255)">&lt;/</span><span style="COLOR: rgb(128,0,0)">script</span><span style="COLOR: rgb(0,0,255)">&gt;</span><span style="COLOR: rgb(0,0,0)"><br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />    </span></div><br />Action <br /><div style="BORDER-RIGHT: rgb(204,204,204) 1px solid; PADDING-RIGHT: 5px; BORDER-TOP: rgb(204,204,204) 1px solid; PADDING-LEFT: 4px; FONT-SIZE: 13px; PADDING-BOTTOM: 4px; BORDER-LEFT: rgb(204,204,204) 1px solid; WIDTH: 98%; PADDING-TOP: 4px; BORDER-BOTTOM: rgb(204,204,204) 1px solid; BACKGROUND-COLOR: rgb(238,238,238)"><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" /><span style="COLOR: rgb(0,0,0)">   <font color="#0000ff">private </font>static int SIZE = 30 ;<br />    <font color="#0000ff"> private </font>List list = new ArrayList();<br /><br />     </span><span style="COLOR: rgb(0,0,255)">public</span><span style="COLOR: rgb(0,0,0)"> ActionForward execute(<br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />        ActionMapping mapping,<br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />        ActionForm form,<br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />        HttpServletRequest request,<br /><img id="Codehighlighter1_137_522_Open_Image" onclick="this.style.display='none'; Codehighlighter1_137_522_Open_Text.style.display='none'; Codehighlighter1_137_522_Closed_Image.style.display='inline'; Codehighlighter1_137_522_Closed_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedBlockStart.gif" align="top" /><img id="Codehighlighter1_137_522_Closed_Image" style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_137_522_Closed_Text.style.display='none'; Codehighlighter1_137_522_Open_Image.style.display='inline'; Codehighlighter1_137_522_Open_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ContractedBlock.gif" align="top" />        HttpServletResponse response) </span><span id="Codehighlighter1_137_522_Closed_Text" style="BORDER-RIGHT: rgb(128,128,128) 1px solid; BORDER-TOP: rgb(128,128,128) 1px solid; DISPLAY: none; BORDER-LEFT: rgb(128,128,128) 1px solid; BORDER-BOTTOM: rgb(128,128,128) 1px solid; BACKGROUND-COLOR: rgb(255,255,255)"><img src="http://www.blogjava.net/images/dot.gif" /></span><span id="Codehighlighter1_137_522_Open_Text"><span style="COLOR: rgb(0,0,0)">{<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />        String take </span><span style="COLOR: rgb(0,0,0)">=</span><span style="COLOR: rgb(0,0,0)"> request.getParameter(</span><span style="COLOR: rgb(0,0,0)">"</span><span style="COLOR: rgb(0,0,0)">take</span><span style="COLOR: rgb(0,0,0)">"</span><span style="COLOR: rgb(0,0,0)">) ;<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />        String name </span><span style="COLOR: rgb(0,0,0)">=</span><span style="COLOR: rgb(0,0,0)"> request.getParameter(</span><span style="COLOR: rgb(0,0,0)">"</span><span style="COLOR: rgb(0,0,0)">name</span><span style="COLOR: rgb(0,0,0)">"</span><span style="COLOR: rgb(0,0,0)">) ;<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />        response.addHeader(</span><span style="COLOR: rgb(0,0,0)">"</span><span style="COLOR: rgb(0,0,0)">Cache-Control</span><span style="COLOR: rgb(0,0,0)">"</span><span style="COLOR: rgb(0,0,0)">,</span><span style="COLOR: rgb(0,0,0)">"</span><span style="COLOR: rgb(0,0,0)">no-cache</span><span style="COLOR: rgb(0,0,0)">"</span><span style="COLOR: rgb(0,0,0)">); <br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />        <br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />        request.setAttribute(</span><span style="COLOR: rgb(0,0,0)">"</span><span style="COLOR: rgb(0,0,0)">said</span><span style="COLOR: rgb(0,0,0)">"</span><span style="COLOR: rgb(0,0,0)">,DueiLie(name,take));<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" /><br /><img id="Codehighlighter1_363_454_Open_Image" onclick="this.style.display='none'; Codehighlighter1_363_454_Open_Text.style.display='none'; Codehighlighter1_363_454_Closed_Image.style.display='inline'; Codehighlighter1_363_454_Closed_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockStart.gif" align="top" /><img id="Codehighlighter1_363_454_Closed_Image" style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_363_454_Closed_Text.style.display='none'; Codehighlighter1_363_454_Open_Image.style.display='inline'; Codehighlighter1_363_454_Open_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ContractedSubBlock.gif" align="top" />        </span><span style="COLOR: rgb(0,0,255)">try</span><span style="COLOR: rgb(0,0,0)"> </span><span id="Codehighlighter1_363_454_Closed_Text" style="BORDER-RIGHT: rgb(128,128,128) 1px solid; BORDER-TOP: rgb(128,128,128) 1px solid; DISPLAY: none; BORDER-LEFT: rgb(128,128,128) 1px solid; BORDER-BOTTOM: rgb(128,128,128) 1px solid; BACKGROUND-COLOR: rgb(255,255,255)"><img src="http://www.blogjava.net/images/dot.gif" /></span><span id="Codehighlighter1_363_454_Open_Text"><span style="COLOR: rgb(0,0,0)">{<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />            request.setCharacterEncoding(</span><span style="COLOR: rgb(0,0,0)">"</span><span style="COLOR: rgb(0,0,0)">gb2312</span><span style="COLOR: rgb(0,0,0)">"</span><span style="COLOR: rgb(0,0,0)">);<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />            response.setCharacterEncoding(</span><span style="COLOR: rgb(0,0,0)">"</span><span style="COLOR: rgb(0,0,0)">gb2312</span><span style="COLOR: rgb(0,0,0)">"</span><span style="COLOR: rgb(0,0,0)">);<br /><img id="Codehighlighter1_476_480_Open_Image" onclick="this.style.display='none'; Codehighlighter1_476_480_Open_Text.style.display='none'; Codehighlighter1_476_480_Closed_Image.style.display='inline'; Codehighlighter1_476_480_Closed_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockStart.gif" align="top" /><img id="Codehighlighter1_476_480_Closed_Image" style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_476_480_Closed_Text.style.display='none'; Codehighlighter1_476_480_Open_Image.style.display='inline'; Codehighlighter1_476_480_Open_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ContractedSubBlock.gif" align="top" />        }</span></span><span style="COLOR: rgb(0,0,0)"> </span><span style="COLOR: rgb(0,0,255)">catch</span><span style="COLOR: rgb(0,0,0)"> (Exception e) </span><span id="Codehighlighter1_476_480_Closed_Text" style="BORDER-RIGHT: rgb(128,128,128) 1px solid; BORDER-TOP: rgb(128,128,128) 1px solid; DISPLAY: none; BORDER-LEFT: rgb(128,128,128) 1px solid; BORDER-BOTTOM: rgb(128,128,128) 1px solid; BACKGROUND-COLOR: rgb(255,255,255)"><img src="http://www.blogjava.net/images/dot.gif" /></span><span id="Codehighlighter1_476_480_Open_Text"><span style="COLOR: rgb(0,0,0)">{<br /><img src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockEnd.gif" align="top" />        }</span></span><span style="COLOR: rgb(0,0,0)"><br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" /><br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />        </span><span style="COLOR: rgb(0,0,255)">return</span><span style="COLOR: rgb(0,0,0)"> mapping.findForward(</span><span style="COLOR: rgb(0,0,0)">"</span><span style="COLOR: rgb(0,0,0)">list</span><span style="COLOR: rgb(0,0,0)">"</span><span style="COLOR: rgb(0,0,0)">);<br /><img src="http://www.blogjava.net/images/OutliningIndicators/ExpandedBlockEnd.gif" align="top" />    }</span></span><span style="COLOR: rgb(0,0,0)"><br /><img src="http://www.blogjava.net/images/OutliningIndicators/None.gif" align="top" />      <br />    <font color="#006400">    //语句的组织</font><br /><img id="Codehighlighter1_573_1038_Open_Image" onclick="this.style.display='none'; Codehighlighter1_573_1038_Open_Text.style.display='none'; Codehighlighter1_573_1038_Closed_Image.style.display='inline'; Codehighlighter1_573_1038_Closed_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedBlockStart.gif" align="top" /><img id="Codehighlighter1_573_1038_Closed_Image" style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_573_1038_Closed_Text.style.display='none'; Codehighlighter1_573_1038_Open_Image.style.display='inline'; Codehighlighter1_573_1038_Open_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ContractedBlock.gif" align="top" />    </span><span style="COLOR: rgb(0,0,255)">public</span><span style="COLOR: rgb(0,0,0)"> String DueiLie(String name,String take)</span><span id="Codehighlighter1_573_1038_Closed_Text" style="BORDER-RIGHT: rgb(128,128,128) 1px solid; BORDER-TOP: rgb(128,128,128) 1px solid; DISPLAY: none; BORDER-LEFT: rgb(128,128,128) 1px solid; BORDER-BOTTOM: rgb(128,128,128) 1px solid; BACKGROUND-COLOR: rgb(255,255,255)"><img src="http://www.blogjava.net/images/dot.gif" /></span><span id="Codehighlighter1_573_1038_Open_Text"><span style="COLOR: rgb(0,0,0)">{<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />        <br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />        StringBuffer strb  </span><span style="COLOR: rgb(0,0,0)">=</span><span style="COLOR: rgb(0,0,0)"> </span><span style="COLOR: rgb(0,0,255)">new</span><span style="COLOR: rgb(0,0,0)"> StringBuffer();<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />        </span><span style="COLOR: rgb(0,0,255)">if</span><span style="COLOR: rgb(0,0,0)">(name</span><span style="COLOR: rgb(0,0,0)">==</span><span style="COLOR: rgb(0,0,255)">null</span><span style="COLOR: rgb(0,0,0)">||</span><span style="COLOR: rgb(0,0,0)">take</span><span style="COLOR: rgb(0,0,0)">==</span><span style="COLOR: rgb(0,0,255)">null</span><span style="COLOR: rgb(0,0,0)">);<br /><img id="Codehighlighter1_657_865_Open_Image" onclick="this.style.display='none'; Codehighlighter1_657_865_Open_Text.style.display='none'; Codehighlighter1_657_865_Closed_Image.style.display='inline'; Codehighlighter1_657_865_Closed_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockStart.gif" align="top" /><img id="Codehighlighter1_657_865_Closed_Image" style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_657_865_Closed_Text.style.display='none'; Codehighlighter1_657_865_Open_Image.style.display='inline'; Codehighlighter1_657_865_Open_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ContractedSubBlock.gif" align="top" />        </span><span style="COLOR: rgb(0,0,255)">else</span><span id="Codehighlighter1_657_865_Closed_Text" style="BORDER-RIGHT: rgb(128,128,128) 1px solid; BORDER-TOP: rgb(128,128,128) 1px solid; DISPLAY: none; BORDER-LEFT: rgb(128,128,128) 1px solid; BORDER-BOTTOM: rgb(128,128,128) 1px solid; BACKGROUND-COLOR: rgb(255,255,255)"><img src="http://www.blogjava.net/images/dot.gif" /></span><span id="Codehighlighter1_657_865_Open_Text"><span style="COLOR: rgb(0,0,0)">{<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />            strb.append( name ).append(</span><span style="COLOR: rgb(0,0,0)">"</span><span style="COLOR: rgb(0,0,0)"> : </span><span style="COLOR: rgb(0,0,0)">"</span><span style="COLOR: rgb(0,0,0)">).append(take).append(</span><span style="COLOR: rgb(0,0,0)">"</span><span style="COLOR: rgb(0,0,0)">&lt;/br&gt;</span><span style="COLOR: rgb(0,0,0)">"</span><span style="COLOR: rgb(0,0,0)">) ;<br /><img id="Codehighlighter1_751_818_Open_Image" onclick="this.style.display='none'; Codehighlighter1_751_818_Open_Text.style.display='none'; Codehighlighter1_751_818_Closed_Image.style.display='inline'; Codehighlighter1_751_818_Closed_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockStart.gif" align="top" /><img id="Codehighlighter1_751_818_Closed_Image" style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_751_818_Closed_Text.style.display='none'; Codehighlighter1_751_818_Open_Image.style.display='inline'; Codehighlighter1_751_818_Open_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ContractedSubBlock.gif" align="top" />            </span><span style="COLOR: rgb(0,0,255)">if</span><span style="COLOR: rgb(0,0,0)">(list.size()</span><span style="COLOR: rgb(0,0,0)">==</span><span style="COLOR: rgb(0,0,0)">SIZE)</span><span id="Codehighlighter1_751_818_Closed_Text" style="BORDER-RIGHT: rgb(128,128,128) 1px solid; BORDER-TOP: rgb(128,128,128) 1px solid; DISPLAY: none; BORDER-LEFT: rgb(128,128,128) 1px solid; BORDER-BOTTOM: rgb(128,128,128) 1px solid; BACKGROUND-COLOR: rgb(255,255,255)"><img src="http://www.blogjava.net/images/dot.gif" /></span><span id="Codehighlighter1_751_818_Open_Text"><span style="COLOR: rgb(0,0,0)">{<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />                list.remove(list.get(</span><span style="COLOR: rgb(0,0,0)">0</span><span style="COLOR: rgb(0,0,0)">));<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />                list.add(strb.toString() );<br /><img id="Codehighlighter1_823_861_Open_Image" onclick="this.style.display='none'; Codehighlighter1_823_861_Open_Text.style.display='none'; Codehighlighter1_823_861_Closed_Image.style.display='inline'; Codehighlighter1_823_861_Closed_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockStart.gif" align="top" /><img id="Codehighlighter1_823_861_Closed_Image" style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_823_861_Closed_Text.style.display='none'; Codehighlighter1_823_861_Open_Image.style.display='inline'; Codehighlighter1_823_861_Open_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ContractedSubBlock.gif" align="top" />            }</span></span><span style="COLOR: rgb(0,0,255)">else</span><span id="Codehighlighter1_823_861_Closed_Text" style="BORDER-RIGHT: rgb(128,128,128) 1px solid; BORDER-TOP: rgb(128,128,128) 1px solid; DISPLAY: none; BORDER-LEFT: rgb(128,128,128) 1px solid; BORDER-BOTTOM: rgb(128,128,128) 1px solid; BACKGROUND-COLOR: rgb(255,255,255)"><img src="http://www.blogjava.net/images/dot.gif" /></span><span id="Codehighlighter1_823_861_Open_Text"><span style="COLOR: rgb(0,0,0)">{<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />                list.add( strb.toString() );<br /><img src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockEnd.gif" align="top" />            }</span></span><span style="COLOR: rgb(0,0,0)"><br /><img src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockEnd.gif" align="top" />        }</span></span><span style="COLOR: rgb(0,0,0)"><br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />        StringBuffer takes </span><span style="COLOR: rgb(0,0,0)">=</span><span style="COLOR: rgb(0,0,0)"> </span><span style="COLOR: rgb(0,0,255)">new</span><span style="COLOR: rgb(0,0,0)"> StringBuffer();<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />        Iterator it </span><span style="COLOR: rgb(0,0,0)">=</span><span style="COLOR: rgb(0,0,0)"> list.iterator();<br /><img id="Codehighlighter1_964_1008_Open_Image" onclick="this.style.display='none'; Codehighlighter1_964_1008_Open_Text.style.display='none'; Codehighlighter1_964_1008_Closed_Image.style.display='inline'; Codehighlighter1_964_1008_Closed_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockStart.gif" align="top" /><img id="Codehighlighter1_964_1008_Closed_Image" style="DISPLAY: none" onclick="this.style.display='none'; Codehighlighter1_964_1008_Closed_Text.style.display='none'; Codehighlighter1_964_1008_Open_Image.style.display='inline'; Codehighlighter1_964_1008_Open_Text.style.display='inline';" src="http://www.blogjava.net/images/OutliningIndicators/ContractedSubBlock.gif" align="top" />        </span><span style="COLOR: rgb(0,0,255)">while</span><span style="COLOR: rgb(0,0,0)">(it.hasNext())</span><span id="Codehighlighter1_964_1008_Closed_Text" style="BORDER-RIGHT: rgb(128,128,128) 1px solid; BORDER-TOP: rgb(128,128,128) 1px solid; DISPLAY: none; BORDER-LEFT: rgb(128,128,128) 1px solid; BORDER-BOTTOM: rgb(128,128,128) 1px solid; BACKGROUND-COLOR: rgb(255,255,255)"><img src="http://www.blogjava.net/images/dot.gif" /></span><span id="Codehighlighter1_964_1008_Open_Text"><span style="COLOR: rgb(0,0,0)">{<br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />            takes.insert( </span><span style="COLOR: rgb(0,0,0)">0</span><span style="COLOR: rgb(0,0,0)">,(String)it.next() );<br /><img src="http://www.blogjava.net/images/OutliningIndicators/ExpandedSubBlockEnd.gif" align="top" />        }</span></span><span style="COLOR: rgb(0,0,0)"><br /><img src="http://www.blogjava.net/images/OutliningIndicators/InBlock.gif" align="top" />        </span><span style="COLOR: rgb(0,0,255)">return</span><span style="COLOR: rgb(0,0,0)"> takes.toString();<br /><img src="http://www.blogjava.net/images/OutliningIndicators/ExpandedBlockEnd.gif" align="top" />    }</span></span></div><br />jsp ( list ) 中文处理 jsp 就一句话 <br />&lt;%= new String(((String)request.getAttribute("said")).getBytes("iso8859-1"),"GBK") %&gt;<br /><br /><img src ="http://www.blogjava.net/hxweb/aggbug/123819.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/hxweb/" target="_blank">好学蜘蛛</a> 2007-06-13 11:07 <a href="http://www.blogjava.net/hxweb/articles/123819.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item></channel></rss>