??xml version="1.0" encoding="utf-8" standalone="yes"?>xxxxx成人.com,日韩有码一区,一区二区三区不卡在线http://www.aygfsteel.com/linlin2005/category/21555.htmljava学习博客zh-cnMon, 18 Jun 2012 09:23:36 GMTMon, 18 Jun 2012 09:23:36 GMT60struts2的sQiterator 标签 详解http://www.aygfsteel.com/linlin2005/archive/2012/06/18/381018.htmllubaolinlubaolinMon, 18 Jun 2012 09:11:00 GMThttp://www.aygfsteel.com/linlin2005/archive/2012/06/18/381018.htmlhttp://www.aygfsteel.com/linlin2005/comments/381018.htmlhttp://www.aygfsteel.com/linlin2005/archive/2012/06/18/381018.html#Feedback0http://www.aygfsteel.com/linlin2005/comments/commentRss/381018.htmlhttp://www.aygfsteel.com/linlin2005/services/trackbacks/381018.html
struts2的sQiterator 可以遍历 数据栈里面的M数组Q集合等{?以下几个单的demoQ?br />s:iterator 标签?个属性:
    valueQ被q代的集?br />    id   Q指定集合里面的元素的id
    status q代元素的烦?/div>
1:jsp面定义元素写法 数组或list

<s:iterator value="{'1','2','3','4','5'}" id='number'>
    <s:property value='number'/>A
</s:iterator>
打印l果? 1A2A3A4A5A
2:索引的用?br />如果指定了statusQ每ơ的q代数据都有IteratorStatus的实例,它有以下几个Ҏ
int getCount()q回当前q代了几个元?br />int getIndex()q回当前元素索引
boolean isEven()当然的烦引是否偶?br />boolean isFirst()当前是否W一个元?br />boolean isLast()
boolean isOdd()当前元素索引是否奇数
<s:iterator value="{'a','b','c'}" id='char' status='st'>
    <s:if test="#st.Even">
        现在的烦引是奇数?<s:property value='#st.index'/>
    </s:if>
    当前元素|<s:property value='char'/>
</s:iterator>
3Q遍历map
value可以直接定义为:
value="#{"1":"a","2":"b"}"
每个元素以都好隔开。元素之间的key和value 冒号隔开
value也可以是数据栈里面的java.util.Map对象
遍历写法如下Q?/div>
<s:iterator value="map" id="id" status="st">
     key : <s:property value='key'/>
     value:<s:property vlaue='value'/>
</s:iterator>
当然key 和value 都可以java ?Object
3Q遍历数据栈.单的Listc,
List<Attr>
class Attr{String attrName;String getAttrName(){return "123";}}
<s:iterator value="label" id="id">
    <s:property value="#id.attrName" />
</s:iterator>
当然value q可以写?value="%{label}" label可以?操作
label的属性List 可以写成value="%{label.list}" 相当于:getLabel().getList();
4Q遍?个listQ?br />List<AttrName> attrN {color,size,style}
List<AttrValue> attrV {red,20,gay}
q?个list的元素是一一对应的,一个attrN对应一个attrV
<s:iterator value="%{attrN }" id="id"   status="status">
index    is : <s:property value='status.index'/>
attrName is : <s:property value='id'/> or <s:property value='%{id}'/>
attrName is : <s:property value='%{attrV[#status.index]}'/>
</s:iterator>  
转自Q?a href="http://www.aygfsteel.com/Reg/archive/2009/11/20/303085.html">http://www.aygfsteel.com/Reg/archive/2009/11/20/303085.html


lubaolin 2012-06-18 17:11 发表评论
]]>使用jzip做打包下?/title><link>http://www.aygfsteel.com/linlin2005/archive/2009/10/22/299360.html</link><dc:creator>lubaolin</dc:creator><author>lubaolin</author><pubDate>Thu, 22 Oct 2009 06:30:00 GMT</pubDate><guid>http://www.aygfsteel.com/linlin2005/archive/2009/10/22/299360.html</guid><wfw:comment>http://www.aygfsteel.com/linlin2005/comments/299360.html</wfw:comment><comments>http://www.aygfsteel.com/linlin2005/archive/2009/10/22/299360.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.aygfsteel.com/linlin2005/comments/commentRss/299360.html</wfw:commentRss><trackback:ping>http://www.aygfsteel.com/linlin2005/services/trackbacks/299360.html</trackback:ping><description><![CDATA[<p>import java.io.File;<br /> import java.io.FileInputStream;<br /> import java.io.IOException;<br /> import java.util.Date;</p> <p>import javax.servlet.ServletException;<br /> import javax.servlet.http.HttpServlet;<br /> import javax.servlet.http.HttpServletRequest;<br /> import javax.servlet.http.HttpServletResponse;</p> <p>import net.sf.jazzlib.ZipEntry;<br /> import net.sf.jazzlib.ZipOutputStream;</p> <p>public class BatchDownload extends HttpServlet {</p>  public BatchDownload() {<br />   super();<br />  }<br /> <p> public void doGet(HttpServletRequest request, HttpServletResponse response)<br />    throws ServletException, IOException {<br />   response.setContentType("APPLICATION/OCTET-STREAM");<br />   response.setHeader("Content-Disposition","attachment; filename="+this.getZipFilename());<br />   System.out.println("in BatchDownload................"); <br />   ZipOutputStream zos = new ZipOutputStream(response.getOutputStream());   <br />      File[] files = new File[2];<br />      files[0]=new File("c:/zip/文gA.doc");<br />      files[1]=new File("c:/zip/文gB.doc");<br />      zipFile(files, "", zos);   <br />      zos.flush();   <br />      zos.close();   </p> <p> }<br />  private void zipFile(File[] subs, String baseName, ZipOutputStream zos) throws IOException {     <br />       for (int i=0;i<subs.length;i++) {<br />        File f=subs[i];<br />        zos.putNextEntry(new ZipEntry(baseName + f.getName()));   <br />        FileInputStream fis = new FileInputStream(f);   <br />        byte[] buffer = new byte[1024];   <br />        int r = 0;   <br />        while ((r = fis.read(buffer)) != -1) {   <br />            zos.write(buffer, 0, r);   <br />        }   <br />        fis.close(); <br />       }<br />  }<br />  private String getZipFilename(){<br />   Date date=new Date();<br />   String s=date.getTime()+".zip";<br />   return s;<br />  }</p>  public void doPost(HttpServletRequest request, HttpServletResponse response)<br />    throws ServletException, IOException {<br />   this.doGet(request, response);<br />  }<br /> } <img src ="http://www.aygfsteel.com/linlin2005/aggbug/299360.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.aygfsteel.com/linlin2005/" target="_blank">lubaolin</a> 2009-10-22 14:30 <a href="http://www.aygfsteel.com/linlin2005/archive/2009/10/22/299360.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>SSH-ERROR:org.hibernate.LazyInitializationException: failed to lazily initializehttp://www.aygfsteel.com/linlin2005/archive/2009/07/03/285366.htmllubaolinlubaolinFri, 03 Jul 2009 08:19:00 GMThttp://www.aygfsteel.com/linlin2005/archive/2009/07/03/285366.htmlhttp://www.aygfsteel.com/linlin2005/comments/285366.htmlhttp://www.aygfsteel.com/linlin2005/archive/2009/07/03/285366.html#Feedback0http://www.aygfsteel.com/linlin2005/comments/commentRss/285366.htmlhttp://www.aygfsteel.com/linlin2005/services/trackbacks/285366.htmlstruts2+spring2.x+hibernate3.x 懒加载异常:org.hibernate.LazyInitializationException: failed to lazily initialize

Hibernate的Lazy初始?:n关系Ӟ必须保证是在同一个Session内部使用q个关系集合Q不然Hiernate抛出异常:org.hibernate.LazyInitializationException: failed to lazily initialize of....
两种处理ҎQ?br /> 一、设|lazy=falseQ此Ҏ不再累述?br /> 二、用OpenSessionInViewFilterqo器,注意hibernateFilterqo器和struts2qo器在映射时的先后序。同时要配置事物处理Q否则会Dsession处于只读状态而不能做修改、删除的动作?br /> 卛_web.xml文g中如下配|:
     <!-- Spring ApplicationContext配置文g的加载目录?-->  
 <context-param>
  <param-name>contextConfigLocation</param-name>
  <param-value>classpath*:spring/applicationContext.xml</param-value>
 </context-param>

 <!-- 解决延迟加蝲的问?-->
 <filter>
  <filter-name>hibernateFilter</filter-name>
  <filter-class>
   org.springframework.orm.hibernate3.support.OpenSessionInViewFilter
  </filter-class>
 </filter>
 
 <!-- l承Struts2的FilterDispatcherc,具备GBK{编码设定功能与struts2的actionqo功能?-->
 <filter>
  <filter-name>struts2</filter-name>
  <filter-class>
   com.iman.nrms.opm.web.common.FilterDispatcher
  </filter-class>
  <init-param>
   <param-name>encoding</param-name>
   <param-value>GBK</param-value>
  </init-param>
 </filter>
 <filter>
         <filter-name>struts-cleanup</filter-name>
         <filter-class>
             org.apache.struts2.dispatcher.ActionContextCleanUp
         </filter-class>
     </filter>
 
 <filter-mapping>
  <filter-name>hibernateFilter</filter-name>
  <url-pattern>/*</url-pattern>
 </filter-mapping>
 
 <filter-mapping>
  <filter-name>struts2</filter-name>
  <url-pattern>/*</url-pattern>
 </filter-mapping>
 
 <filter-mapping>
  <filter-name>struts-cleanup</filter-name>
  <url-pattern>/*</url-pattern>
 </filter-mapping>

Hibernate 允许对关联对象、属性进行gq加载,但是必须保证延迟加蝲的操作限于同一?Hibernate Session 范围之内q行。如?Service 层返回一个启用了延迟加蝲功能的领域对象给 Web 层,?Web 层访问到那些需要gq加载的数据Ӟ׃加蝲领域对象?Hibernate Session 已经关闭Q这些导致gq加载数据的讉K异常。而Spring为我们提供的OpenSessionInViewFilterqo器ؓ我们很好的解决了q个问题。OpenSessionInViewFilter的主要功能是使每个请求过E绑定一?Hibernate SessionQ即使最初的事务已经完成了,也可以在 Web 层进行gq加载的操作。OpenSessionInViewFilter qo器将 Hibernate Session l定到请求线E中Q它自动被 Spring 的事务管理器探测到。所?OpenSessionInViewFilter 适用?Service 层用HibernateTransactionManager ?JtaTransactionManager q行事务理的环境,也可以用于非事务只读的数据操作中?
request-->open session-->打开q接、开始事?->持久操作-->渲染Q关闭连接、sessionQ?->response 其中一些过E省略了Q不是很兛_?/p>

 

引自Q?a >http://blog.csdn.net/fhwbj/archive/2009/03/25/4022805.aspx



lubaolin 2009-07-03 16:19 发表评论
]]>
spring的jar?/title><link>http://www.aygfsteel.com/linlin2005/archive/2007/08/13/136262.html</link><dc:creator>lubaolin</dc:creator><author>lubaolin</author><pubDate>Sun, 12 Aug 2007 18:39:00 GMT</pubDate><guid>http://www.aygfsteel.com/linlin2005/archive/2007/08/13/136262.html</guid><wfw:comment>http://www.aygfsteel.com/linlin2005/comments/136262.html</wfw:comment><comments>http://www.aygfsteel.com/linlin2005/archive/2007/08/13/136262.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.aygfsteel.com/linlin2005/comments/commentRss/136262.html</wfw:commentRss><trackback:ping>http://www.aygfsteel.com/linlin2005/services/trackbacks/136262.html</trackback:ping><description><![CDATA[<table style="BORDER-RIGHT: medium none; BORDER-TOP: medium none; BORDER-LEFT: medium none; BORDER-BOTTOM: medium none; BORDER-COLLAPSE: collapse" cellSpacing=0 cellPadding=0 border=1> <thead> <tr> <td style="BORDER-RIGHT: windowtext 1pt solid; PADDING-RIGHT: 5.4pt; BORDER-TOP: windowtext 1pt solid; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0cm; BORDER-LEFT: windowtext 1pt solid; WIDTH: 431.95pt; PADDING-TOP: 0cm; BORDER-BOTTOM: windowtext 1pt solid; BACKGROUND-COLOR: transparent" vAlign=top width=576 colSpan=3> <div><span style="FONT-SIZE: 9pt">Spring</span><span style="FONT-SIZE: 9pt">的依赖关p?/span></div> </td> </tr> <tr> <td style="BORDER-RIGHT: windowtext 1pt solid; PADDING-RIGHT: 5.4pt; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0cm; BORDER-LEFT: windowtext 1pt solid; WIDTH: 76.3pt; BORDER-TOP-COLOR: #ece9d8; PADDING-TOP: 0cm; BORDER-BOTTOM: windowtext 1pt solid; BACKGROUND-COLOR: transparent" vAlign=top width=102> <div style="LAYOUT-GRID-MODE: char; LINE-HEIGHT: 12pt"><span style="FONT-SIZE: 9pt">依赖关系分组</span></div> </td> <td style="BORDER-RIGHT: windowtext 1pt solid; PADDING-RIGHT: 5.4pt; PADDING-LEFT: 5.4pt; BORDER-LEFT-COLOR: #ece9d8; PADDING-BOTTOM: 0cm; WIDTH: 127.8pt; BORDER-TOP-COLOR: #ece9d8; PADDING-TOP: 0cm; BORDER-BOTTOM: windowtext 1pt solid; BACKGROUND-COLOR: transparent" vAlign=top width=170> <div style="LAYOUT-GRID-MODE: char; LINE-HEIGHT: 12pt"><span style="FONT-SIZE: 9pt">JAR</span><span style="FONT-SIZE: 9pt">文g</span></div> </td> <td style="BORDER-RIGHT: windowtext 1pt solid; PADDING-RIGHT: 5.4pt; PADDING-LEFT: 5.4pt; BORDER-LEFT-COLOR: #ece9d8; PADDING-BOTTOM: 0cm; WIDTH: 227.85pt; BORDER-TOP-COLOR: #ece9d8; PADDING-TOP: 0cm; BORDER-BOTTOM: windowtext 1pt solid; BACKGROUND-COLOR: transparent" vAlign=top width=304> <div style="LAYOUT-GRID-MODE: char; LINE-HEIGHT: 12pt"><span style="FONT-SIZE: 9pt">??/span></div> </td> </tr> </thead> <tbody> <tr> <td style="BORDER-RIGHT: windowtext 1pt solid; PADDING-RIGHT: 5.4pt; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0cm; BORDER-LEFT: windowtext 1pt solid; WIDTH: 76.3pt; BORDER-TOP-COLOR: #ece9d8; PADDING-TOP: 0cm; BORDER-BOTTOM: windowtext 1pt solid; BACKGROUND-COLOR: transparent" vAlign=top width=102> <div style="LAYOUT-GRID-MODE: char; LINE-HEIGHT: 12pt"><span style="FONT-SIZE: 9pt">ant</span></div> </td> <td style="BORDER-RIGHT: windowtext 1pt solid; PADDING-RIGHT: 5.4pt; PADDING-LEFT: 5.4pt; BORDER-LEFT-COLOR: #ece9d8; PADDING-BOTTOM: 0cm; WIDTH: 127.8pt; BORDER-TOP-COLOR: #ece9d8; PADDING-TOP: 0cm; BORDER-BOTTOM: windowtext 1pt solid; BACKGROUND-COLOR: transparent" vAlign=top width=170> <div style="LAYOUT-GRID-MODE: char; LINE-HEIGHT: 12pt"><span style="FONT-SIZE: 9pt">ant.jar, ant-junit.jar, ant-launcher.jar</span></div> </td> <td style="BORDER-RIGHT: windowtext 1pt solid; PADDING-RIGHT: 5.4pt; PADDING-LEFT: 5.4pt; BORDER-LEFT-COLOR: #ece9d8; PADDING-BOTTOM: 0cm; WIDTH: 227.85pt; BORDER-TOP-COLOR: #ece9d8; PADDING-TOP: 0cm; BORDER-BOTTOM: windowtext 1pt solid; BACKGROUND-COLOR: transparent" vAlign=top width=304> <div style="LAYOUT-GRID-MODE: char; LINE-HEIGHT: 12pt"><span style="FONT-SIZE: 9pt">Spring</span><span style="FONT-SIZE: 9pt">采用Apache Ant作ؓ其构建工Pq用来完成大量其它Q务如文档生成和测试执行等。运行时AntҎ不v作用Q因此发布应用时无需包含该JAR文g?/span></div> </td> </tr> <tr> <td style="BORDER-RIGHT: windowtext 1pt solid; PADDING-RIGHT: 5.4pt; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0cm; BORDER-LEFT: windowtext 1pt solid; WIDTH: 76.3pt; BORDER-TOP-COLOR: #ece9d8; PADDING-TOP: 0cm; BORDER-BOTTOM: windowtext 1pt solid; BACKGROUND-COLOR: transparent" vAlign=top width=102> <div style="LAYOUT-GRID-MODE: char; LINE-HEIGHT: 12pt"><span style="FONT-SIZE: 9pt">aopalliance</span></div> </td> <td style="BORDER-RIGHT: windowtext 1pt solid; PADDING-RIGHT: 5.4pt; PADDING-LEFT: 5.4pt; BORDER-LEFT-COLOR: #ece9d8; PADDING-BOTTOM: 0cm; WIDTH: 127.8pt; BORDER-TOP-COLOR: #ece9d8; PADDING-TOP: 0cm; BORDER-BOTTOM: windowtext 1pt solid; BACKGROUND-COLOR: transparent" vAlign=top width=170> <div style="LAYOUT-GRID-MODE: char; LINE-HEIGHT: 12pt"><span style="FONT-SIZE: 9pt">aopalliance.jar</span></div> </td> <td style="BORDER-RIGHT: windowtext 1pt solid; PADDING-RIGHT: 5.4pt; PADDING-LEFT: 5.4pt; BORDER-LEFT-COLOR: #ece9d8; PADDING-BOTTOM: 0cm; WIDTH: 227.85pt; BORDER-TOP-COLOR: #ece9d8; PADDING-TOP: 0cm; BORDER-BOTTOM: windowtext 1pt solid; BACKGROUND-COLOR: transparent" vAlign=top width=304> <div style="LAYOUT-GRID-MODE: char; LINE-HEIGHT: 12pt"><span style="FONT-SIZE: 9pt">AOP Alliance(<a target=_top><u><font color=#2f2f2f>http://aopalliance.sourceforge.net/</font></u></a>)</span><span style="FONT-SIZE: 9pt">是个联合的开源协作组l,在多个项目间q行协作以期提供一套标准的AOP Java接口QinterfaceQ?Spring AOP是ZAOP Alliance标准API实现的。如果你打算使用Spring的AOP或基于AOP的Q何特性,只需q个JAR文g?/span></div> </td> </tr> <tr> <td style="BORDER-RIGHT: windowtext 1pt solid; PADDING-RIGHT: 5.4pt; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0cm; BORDER-LEFT: windowtext 1pt solid; WIDTH: 76.3pt; BORDER-TOP-COLOR: #ece9d8; PADDING-TOP: 0cm; BORDER-BOTTOM: windowtext 1pt solid; BACKGROUND-COLOR: transparent" vAlign=top width=102> <div style="LAYOUT-GRID-MODE: char; LINE-HEIGHT: 12pt"><span style="FONT-SIZE: 9pt">axis</span></div> </td> <td style="BORDER-RIGHT: windowtext 1pt solid; PADDING-RIGHT: 5.4pt; PADDING-LEFT: 5.4pt; BORDER-LEFT-COLOR: #ece9d8; PADDING-BOTTOM: 0cm; WIDTH: 127.8pt; BORDER-TOP-COLOR: #ece9d8; PADDING-TOP: 0cm; BORDER-BOTTOM: windowtext 1pt solid; BACKGROUND-COLOR: transparent" vAlign=top width=170> <div style="LAYOUT-GRID-MODE: char; LINE-HEIGHT: 12pt"><span style="FONT-SIZE: 9pt">axis.jar, saaj.jar, wsdl4j.jar</span></div> </td> <td style="BORDER-RIGHT: windowtext 1pt solid; PADDING-RIGHT: 5.4pt; PADDING-LEFT: 5.4pt; BORDER-LEFT-COLOR: #ece9d8; PADDING-BOTTOM: 0cm; WIDTH: 227.85pt; BORDER-TOP-COLOR: #ece9d8; PADDING-TOP: 0cm; BORDER-BOTTOM: windowtext 1pt solid; BACKGROUND-COLOR: transparent" vAlign=top width=304> <div style="LAYOUT-GRID-MODE: char; LINE-HEIGHT: 12pt; TEXT-AUTOSPACE: ideograph-numeric"><span style="FONT-SIZE: 9pt">Spring</span><span style="FONT-SIZE: 9pt">采用Apache Axis目来支持Springq程调用里的JAXRPC功能。如果用JAXRPC RemotingQ那么只需要这些文件?/span></div> </td> </tr> <tr> <td style="BORDER-RIGHT: windowtext 1pt solid; PADDING-RIGHT: 5.4pt; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0cm; BORDER-LEFT: windowtext 1pt solid; WIDTH: 76.3pt; BORDER-TOP-COLOR: #ece9d8; PADDING-TOP: 0cm; BORDER-BOTTOM: windowtext 1pt solid; BACKGROUND-COLOR: transparent" vAlign=top width=102> <div style="LAYOUT-GRID-MODE: char; LINE-HEIGHT: 12pt"><span style="FONT-SIZE: 9pt">caucho</span></div> </td> <td style="BORDER-RIGHT: windowtext 1pt solid; PADDING-RIGHT: 5.4pt; PADDING-LEFT: 5.4pt; BORDER-LEFT-COLOR: #ece9d8; PADDING-BOTTOM: 0cm; WIDTH: 127.8pt; BORDER-TOP-COLOR: #ece9d8; PADDING-TOP: 0cm; BORDER-BOTTOM: windowtext 1pt solid; BACKGROUND-COLOR: transparent" vAlign=top width=170> <div style="LAYOUT-GRID-MODE: char; LINE-HEIGHT: 12pt"><span style="FONT-SIZE: 9pt">burlap-2.1.12.jar, hessian-2.1.12.jar</span></div> </td> <td style="BORDER-RIGHT: windowtext 1pt solid; PADDING-RIGHT: 5.4pt; PADDING-LEFT: 5.4pt; BORDER-LEFT-COLOR: #ece9d8; PADDING-BOTTOM: 0cm; WIDTH: 227.85pt; BORDER-TOP-COLOR: #ece9d8; PADDING-TOP: 0cm; BORDER-BOTTOM: windowtext 1pt solid; BACKGROUND-COLOR: transparent" vAlign=top width=304> <div style="LAYOUT-GRID-MODE: char; LINE-HEIGHT: 12pt"><span style="FONT-SIZE: 9pt">Spring</span><span style="FONT-SIZE: 9pt">q程调用QremotingQ对大量不同U类的协议包括Caucho的Burlap和Hessian提供了支持。要用哪个协议就包含q个分组里相应的JAR文g?/span></div> </td> </tr> <tr> <td style="BORDER-RIGHT: windowtext 1pt solid; PADDING-RIGHT: 5.4pt; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0cm; BORDER-LEFT: windowtext 1pt solid; WIDTH: 76.3pt; BORDER-TOP-COLOR: #ece9d8; PADDING-TOP: 0cm; BORDER-BOTTOM: windowtext 1pt solid; BACKGROUND-COLOR: transparent" vAlign=top width=102> <div style="LAYOUT-GRID-MODE: char; LINE-HEIGHT: 12pt"><span style="FONT-SIZE: 9pt">cglib</span></div> </td> <td style="BORDER-RIGHT: windowtext 1pt solid; PADDING-RIGHT: 5.4pt; PADDING-LEFT: 5.4pt; BORDER-LEFT-COLOR: #ece9d8; PADDING-BOTTOM: 0cm; WIDTH: 127.8pt; BORDER-TOP-COLOR: #ece9d8; PADDING-TOP: 0cm; BORDER-BOTTOM: windowtext 1pt solid; BACKGROUND-COLOR: transparent" vAlign=top width=170> <div style="LAYOUT-GRID-MODE: char; LINE-HEIGHT: 12pt"><span style="FONT-SIZE: 9pt">cglib-full-2.0.2.jar</span></div> </td> <td style="BORDER-RIGHT: windowtext 1pt solid; PADDING-RIGHT: 5.4pt; PADDING-LEFT: 5.4pt; BORDER-LEFT-COLOR: #ece9d8; PADDING-BOTTOM: 0cm; WIDTH: 227.85pt; BORDER-TOP-COLOR: #ece9d8; PADDING-TOP: 0cm; BORDER-BOTTOM: windowtext 1pt solid; BACKGROUND-COLOR: transparent" vAlign=top width=304> <div style="LAYOUT-GRID-MODE: char; LINE-HEIGHT: 12pt"><span style="FONT-SIZE: 9pt">CGLIB</span><span style="FONT-SIZE: 9pt">用来生成动态代理类Qdynamic proxy classesQ,供核心DI和AOP实现之用。由于大量Spring功能的实现都要用到CGLIBQ因此你的应用几乎总需包含CGLIB?/span></div> </td> </tr> <tr> <td style="BORDER-RIGHT: windowtext 1pt solid; PADDING-RIGHT: 5.4pt; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0cm; BORDER-LEFT: windowtext 1pt solid; WIDTH: 76.3pt; BORDER-TOP-COLOR: #ece9d8; PADDING-TOP: 0cm; BORDER-BOTTOM: windowtext 1pt solid; BACKGROUND-COLOR: transparent" vAlign=top width=102> <div style="LAYOUT-GRID-MODE: char; LINE-HEIGHT: 12pt"><span style="FONT-SIZE: 9pt">cos</span></div> </td> <td style="BORDER-RIGHT: windowtext 1pt solid; PADDING-RIGHT: 5.4pt; PADDING-LEFT: 5.4pt; BORDER-LEFT-COLOR: #ece9d8; PADDING-BOTTOM: 0cm; WIDTH: 127.8pt; BORDER-TOP-COLOR: #ece9d8; PADDING-TOP: 0cm; BORDER-BOTTOM: windowtext 1pt solid; BACKGROUND-COLOR: transparent" vAlign=top width=170> <div style="LAYOUT-GRID-MODE: char; LINE-HEIGHT: 12pt"><span style="FONT-SIZE: 9pt">cos.jar</span></div> </td> <td style="BORDER-RIGHT: windowtext 1pt solid; PADDING-RIGHT: 5.4pt; PADDING-LEFT: 5.4pt; BORDER-LEFT-COLOR: #ece9d8; PADDING-BOTTOM: 0cm; WIDTH: 227.85pt; BORDER-TOP-COLOR: #ece9d8; PADDING-TOP: 0cm; BORDER-BOTTOM: windowtext 1pt solid; BACKGROUND-COLOR: transparent" vAlign=top width=304> <div style="LAYOUT-GRID-MODE: char; LINE-HEIGHT: 12pt"><span style="FONT-SIZE: 9pt">COS</span><span style="FONT-SIZE: 9pt">代表com.oreilly.servletQ是个实用类的集合,对Servlets和基于web的应用很有用。Spring在两个地方要用到COSQ文件上传处理和e-mail发送。不q在q两U情形中QCOS都只是实现选择之一Q因此只有选用COS而非其它实现ҎӞ才需包含cos.jar?/span></div> </td> </tr> <tr> <td style="BORDER-RIGHT: windowtext 1pt solid; PADDING-RIGHT: 5.4pt; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0cm; BORDER-LEFT: windowtext 1pt solid; WIDTH: 76.3pt; BORDER-TOP-COLOR: #ece9d8; PADDING-TOP: 0cm; BORDER-BOTTOM: windowtext 1pt solid; BACKGROUND-COLOR: transparent" vAlign=top width=102> <div style="LAYOUT-GRID-MODE: char; LINE-HEIGHT: 12pt"><span style="FONT-SIZE: 9pt">dom4j</span></div> </td> <td style="BORDER-RIGHT: windowtext 1pt solid; PADDING-RIGHT: 5.4pt; PADDING-LEFT: 5.4pt; BORDER-LEFT-COLOR: #ece9d8; PADDING-BOTTOM: 0cm; WIDTH: 127.8pt; BORDER-TOP-COLOR: #ece9d8; PADDING-TOP: 0cm; BORDER-BOTTOM: windowtext 1pt solid; BACKGROUND-COLOR: transparent" vAlign=top width=170> <div style="LAYOUT-GRID-MODE: char; LINE-HEIGHT: 12pt"><span style="FONT-SIZE: 9pt">dom4j.jar</span></div> </td> <td style="BORDER-RIGHT: windowtext 1pt solid; PADDING-RIGHT: 5.4pt; PADDING-LEFT: 5.4pt; BORDER-LEFT-COLOR: #ece9d8; PADDING-BOTTOM: 0cm; WIDTH: 227.85pt; BORDER-TOP-COLOR: #ece9d8; PADDING-TOP: 0cm; BORDER-BOTTOM: windowtext 1pt solid; BACKGROUND-COLOR: transparent" vAlign=top width=304> <div style="LAYOUT-GRID-MODE: char; LINE-HEIGHT: 12pt"><span style="FONT-SIZE: 9pt">使用Hibernate时dom4j不可或缺Q因此如果你的应用打采用Hibernate实现ORMQ就需要包含这个JAR文g?/span></div> </td> </tr> <tr> <td style="BORDER-RIGHT: windowtext 1pt solid; PADDING-RIGHT: 5.4pt; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0cm; BORDER-LEFT: windowtext 1pt solid; WIDTH: 76.3pt; BORDER-TOP-COLOR: #ece9d8; PADDING-TOP: 0cm; BORDER-BOTTOM: windowtext 1pt solid; BACKGROUND-COLOR: transparent" vAlign=top width=102> <div style="LAYOUT-GRID-MODE: char; LINE-HEIGHT: 12pt"><span style="FONT-SIZE: 9pt">easymock</span></div> </td> <td style="BORDER-RIGHT: windowtext 1pt solid; PADDING-RIGHT: 5.4pt; PADDING-LEFT: 5.4pt; BORDER-LEFT-COLOR: #ece9d8; PADDING-BOTTOM: 0cm; WIDTH: 127.8pt; BORDER-TOP-COLOR: #ece9d8; PADDING-TOP: 0cm; BORDER-BOTTOM: windowtext 1pt solid; BACKGROUND-COLOR: transparent" vAlign=top width=170> <div style="LAYOUT-GRID-MODE: char; LINE-HEIGHT: 12pt"><span style="FONT-SIZE: 9pt">easymock.jar, easymockclassextension.jar</span></div> </td> <td style="BORDER-RIGHT: windowtext 1pt solid; PADDING-RIGHT: 5.4pt; PADDING-LEFT: 5.4pt; BORDER-LEFT-COLOR: #ece9d8; PADDING-BOTTOM: 0cm; WIDTH: 227.85pt; BORDER-TOP-COLOR: #ece9d8; PADDING-TOP: 0cm; BORDER-BOTTOM: windowtext 1pt solid; BACKGROUND-COLOR: transparent" vAlign=top width=304> <div style="LAYOUT-GRID-MODE: char; LINE-HEIGHT: 12pt"><span style="FONT-SIZE: 9pt">Spring</span><span style="FONT-SIZE: 9pt">的测试套件用CEasyMockQ因此只有构建和q行试套g时才用到q个JARQ无需随你的应用一起发布?/span></div> </td> </tr> <tr> <td style="BORDER-RIGHT: windowtext 1pt solid; PADDING-RIGHT: 5.4pt; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0cm; BORDER-LEFT: windowtext 1pt solid; WIDTH: 76.3pt; BORDER-TOP-COLOR: #ece9d8; PADDING-TOP: 0cm; BORDER-BOTTOM: windowtext 1pt solid; BACKGROUND-COLOR: transparent" vAlign=top width=102> <div style="LAYOUT-GRID-MODE: char; LINE-HEIGHT: 12pt"><span style="FONT-SIZE: 9pt">freemarker</span></div> </td> <td style="BORDER-RIGHT: windowtext 1pt solid; PADDING-RIGHT: 5.4pt; PADDING-LEFT: 5.4pt; BORDER-LEFT-COLOR: #ece9d8; PADDING-BOTTOM: 0cm; WIDTH: 127.8pt; BORDER-TOP-COLOR: #ece9d8; PADDING-TOP: 0cm; BORDER-BOTTOM: windowtext 1pt solid; BACKGROUND-COLOR: transparent" vAlign=top width=170> <div style="LAYOUT-GRID-MODE: char; LINE-HEIGHT: 12pt"><span style="FONT-SIZE: 9pt">freemaker.jar</span></div> </td> <td style="BORDER-RIGHT: windowtext 1pt solid; PADDING-RIGHT: 5.4pt; PADDING-LEFT: 5.4pt; BORDER-LEFT-COLOR: #ece9d8; PADDING-BOTTOM: 0cm; WIDTH: 227.85pt; BORDER-TOP-COLOR: #ece9d8; PADDING-TOP: 0cm; BORDER-BOTTOM: windowtext 1pt solid; BACKGROUND-COLOR: transparent" vAlign=top width=304> <div style="LAYOUT-GRID-MODE: char; LINE-HEIGHT: 12pt"><span style="FONT-SIZE: 9pt">Spring</span><span style="FONT-SIZE: 9pt">提供了FreeMarker模板引擎的包装类Q还为把FreeMarker模板用作web应用的视图提供了支持。只要用FreeMarkerQ就需要这个JAR文g?/span></div> </td> </tr> <tr> <td style="BORDER-RIGHT: windowtext 1pt solid; PADDING-RIGHT: 5.4pt; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0cm; BORDER-LEFT: windowtext 1pt solid; WIDTH: 76.3pt; BORDER-TOP-COLOR: #ece9d8; PADDING-TOP: 0cm; BORDER-BOTTOM: windowtext 1pt solid; BACKGROUND-COLOR: transparent" vAlign=top width=102> <div style="LAYOUT-GRID-MODE: char; LINE-HEIGHT: 12pt"><span style="FONT-SIZE: 9pt">hibernate</span></div> </td> <td style="BORDER-RIGHT: windowtext 1pt solid; PADDING-RIGHT: 5.4pt; PADDING-LEFT: 5.4pt; BORDER-LEFT-COLOR: #ece9d8; PADDING-BOTTOM: 0cm; WIDTH: 127.8pt; BORDER-TOP-COLOR: #ece9d8; PADDING-TOP: 0cm; BORDER-BOTTOM: windowtext 1pt solid; BACKGROUND-COLOR: transparent" vAlign=top width=170> <div style="LAYOUT-GRID-MODE: char; LINE-HEIGHT: 12pt"><span style="FONT-SIZE: 9pt">ehcache.jar, hibernate2.jar, odmg.jar</span></div> </td> <td style="BORDER-RIGHT: windowtext 1pt solid; PADDING-RIGHT: 5.4pt; PADDING-LEFT: 5.4pt; BORDER-LEFT-COLOR: #ece9d8; PADDING-BOTTOM: 0cm; WIDTH: 227.85pt; BORDER-TOP-COLOR: #ece9d8; PADDING-TOP: 0cm; BORDER-BOTTOM: windowtext 1pt solid; BACKGROUND-COLOR: transparent" vAlign=top width=304> <div style="LAYOUT-GRID-MODE: char; LINE-HEIGHT: 12pt"><span style="FONT-SIZE: 9pt">如果采用Spring的Hibernate集成和支持类Q这些JAR文g不可或缺。如果用其它ORM工具如iBATISQ则不需要这些JAR文g。如果用HibernateQ则你的应用q要包含CGLIB JAR文g?/span></div> </td> </tr> <tr> <td style="BORDER-RIGHT: windowtext 1pt solid; PADDING-RIGHT: 5.4pt; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0cm; BORDER-LEFT: windowtext 1pt solid; WIDTH: 76.3pt; BORDER-TOP-COLOR: #ece9d8; PADDING-TOP: 0cm; BORDER-BOTTOM: windowtext 1pt solid; BACKGROUND-COLOR: transparent" vAlign=top width=102> <div style="LAYOUT-GRID-MODE: char; LINE-HEIGHT: 12pt"><span style="FONT-SIZE: 9pt">hsqldb</span></div> </td> <td style="BORDER-RIGHT: windowtext 1pt solid; PADDING-RIGHT: 5.4pt; PADDING-LEFT: 5.4pt; BORDER-LEFT-COLOR: #ece9d8; PADDING-BOTTOM: 0cm; WIDTH: 127.8pt; BORDER-TOP-COLOR: #ece9d8; PADDING-TOP: 0cm; BORDER-BOTTOM: windowtext 1pt solid; BACKGROUND-COLOR: transparent" vAlign=top width=170> <div style="LAYOUT-GRID-MODE: char; LINE-HEIGHT: 12pt"><span style="FONT-SIZE: 9pt">hsqldb.jar</span></div> </td> <td style="BORDER-RIGHT: windowtext 1pt solid; PADDING-RIGHT: 5.4pt; PADDING-LEFT: 5.4pt; BORDER-LEFT-COLOR: #ece9d8; PADDING-BOTTOM: 0cm; WIDTH: 227.85pt; BORDER-TOP-COLOR: #ece9d8; PADDING-TOP: 0cm; BORDER-BOTTOM: windowtext 1pt solid; BACKGROUND-COLOR: transparent" vAlign=top width=304> <div style="LAYOUT-GRID-MODE: char; LINE-HEIGHT: 12pt"><span style="FONT-SIZE: 9pt">Spring</span><span style="FONT-SIZE: 9pt">的示例应用用了hsqldb.jar文g?/span></div> </td> </tr> <tr> <td style="BORDER-RIGHT: windowtext 1pt solid; PADDING-RIGHT: 5.4pt; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0cm; BORDER-LEFT: windowtext 1pt solid; WIDTH: 76.3pt; BORDER-TOP-COLOR: #ece9d8; PADDING-TOP: 0cm; BORDER-BOTTOM: windowtext 1pt solid; BACKGROUND-COLOR: transparent" vAlign=top width=102> <div style="LAYOUT-GRID-MODE: char; LINE-HEIGHT: 12pt"><span style="FONT-SIZE: 9pt">ibatis</span></div> </td> <td style="BORDER-RIGHT: windowtext 1pt solid; PADDING-RIGHT: 5.4pt; PADDING-LEFT: 5.4pt; BORDER-LEFT-COLOR: #ece9d8; PADDING-BOTTOM: 0cm; WIDTH: 127.8pt; BORDER-TOP-COLOR: #ece9d8; PADDING-TOP: 0cm; BORDER-BOTTOM: windowtext 1pt solid; BACKGROUND-COLOR: transparent" vAlign=top width=170> <div style="LAYOUT-GRID-MODE: char; LINE-HEIGHT: 12pt"><span style="FONT-SIZE: 9pt">ibatis-common.jar , ibatis-sqlmap.jar, ibatis-sqlmap-2.jar</span></div> </td> <td style="BORDER-RIGHT: windowtext 1pt solid; PADDING-RIGHT: 5.4pt; PADDING-LEFT: 5.4pt; BORDER-LEFT-COLOR: #ece9d8; PADDING-BOTTOM: 0cm; WIDTH: 227.85pt; BORDER-TOP-COLOR: #ece9d8; PADDING-TOP: 0cm; BORDER-BOTTOM: windowtext 1pt solid; BACKGROUND-COLOR: transparent" vAlign=top width=304> <div style="LAYOUT-GRID-MODE: char; LINE-HEIGHT: 12pt"><span style="FONT-SIZE: 9pt">使用Spring的iBATIS集成cLQ这些文件不可或~;如果使用JDBC或其它ORM工具如Hibernate或JDOQ则你的应用不需要这些文件?/span></div> </td> </tr> <tr> <td style="BORDER-RIGHT: windowtext 1pt solid; PADDING-RIGHT: 5.4pt; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0cm; BORDER-LEFT: windowtext 1pt solid; WIDTH: 76.3pt; BORDER-TOP-COLOR: #ece9d8; PADDING-TOP: 0cm; BORDER-BOTTOM: windowtext 1pt solid; BACKGROUND-COLOR: transparent" vAlign=top width=102> <div style="LAYOUT-GRID-MODE: char; LINE-HEIGHT: 12pt"><span style="FONT-SIZE: 9pt">itext</span></div> </td> <td style="BORDER-RIGHT: windowtext 1pt solid; PADDING-RIGHT: 5.4pt; PADDING-LEFT: 5.4pt; BORDER-LEFT-COLOR: #ece9d8; PADDING-BOTTOM: 0cm; WIDTH: 127.8pt; BORDER-TOP-COLOR: #ece9d8; PADDING-TOP: 0cm; BORDER-BOTTOM: windowtext 1pt solid; BACKGROUND-COLOR: transparent" vAlign=top width=170> <div style="LAYOUT-GRID-MODE: char; LINE-HEIGHT: 12pt"><span style="FONT-SIZE: 9pt">itext-1.02b.jar</span></div> </td> <td style="BORDER-RIGHT: windowtext 1pt solid; PADDING-RIGHT: 5.4pt; PADDING-LEFT: 5.4pt; BORDER-LEFT-COLOR: #ece9d8; PADDING-BOTTOM: 0cm; WIDTH: 227.85pt; BORDER-TOP-COLOR: #ece9d8; PADDING-TOP: 0cm; BORDER-BOTTOM: windowtext 1pt solid; BACKGROUND-COLOR: transparent" vAlign=top width=304> <div style="LAYOUT-GRID-MODE: char; LINE-HEIGHT: 12pt"><span style="FONT-SIZE: 9pt">Spring</span><span style="FONT-SIZE: 9pt">使用iText提供web层的PDF支持。只有你的web应用需要生成PDF输出时才需包含q个JAR文g?/span></div> </td> </tr> <tr> <td style="BORDER-RIGHT: windowtext 1pt solid; PADDING-RIGHT: 5.4pt; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0cm; BORDER-LEFT: windowtext 1pt solid; WIDTH: 76.3pt; BORDER-TOP-COLOR: #ece9d8; PADDING-TOP: 0cm; BORDER-BOTTOM: windowtext 1pt solid; BACKGROUND-COLOR: transparent" vAlign=top width=102> <div style="LAYOUT-GRID-MODE: char; LINE-HEIGHT: 12pt"><span style="FONT-SIZE: 9pt">j2ee</span></div> </td> <td style="BORDER-RIGHT: windowtext 1pt solid; PADDING-RIGHT: 5.4pt; PADDING-LEFT: 5.4pt; BORDER-LEFT-COLOR: #ece9d8; PADDING-BOTTOM: 0cm; WIDTH: 127.8pt; BORDER-TOP-COLOR: #ece9d8; PADDING-TOP: 0cm; BORDER-BOTTOM: windowtext 1pt solid; BACKGROUND-COLOR: transparent" vAlign=top width=170> <div style="LAYOUT-GRID-MODE: char; LINE-HEIGHT: 12pt"><span style="FONT-SIZE: 9pt">activation.jar, connector-api.jar, ejb.jar, jaxrpc.jar, jdbc2_0-stdext.jar, jms.jar, jstl.jar, jta.jar, mail.jar, servlet.jar, xml-apis.jar</span></div> </td> <td style="BORDER-RIGHT: windowtext 1pt solid; PADDING-RIGHT: 5.4pt; PADDING-LEFT: 5.4pt; BORDER-LEFT-COLOR: #ece9d8; PADDING-BOTTOM: 0cm; WIDTH: 227.85pt; BORDER-TOP-COLOR: #ece9d8; PADDING-TOP: 0cm; BORDER-BOTTOM: windowtext 1pt solid; BACKGROUND-COLOR: transparent" vAlign=top width=304> <div style="LAYOUT-GRID-MODE: char; LINE-HEIGHT: 12pt"><span style="FONT-SIZE: 9pt">如左侧所C,J2EE相关的各U不同JAR文g数量相当可观。如果你惌使用Spring邮g支持的JavaMail实现Q则需要activation.jar和mail.jar文g。要让Hibernate使用JCA Connector则需connector-api.jarQ用Spring的EJB支持则需要ejb.jarQjms.jar用于Spring的JMS支持。对于web应用Q如果想要用Spring JSTL支持则需要servlet.jar和jstl.jar。Springq程调用里的JAXRPC支持需要jaxrpc.jar文gQjta.jar用于JTA事务支持。剩下两个JAR文gjdbc2_0-stdext.jar和xml-apis.jar分别用于JDBC和XML配置支持Q不q只有你使用1.3版本的JVM时才需要它们?/span></div> </td> </tr> <tr> <td style="BORDER-RIGHT: windowtext 1pt solid; PADDING-RIGHT: 5.4pt; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0cm; BORDER-LEFT: windowtext 1pt solid; WIDTH: 76.3pt; BORDER-TOP-COLOR: #ece9d8; PADDING-TOP: 0cm; BORDER-BOTTOM: windowtext 1pt solid; BACKGROUND-COLOR: transparent" vAlign=top width=102> <div style="LAYOUT-GRID-MODE: char; LINE-HEIGHT: 12pt"><span style="FONT-SIZE: 9pt">jakarta</span></div> </td> <td style="BORDER-RIGHT: windowtext 1pt solid; PADDING-RIGHT: 5.4pt; PADDING-LEFT: 5.4pt; BORDER-LEFT-COLOR: #ece9d8; PADDING-BOTTOM: 0cm; WIDTH: 127.8pt; BORDER-TOP-COLOR: #ece9d8; PADDING-TOP: 0cm; BORDER-BOTTOM: windowtext 1pt solid; BACKGROUND-COLOR: transparent" vAlign=top width=170> <div style="LAYOUT-GRID-MODE: char; LINE-HEIGHT: 12pt"><span style="FONT-SIZE: 9pt">jakarta-commons commons-attributes-api.jar, commons-attributes-compiler.jar, commons-beanutils.jar, commons-collections.jar, commons-dbcp.jar, commons-digester.jar, commons-discovery.jar, commons-fileupload.jar, commons-lang.jar, commons-logging.jar, commons-pool.jar, commons- validator.jar</span></div> </td> <td style="BORDER-RIGHT: windowtext 1pt solid; PADDING-RIGHT: 5.4pt; PADDING-LEFT: 5.4pt; BORDER-LEFT-COLOR: #ece9d8; PADDING-BOTTOM: 0cm; WIDTH: 227.85pt; BORDER-TOP-COLOR: #ece9d8; PADDING-TOP: 0cm; BORDER-BOTTOM: windowtext 1pt solid; BACKGROUND-COLOR: transparent" vAlign=top width=304> <div style="LAYOUT-GRID-MODE: char; LINE-HEIGHT: 12pt"><span style="FONT-SIZE: 9pt">Spring</span><span style="FONT-SIZE: 9pt">使用了来自Jakarta Commons目的大量组件。如果你惛_应用中用源码元数据(metadataQ,需要commons-attributes-api.jarQ此外还需要commons-attributes-compiler.jarQ以便将attributes~译到应用里。Struts要用到BeanUtils、Collections、Digester、Discovery,和Validator JAR文gQ其中的CollectionsQHibernate也会用到。用DBCPq接池时QSpring JDBC支持要用到DBCPQPooling则对有些CZ应用不可或缺。如果想使用相应的Spring包装cL处理web应用的文件上传,则需要FileUpload。最后,Spring处处用到了LoggingQ因此需在所有基于Spring的应用里包含q个JAR文g?/span></div> </td> </tr> <tr> <td style="BORDER-RIGHT: windowtext 1pt solid; PADDING-RIGHT: 5.4pt; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0cm; BORDER-LEFT: windowtext 1pt solid; WIDTH: 76.3pt; BORDER-TOP-COLOR: #ece9d8; PADDING-TOP: 0cm; BORDER-BOTTOM: windowtext 1pt solid; BACKGROUND-COLOR: transparent" vAlign=top width=102> <div style="LAYOUT-GRID-MODE: char; LINE-HEIGHT: 12pt"><span style="FONT-SIZE: 9pt">jakarta-taglibs</span></div> </td> <td style="BORDER-RIGHT: windowtext 1pt solid; PADDING-RIGHT: 5.4pt; PADDING-LEFT: 5.4pt; BORDER-LEFT-COLOR: #ece9d8; PADDING-BOTTOM: 0cm; WIDTH: 127.8pt; BORDER-TOP-COLOR: #ece9d8; PADDING-TOP: 0cm; BORDER-BOTTOM: windowtext 1pt solid; BACKGROUND-COLOR: transparent" vAlign=top width=170> <div style="LAYOUT-GRID-MODE: char; LINE-HEIGHT: 12pt"><span style="FONT-SIZE: 9pt">standard.jar</span></div> </td> <td style="BORDER-RIGHT: windowtext 1pt solid; PADDING-RIGHT: 5.4pt; PADDING-LEFT: 5.4pt; BORDER-LEFT-COLOR: #ece9d8; PADDING-BOTTOM: 0cm; WIDTH: 227.85pt; BORDER-TOP-COLOR: #ece9d8; PADDING-TOP: 0cm; BORDER-BOTTOM: windowtext 1pt solid; BACKGROUND-COLOR: transparent" vAlign=top width=304> <div style="LAYOUT-GRID-MODE: char; LINE-HEIGHT: 12pt"><span style="FONT-SIZE: 9pt">q是Jakarta的JSTL实现Q一些SpringCZ应用使用了这个实现?/span></div> </td> </tr> <tr> <td style="BORDER-RIGHT: windowtext 1pt solid; PADDING-RIGHT: 5.4pt; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0cm; BORDER-LEFT: windowtext 1pt solid; WIDTH: 76.3pt; BORDER-TOP-COLOR: #ece9d8; PADDING-TOP: 0cm; BORDER-BOTTOM: windowtext 1pt solid; BACKGROUND-COLOR: transparent" vAlign=top width=102> <div style="LAYOUT-GRID-MODE: char; LINE-HEIGHT: 12pt"><span style="FONT-SIZE: 9pt">jboss</span></div> </td> <td style="BORDER-RIGHT: windowtext 1pt solid; PADDING-RIGHT: 5.4pt; PADDING-LEFT: 5.4pt; BORDER-LEFT-COLOR: #ece9d8; PADDING-BOTTOM: 0cm; WIDTH: 127.8pt; BORDER-TOP-COLOR: #ece9d8; PADDING-TOP: 0cm; BORDER-BOTTOM: windowtext 1pt solid; BACKGROUND-COLOR: transparent" vAlign=top width=170> <div style="LAYOUT-GRID-MODE: char; LINE-HEIGHT: 12pt"><span style="FONT-SIZE: 9pt">jboss-common-jdbc-wrapper.jar </span></div> </td> <td style="BORDER-RIGHT: windowtext 1pt solid; PADDING-RIGHT: 5.4pt; PADDING-LEFT: 5.4pt; BORDER-LEFT-COLOR: #ece9d8; PADDING-BOTTOM: 0cm; WIDTH: 227.85pt; BORDER-TOP-COLOR: #ece9d8; PADDING-TOP: 0cm; BORDER-BOTTOM: windowtext 1pt solid; BACKGROUND-COLOR: transparent" vAlign=top width=304> <div style="LAYOUT-GRID-MODE: char; LINE-HEIGHT: 12pt"><span style="FONT-SIZE: 9pt">q行在JBoss应用服务器上的应用用Spring的JDBCcLQ这个JAR文g不可或缺?/span></div> </td> </tr> <tr> <td style="BORDER-RIGHT: windowtext 1pt solid; PADDING-RIGHT: 5.4pt; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0cm; BORDER-LEFT: windowtext 1pt solid; WIDTH: 76.3pt; BORDER-TOP-COLOR: #ece9d8; PADDING-TOP: 0cm; BORDER-BOTTOM: windowtext 1pt solid; BACKGROUND-COLOR: transparent" vAlign=top width=102> <div style="LAYOUT-GRID-MODE: char; LINE-HEIGHT: 12pt"><span style="FONT-SIZE: 9pt">jdo</span></div> </td> <td style="BORDER-RIGHT: windowtext 1pt solid; PADDING-RIGHT: 5.4pt; PADDING-LEFT: 5.4pt; BORDER-LEFT-COLOR: #ece9d8; PADDING-BOTTOM: 0cm; WIDTH: 127.8pt; BORDER-TOP-COLOR: #ece9d8; PADDING-TOP: 0cm; BORDER-BOTTOM: windowtext 1pt solid; BACKGROUND-COLOR: transparent" vAlign=top width=170> <div style="LAYOUT-GRID-MODE: char; LINE-HEIGHT: 12pt"><span style="FONT-SIZE: 9pt">jdo.jar</span></div> </td> <td style="BORDER-RIGHT: windowtext 1pt solid; PADDING-RIGHT: 5.4pt; PADDING-LEFT: 5.4pt; BORDER-LEFT-COLOR: #ece9d8; PADDING-BOTTOM: 0cm; WIDTH: 227.85pt; BORDER-TOP-COLOR: #ece9d8; PADDING-TOP: 0cm; BORDER-BOTTOM: windowtext 1pt solid; BACKGROUND-COLOR: transparent" vAlign=top width=304> <div style="LAYOUT-GRID-MODE: char; LINE-HEIGHT: 12pt"><span style="FONT-SIZE: 9pt">提供Spring的JDO支持?/span></div> </td> </tr> <tr> <td style="BORDER-RIGHT: windowtext 1pt solid; PADDING-RIGHT: 5.4pt; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0cm; BORDER-LEFT: windowtext 1pt solid; WIDTH: 76.3pt; BORDER-TOP-COLOR: #ece9d8; PADDING-TOP: 0cm; BORDER-BOTTOM: windowtext 1pt solid; BACKGROUND-COLOR: transparent" vAlign=top width=102> <div style="LAYOUT-GRID-MODE: char; LINE-HEIGHT: 12pt"><span style="FONT-SIZE: 9pt">jdom</span></div> </td> <td style="BORDER-RIGHT: windowtext 1pt solid; PADDING-RIGHT: 5.4pt; PADDING-LEFT: 5.4pt; BORDER-LEFT-COLOR: #ece9d8; PADDING-BOTTOM: 0cm; WIDTH: 127.8pt; BORDER-TOP-COLOR: #ece9d8; PADDING-TOP: 0cm; BORDER-BOTTOM: windowtext 1pt solid; BACKGROUND-COLOR: transparent" vAlign=top width=170> <div style="LAYOUT-GRID-MODE: char; LINE-HEIGHT: 12pt"><span style="FONT-SIZE: 9pt">jdom.jar</span></div> </td> <td style="BORDER-RIGHT: windowtext 1pt solid; PADDING-RIGHT: 5.4pt; PADDING-LEFT: 5.4pt; BORDER-LEFT-COLOR: #ece9d8; PADDING-BOTTOM: 0cm; WIDTH: 227.85pt; BORDER-TOP-COLOR: #ece9d8; PADDING-TOP: 0cm; BORDER-BOTTOM: windowtext 1pt solid; BACKGROUND-COLOR: transparent" vAlign=top width=304> <div style="LAYOUT-GRID-MODE: char; LINE-HEIGHT: 12pt"><span style="FONT-SIZE: 9pt">在Spring里用iBATIS 1.3ӞJDOM不可或缺。本章介l的iBATIS版本?.0?/span></div> </td> </tr> <tr> <td style="BORDER-RIGHT: windowtext 1pt solid; PADDING-RIGHT: 5.4pt; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0cm; BORDER-LEFT: windowtext 1pt solid; WIDTH: 76.3pt; BORDER-TOP-COLOR: #ece9d8; PADDING-TOP: 0cm; BORDER-BOTTOM: windowtext 1pt solid; BACKGROUND-COLOR: transparent" vAlign=top width=102> <div style="LAYOUT-GRID-MODE: char; LINE-HEIGHT: 12pt"><span style="FONT-SIZE: 9pt">jotm</span></div> </td> <td style="BORDER-RIGHT: windowtext 1pt solid; PADDING-RIGHT: 5.4pt; PADDING-LEFT: 5.4pt; BORDER-LEFT-COLOR: #ece9d8; PADDING-BOTTOM: 0cm; WIDTH: 127.8pt; BORDER-TOP-COLOR: #ece9d8; PADDING-TOP: 0cm; BORDER-BOTTOM: windowtext 1pt solid; BACKGROUND-COLOR: transparent" vAlign=top width=170> <div style="LAYOUT-GRID-MODE: char; LINE-HEIGHT: 12pt"><span style="FONT-SIZE: 9pt">jotm.jar, xapool.jar</span></div> </td> <td style="BORDER-RIGHT: windowtext 1pt solid; PADDING-RIGHT: 5.4pt; PADDING-LEFT: 5.4pt; BORDER-LEFT-COLOR: #ece9d8; PADDING-BOTTOM: 0cm; WIDTH: 227.85pt; BORDER-TOP-COLOR: #ece9d8; PADDING-TOP: 0cm; BORDER-BOTTOM: windowtext 1pt solid; BACKGROUND-COLOR: transparent" vAlign=top width=304> <div style="LAYOUT-GRID-MODE: char; LINE-HEIGHT: 12pt"><span style="FONT-SIZE: 9pt">如果你打配合Spring事务抽象层一起用JOTMQjotm.jar文g不可或缺。如果打在自己的应用里XAPool用于q接池(connection poolingQ,则只需xapool.jar?/span></div> </td> </tr> <tr> <td style="BORDER-RIGHT: windowtext 1pt solid; PADDING-RIGHT: 5.4pt; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0cm; BORDER-LEFT: windowtext 1pt solid; WIDTH: 76.3pt; BORDER-TOP-COLOR: #ece9d8; PADDING-TOP: 0cm; BORDER-BOTTOM: windowtext 1pt solid; BACKGROUND-COLOR: transparent" vAlign=top width=102> <div style="LAYOUT-GRID-MODE: char; LINE-HEIGHT: 12pt"><span style="FONT-SIZE: 9pt">junit</span></div> </td> <td style="BORDER-RIGHT: windowtext 1pt solid; PADDING-RIGHT: 5.4pt; PADDING-LEFT: 5.4pt; BORDER-LEFT-COLOR: #ece9d8; PADDING-BOTTOM: 0cm; WIDTH: 127.8pt; BORDER-TOP-COLOR: #ece9d8; PADDING-TOP: 0cm; BORDER-BOTTOM: windowtext 1pt solid; BACKGROUND-COLOR: transparent" vAlign=top width=170> <div style="LAYOUT-GRID-MODE: char; LINE-HEIGHT: 12pt"><span style="FONT-SIZE: 9pt">junit.jar</span></div> </td> <td style="BORDER-RIGHT: windowtext 1pt solid; PADDING-RIGHT: 5.4pt; PADDING-LEFT: 5.4pt; BORDER-LEFT-COLOR: #ece9d8; PADDING-BOTTOM: 0cm; WIDTH: 227.85pt; BORDER-TOP-COLOR: #ece9d8; PADDING-TOP: 0cm; BORDER-BOTTOM: windowtext 1pt solid; BACKGROUND-COLOR: transparent" vAlign=top width=304> <div style="LAYOUT-GRID-MODE: char; LINE-HEIGHT: 12pt"><span style="FONT-SIZE: 9pt">q行时根本不需要JUnitQ它只用来构建和q行试套g?/span></div> </td> </tr> <tr> <td style="BORDER-RIGHT: windowtext 1pt solid; PADDING-RIGHT: 5.4pt; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0cm; BORDER-LEFT: windowtext 1pt solid; WIDTH: 76.3pt; BORDER-TOP-COLOR: #ece9d8; PADDING-TOP: 0cm; BORDER-BOTTOM: windowtext 1pt solid; BACKGROUND-COLOR: transparent" vAlign=top width=102> <div style="LAYOUT-GRID-MODE: char; LINE-HEIGHT: 12pt"><span style="FONT-SIZE: 9pt">log4j</span></div> </td> <td style="BORDER-RIGHT: windowtext 1pt solid; PADDING-RIGHT: 5.4pt; PADDING-LEFT: 5.4pt; BORDER-LEFT-COLOR: #ece9d8; PADDING-BOTTOM: 0cm; WIDTH: 127.8pt; BORDER-TOP-COLOR: #ece9d8; PADDING-TOP: 0cm; BORDER-BOTTOM: windowtext 1pt solid; BACKGROUND-COLOR: transparent" vAlign=top width=170> <div style="LAYOUT-GRID-MODE: char; LINE-HEIGHT: 12pt"><span style="FONT-SIZE: 9pt">log4j-1.2.8.jar</span></div> </td> <td style="BORDER-RIGHT: windowtext 1pt solid; PADDING-RIGHT: 5.4pt; PADDING-LEFT: 5.4pt; BORDER-LEFT-COLOR: #ece9d8; PADDING-BOTTOM: 0cm; WIDTH: 227.85pt; BORDER-TOP-COLOR: #ece9d8; PADDING-TOP: 0cm; BORDER-BOTTOM: windowtext 1pt solid; BACKGROUND-COLOR: transparent" vAlign=top width=304> <div style="LAYOUT-GRID-MODE: char; LINE-HEIGHT: 12pt"><span style="FONT-SIZE: 9pt">如果惌使用Spring配置log4j日志记录Q这个文件不可或~?/span></div> </td> </tr> <tr> <td style="BORDER-RIGHT: windowtext 1pt solid; PADDING-RIGHT: 5.4pt; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0cm; BORDER-LEFT: windowtext 1pt solid; WIDTH: 76.3pt; BORDER-TOP-COLOR: #ece9d8; PADDING-TOP: 0cm; BORDER-BOTTOM: windowtext 1pt solid; BACKGROUND-COLOR: transparent" vAlign=top width=102> <div style="LAYOUT-GRID-MODE: char; LINE-HEIGHT: 12pt"><span style="FONT-SIZE: 9pt">poi</span></div> </td> <td style="BORDER-RIGHT: windowtext 1pt solid; PADDING-RIGHT: 5.4pt; PADDING-LEFT: 5.4pt; BORDER-LEFT-COLOR: #ece9d8; PADDING-BOTTOM: 0cm; WIDTH: 127.8pt; BORDER-TOP-COLOR: #ece9d8; PADDING-TOP: 0cm; BORDER-BOTTOM: windowtext 1pt solid; BACKGROUND-COLOR: transparent" vAlign=top width=170> <div style="LAYOUT-GRID-MODE: char; LINE-HEIGHT: 12pt"><span style="FONT-SIZE: 9pt">poi-2.5.jar</span></div> </td> <td style="BORDER-RIGHT: windowtext 1pt solid; PADDING-RIGHT: 5.4pt; PADDING-LEFT: 5.4pt; BORDER-LEFT-COLOR: #ece9d8; PADDING-BOTTOM: 0cm; WIDTH: 227.85pt; BORDER-TOP-COLOR: #ece9d8; PADDING-TOP: 0cm; BORDER-BOTTOM: windowtext 1pt solid; BACKGROUND-COLOR: transparent" vAlign=top width=304> <div style="LAYOUT-GRID-MODE: char; LINE-HEIGHT: 12pt"><span style="FONT-SIZE: 9pt">q个JAR可oSpring MVC框架支持Microsoft Excel输出?/span></div> </td> </tr> <tr> <td style="BORDER-RIGHT: windowtext 1pt solid; PADDING-RIGHT: 5.4pt; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0cm; BORDER-LEFT: windowtext 1pt solid; WIDTH: 76.3pt; BORDER-TOP-COLOR: #ece9d8; PADDING-TOP: 0cm; BORDER-BOTTOM: windowtext 1pt solid; BACKGROUND-COLOR: transparent" vAlign=top width=102> <div style="LAYOUT-GRID-MODE: char; LINE-HEIGHT: 12pt"><span style="FONT-SIZE: 9pt">quartz</span></div> </td> <td style="BORDER-RIGHT: windowtext 1pt solid; PADDING-RIGHT: 5.4pt; PADDING-LEFT: 5.4pt; BORDER-LEFT-COLOR: #ece9d8; PADDING-BOTTOM: 0cm; WIDTH: 127.8pt; BORDER-TOP-COLOR: #ece9d8; PADDING-TOP: 0cm; BORDER-BOTTOM: windowtext 1pt solid; BACKGROUND-COLOR: transparent" vAlign=top width=170> <div style="LAYOUT-GRID-MODE: char; LINE-HEIGHT: 12pt"><span style="FONT-SIZE: 9pt">quartz.jar</span></div> </td> <td style="BORDER-RIGHT: windowtext 1pt solid; PADDING-RIGHT: 5.4pt; PADDING-LEFT: 5.4pt; BORDER-LEFT-COLOR: #ece9d8; PADDING-BOTTOM: 0cm; WIDTH: 227.85pt; BORDER-TOP-COLOR: #ece9d8; PADDING-TOP: 0cm; BORDER-BOTTOM: windowtext 1pt solid; BACKGROUND-COLOR: transparent" vAlign=top width=304> <div style="LAYOUT-GRID-MODE: char; LINE-HEIGHT: 12pt"><span style="FONT-SIZE: 9pt">Spring</span><span style="FONT-SIZE: 9pt">ZQuartz的调度支持需要该JAR?/span></div> </td> </tr> <tr> <td style="BORDER-RIGHT: windowtext 1pt solid; PADDING-RIGHT: 5.4pt; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0cm; BORDER-LEFT: windowtext 1pt solid; WIDTH: 76.3pt; BORDER-TOP-COLOR: #ece9d8; PADDING-TOP: 0cm; BORDER-BOTTOM: windowtext 1pt solid; BACKGROUND-COLOR: transparent" vAlign=top width=102> <div style="LAYOUT-GRID-MODE: char; LINE-HEIGHT: 12pt"><span style="FONT-SIZE: 9pt">regexp</span></div> </td> <td style="BORDER-RIGHT: windowtext 1pt solid; PADDING-RIGHT: 5.4pt; PADDING-LEFT: 5.4pt; BORDER-LEFT-COLOR: #ece9d8; PADDING-BOTTOM: 0cm; WIDTH: 127.8pt; BORDER-TOP-COLOR: #ece9d8; PADDING-TOP: 0cm; BORDER-BOTTOM: windowtext 1pt solid; BACKGROUND-COLOR: transparent" vAlign=top width=170> <div style="LAYOUT-GRID-MODE: char; LINE-HEIGHT: 12pt"><span style="FONT-SIZE: 9pt">Jakarta-oro-2.0.7.jar</span></div> </td> <td style="BORDER-RIGHT: windowtext 1pt solid; PADDING-RIGHT: 5.4pt; PADDING-LEFT: 5.4pt; BORDER-LEFT-COLOR: #ece9d8; PADDING-BOTTOM: 0cm; WIDTH: 227.85pt; BORDER-TOP-COLOR: #ece9d8; PADDING-TOP: 0cm; BORDER-BOTTOM: windowtext 1pt solid; BACKGROUND-COLOR: transparent" vAlign=top width=304> <div style="LAYOUT-GRID-MODE: char; LINE-HEIGHT: 12pt"><span style="FONT-SIZE: 9pt">使用正则表达式来指定AOP的切入点QpointcutQ时需要这个JAR。第六章有更详细的介l?/span></div> </td> </tr> <tr> <td style="BORDER-RIGHT: windowtext 1pt solid; PADDING-RIGHT: 5.4pt; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0cm; BORDER-LEFT: windowtext 1pt solid; WIDTH: 76.3pt; BORDER-TOP-COLOR: #ece9d8; PADDING-TOP: 0cm; BORDER-BOTTOM: windowtext 1pt solid; BACKGROUND-COLOR: transparent" vAlign=top width=102> <div style="LAYOUT-GRID-MODE: char; LINE-HEIGHT: 12pt"><span style="FONT-SIZE: 9pt">struts</span></div> </td> <td style="BORDER-RIGHT: windowtext 1pt solid; PADDING-RIGHT: 5.4pt; PADDING-LEFT: 5.4pt; BORDER-LEFT-COLOR: #ece9d8; PADDING-BOTTOM: 0cm; WIDTH: 127.8pt; BORDER-TOP-COLOR: #ece9d8; PADDING-TOP: 0cm; BORDER-BOTTOM: windowtext 1pt solid; BACKGROUND-COLOR: transparent" vAlign=top width=170> <div style="LAYOUT-GRID-MODE: char; LINE-HEIGHT: 12pt"><span style="FONT-SIZE: 9pt">struts.jar</span></div> </td> <td style="BORDER-RIGHT: windowtext 1pt solid; PADDING-RIGHT: 5.4pt; PADDING-LEFT: 5.4pt; BORDER-LEFT-COLOR: #ece9d8; PADDING-BOTTOM: 0cm; WIDTH: 227.85pt; BORDER-TOP-COLOR: #ece9d8; PADDING-TOP: 0cm; BORDER-BOTTOM: windowtext 1pt solid; BACKGROUND-COLOR: transparent" vAlign=top width=304> <div style="LAYOUT-GRID-MODE: char; LINE-HEIGHT: 12pt"><span style="FONT-SIZE: 9pt">Ʋ配合Spring使用Struts构徏web应用QStruts JAR必不可少?/span></div> </td> </tr> <tr> <td style="BORDER-RIGHT: windowtext 1pt solid; PADDING-RIGHT: 5.4pt; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0cm; BORDER-LEFT: windowtext 1pt solid; WIDTH: 76.3pt; BORDER-TOP-COLOR: #ece9d8; PADDING-TOP: 0cm; BORDER-BOTTOM: windowtext 1pt solid; BACKGROUND-COLOR: transparent" vAlign=top width=102> <div style="LAYOUT-GRID-MODE: char; LINE-HEIGHT: 12pt"><span style="FONT-SIZE: 9pt">velocity</span></div> </td> <td style="BORDER-RIGHT: windowtext 1pt solid; PADDING-RIGHT: 5.4pt; PADDING-LEFT: 5.4pt; BORDER-LEFT-COLOR: #ece9d8; PADDING-BOTTOM: 0cm; WIDTH: 127.8pt; BORDER-TOP-COLOR: #ece9d8; PADDING-TOP: 0cm; BORDER-BOTTOM: windowtext 1pt solid; BACKGROUND-COLOR: transparent" vAlign=top width=170> <div style="LAYOUT-GRID-MODE: char; LINE-HEIGHT: 12pt"><span style="FONT-SIZE: 9pt">velocity-1.4.jar, velocity-tools-generic-1.1.jar</span></div> </td> <td style="BORDER-RIGHT: windowtext 1pt solid; PADDING-RIGHT: 5.4pt; PADDING-LEFT: 5.4pt; BORDER-LEFT-COLOR: #ece9d8; PADDING-BOTTOM: 0cm; WIDTH: 227.85pt; BORDER-TOP-COLOR: #ece9d8; PADDING-TOP: 0cm; BORDER-BOTTOM: windowtext 1pt solid; BACKGROUND-COLOR: transparent" vAlign=top width=304> <div style="LAYOUT-GRID-MODE: char; LINE-HEIGHT: 12pt"><span style="FONT-SIZE: 9pt">Spring</span><span style="FONT-SIZE: 9pt">提供了Velocity的包装类使其支持DIQ同时当你在应用中用VelocityӞq可减少需要编写的代码量。除此之外,Springq提供了一些类Q支持将Velocity用作web层里的视图提供者(view providerQ。只要用了上述LҎ,都需在发布里包含Velocity JAR文g?/span></div> </td> </tr> <tr> <td style="BORDER-RIGHT: windowtext 1pt solid; PADDING-RIGHT: 5.4pt; PADDING-LEFT: 5.4pt; PADDING-BOTTOM: 0cm; BORDER-LEFT: windowtext 1pt solid; WIDTH: 76.3pt; BORDER-TOP-COLOR: #ece9d8; PADDING-TOP: 0cm; BORDER-BOTTOM: windowtext 1pt solid; BACKGROUND-COLOR: transparent" vAlign=top width=102> <div style="LAYOUT-GRID-MODE: char; LINE-HEIGHT: 12pt"><span style="FONT-SIZE: 9pt">xdoclet</span></div> </td> <td style="BORDER-RIGHT: windowtext 1pt solid; PADDING-RIGHT: 5.4pt; PADDING-LEFT: 5.4pt; BORDER-LEFT-COLOR: #ece9d8; PADDING-BOTTOM: 0cm; WIDTH: 127.8pt; BORDER-TOP-COLOR: #ece9d8; PADDING-TOP: 0cm; BORDER-BOTTOM: windowtext 1pt solid; BACKGROUND-COLOR: transparent" vAlign=top width=170> <div style="LAYOUT-GRID-MODE: char; LINE-HEIGHT: 12pt"><span style="FONT-SIZE: 9pt">xjavadoc-1.0.jar</span></div> </td> <td style="BORDER-RIGHT: windowtext 1pt solid; PADDING-RIGHT: 5.4pt; PADDING-LEFT: 5.4pt; BORDER-LEFT-COLOR: #ece9d8; PADDING-BOTTOM: 0cm; WIDTH: 227.85pt; BORDER-TOP-COLOR: #ece9d8; PADDING-TOP: 0cm; BORDER-BOTTOM: windowtext 1pt solid; BACKGROUND-COLOR: transparent" vAlign=top width=304> <div style="LAYOUT-GRID-MODE: char; LINE-HEIGHT: 12pt"><span style="FONT-SIZE: 9pt">Commons Attributes</span><span style="FONT-SIZE: 9pt">用这个JAR解析源代码文Ӟ然后提取属性信息。如果用了Spring Commons Attributes支持Q须包含该JAR文g?/span></div> </td> </tr> </tbody> </table> <img src ="http://www.aygfsteel.com/linlin2005/aggbug/136262.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.aygfsteel.com/linlin2005/" target="_blank">lubaolin</a> 2007-08-13 02:39 <a href="http://www.aygfsteel.com/linlin2005/archive/2007/08/13/136262.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>在javaE序中如何知道数据库表的主键http://www.aygfsteel.com/linlin2005/archive/2007/08/01/133836.htmllubaolinlubaolinWed, 01 Aug 2007 09:19:00 GMThttp://www.aygfsteel.com/linlin2005/archive/2007/08/01/133836.htmlhttp://www.aygfsteel.com/linlin2005/comments/133836.htmlhttp://www.aygfsteel.com/linlin2005/archive/2007/08/01/133836.html#Feedback0http://www.aygfsteel.com/linlin2005/comments/commentRss/133836.htmlhttp://www.aygfsteel.com/linlin2005/services/trackbacks/133836.html有同事问到在E序中怎样知道数据库表中那些字D|主键。当时不知道Q晚上回来看了看JDK的文档?/span>

       在?/span>JDBC来查询数据库的时候,通常的步骤是Q?/span>

1Q?nbsp;注册驱动E序

2Q?nbsp;获取数据库连?/span>

3Q?nbsp;执行查询语句

4Q?nbsp;关闭q接?/span>

       在获得数据库q接后,可以通过getMetaDataQ)Ҏ来获?/span>DatabaseMetaData;然后通过DatabaseMetaData?/span>getPrimaryKeys ()Ҏ来获取主键的信息?/span>

       下面是我做的CZE序Q该E序?/span>JBuilder2005Q?/span>oracle8i下通过Q?/span>
import java.sql.*;

import javax.sql.*;

public class TestJDBC {

    public TestJDBC() {

    }

 

    public static void main(String[] args) throws SQLException {

        Connection con = null;

        Statement st = null;

        ResultSet rst = null;

        try{

                     //注册数据库驱动程?/span>

            Class.forName("oracle.jdbc.driver.OracleDriver");

                     //获取数据库连?/span>

            con = DriverManager.getConnection("jdbc:oracle:thin:@10.60.203.80:1521:TestDB","123","123");

                     //获取主键信息

            rst = con.getMetaData().getPrimaryKeys(null,null,"USER");

                     //打印主键信息

            if (!rst.isAfterLast()) {

                rst.next();

                System.out.println(rst.getString("TABLE_NAME") + " " +

                                  rst.getString("COLUMN_NAME"));

            }

        }

        catch (Exception e){

            System.out.println(e.getLocalizedMessage());

        }

        finally{

            try{

                            //关闭q接

                if (rst != null)

                    rst.close();

                if (con != null)

                    con.close();

            }

            catch (SQLException e){

                throw e;

            }

        }

 

    }

}

 

上面的程序中,在获取主键信息的时?/span>,语句

rst = con.getMetaData().getPrimaryKeys(null,null,"USER");

用来获取主键信息。关于该函数的详l信息,请参?/span>JDK的文档。这里要说的是,在测试中发现W三个参敎ͼ数据库表名)是大写敏感的,如果写成user是查不到l果的?br>
 引自Q?a href="http://www.aygfsteel.com/afrag/">http://www.aygfsteel.com/afrag/



lubaolin 2007-08-01 17:19 发表评论
]]>
java在应用程序中d声音http://www.aygfsteel.com/linlin2005/archive/2007/07/18/131115.htmllubaolinlubaolinWed, 18 Jul 2007 09:19:00 GMThttp://www.aygfsteel.com/linlin2005/archive/2007/07/18/131115.htmlhttp://www.aygfsteel.com/linlin2005/comments/131115.htmlhttp://www.aygfsteel.com/linlin2005/archive/2007/07/18/131115.html#Feedback0http://www.aygfsteel.com/linlin2005/comments/commentRss/131115.htmlhttp://www.aygfsteel.com/linlin2005/services/trackbacks/131115.htmlprivate void play(String path){
  try {
        FileInputStream sound_file=new FileInputStream(path);//获得声音文g
        try {
              AudioStream AudioStream_sound=new AudioStream(sound_file);
              AudioData sound_data = AudioStream_sound.getData();//转化的wav文gq句会报?br>              ContinuousAudioDataStream sound_continue= new ContinuousAudioDataStream (sound_data);//循环播放
              AudioPlayer.player.start(sound_continue);// Play audio.
              //System.out.println("Play music success!");
              AudioPlayer.player.stop(sound_continue);// Stop audio.
             } catch (IOException e1) {
               // TODO Auto-generated catch block
               System.out.println("Play music fail!");
               e1.printStackTrace();
             }
           } catch (FileNotFoundException e1) {
               // TODO Auto-generated catch block
               e1.printStackTrace();
           }
       }
 
注:1.q个E序D|应用在应用程序中Q网中的声韌用不适用?br>    2.声音片段可以为au格式和wav格式Q但是注意的是,如果是别的格式如mp3格式转化q来的,则在AudioData sound_data = AudioStream_sound.getData();pȝ会报错?br>    3.调用的时候,量用线E,q样可以避免冲突?br>
引自Q?a >http://blog.sina.com.cn/u/53f7b6e401000a9w

lubaolin 2007-07-18 17:19 发表评论
]]>
flash与jsp的交?/title><link>http://www.aygfsteel.com/linlin2005/archive/2007/03/28/106844.html</link><dc:creator>lubaolin</dc:creator><author>lubaolin</author><pubDate>Wed, 28 Mar 2007 01:08:00 GMT</pubDate><guid>http://www.aygfsteel.com/linlin2005/archive/2007/03/28/106844.html</guid><wfw:comment>http://www.aygfsteel.com/linlin2005/comments/106844.html</wfw:comment><comments>http://www.aygfsteel.com/linlin2005/archive/2007/03/28/106844.html#Feedback</comments><slash:comments>2</slash:comments><wfw:commentRss>http://www.aygfsteel.com/linlin2005/comments/commentRss/106844.html</wfw:commentRss><trackback:ping>http://www.aygfsteel.com/linlin2005/services/trackbacks/106844.html</trackback:ping><description><![CDATA[<div><font color=blue>1)swf从jspL?/font> <br><strong>a)</strong> 在flash中徏一个动态文本框Q一个button;文本框名字叫str,button上写<br><br><font color=red><br>on (release) {<br>loadVariable("http://localhost:8080/demo/sentVar.jsp", "","get");<br>}//url相对Q绝对\径好像都可以</font><br><br><strong>b)</strong> 在sentVar.jsp中写如下代码Q?<br><%@ page contentType="text/html;charset=gb2312"%><br><%<br>String tmp="wowowo";<br>out.println("&str="+tmp);//q里一定要写成"&str="的Ş式,&一定不能少Qstr的名字要与你a中徏的相同,“= ”号也不能?<br>%><br><strong>c)</strong>试。click button ...yeah~(failed?its none of my business)<img class=inlineimg title="Big Grin" alt="" src="http://www.flashempire.net/images/smilies/biggrin.gif" border=0> try again~~<br><br>-------------------------------------------------------------------<br><br><font color=blue>2)swf向jsp写数?/font><br>q个单点?br><br>cZinput textfield,起个名字str吧。一个button,上面写:<br><font color=red>on (release) {<br>getURL("showrs.jsp", "","get");<br>}</font><br><br><strong>b)</strong>showrs.jsp中写Q?br><font color=red><br><%@ page contentType="text/html;charset=gb2312"%><br><%<br>String tem=request.getParameter("str");<br>out.println("str="+tem);<br>%></font><br>everything is ok~enjoy...<br><br>引自Q?a >http://www.flashempire.net/showpost.php?p=892409</a></div> <!-- / message --> <img src ="http://www.aygfsteel.com/linlin2005/aggbug/106844.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.aygfsteel.com/linlin2005/" target="_blank">lubaolin</a> 2007-03-28 09:08 <a href="http://www.aygfsteel.com/linlin2005/archive/2007/03/28/106844.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item></channel></rss> <footer> <div class="friendship-link"> <a href="http://www.aygfsteel.com/" title="狠狠久久亚洲欧美专区_中文字幕亚洲综合久久202_国产精品亚洲第五区在线_日本免费网站视频">狠狠久久亚洲欧美专区_中文字幕亚洲综合久久202_国产精品亚洲第五区在线_日本免费网站视频</a> </div> </footer> վ֩ģ壺 <a href="http://" target="_blank"></a>| <a href="http://" target="_blank">̨</a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank">ï</a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank">⽭</a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank">鴨</a>| <a href="http://" target="_blank">Ͽ</a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank">̫ԭ</a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank"> </a>| <a href="http://" target="_blank">ɳ</a>| <a href="http://" target="_blank">ʡ</a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank">ͻȪ</a>| <a href="http://" target="_blank">˶</a>| <a href="http://" target="_blank">ľ</a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank">ˮ</a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank">Ȫ</a>| <a href="http://" target="_blank">ԭƽ</a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank">۳</a>| <a href="http://" target="_blank">º</a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank">Ϫ</a>| <a href="http://" target="_blank"></a>| <a href="http://" target="_blank"></a>| <script> (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })(); </script> </body>