<?xml version="1.0" encoding="utf-8"?><?xml-stylesheet href='http://feed.feedsky.com/styles/feedsky8.xsl' type='text/xsl' ?><!--这是一个由Feedsy提供技术支持的Feed，为了提高读者阅读的体验，以及满足用户美化自己Feed的需要，我们设计了多种精美的Feed模板，提供给大家选择，所有最终呈现出来的样式，皆由用户自愿选择使用，未经许可，任何团体和个人，请不要擅自修改样式或者盗用，这是对于用户选择权的尊重。--><rss xmlns:atom="http://www.w3.org/2005/Atom" xmlns:fs="http://www.feedsky.com/namespace/feed" xmlns:sy="http://purl.org/rss/1.0/modules/syndication/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:dc="http://purl.org/dc/elements/1.1/" version="2.0"><channel><atom:link href="http://feed.qbencao.com" type="application/rss+xml" rel="self"></atom:link><fs:self_link href="http://feed.feedsky.com/qbencao" type="application/rss+xml"></fs:self_link><lastBuildDate>Thu, 11 Dec 2008 06:58:22 GMT</lastBuildDate><title>钱本草</title><description>    君子爱财 取之有道 用之有度</description><link>http://www.qbencao.com</link><sy:updatePeriod>hourly</sy:updatePeriod><sy:updateFrequency>1</sy:updateFrequency><language>en</language><pubDate>Thu, 11 Dec 2008 06:58:22 GMT</pubDate><item><title>Struts2自动加载,提高Struts2开发生产力</title><link>http://item.feedsky.com/~feedsky/qbencao/~6900889/158192976/5008872/1/item.html</link><content:encoded>&lt;p&gt;    要提高Struts 2开发效率, 最主要的是修改了Struts配置文件后不要重新载入应用就能生效, 这可以通过以下配置做到:&lt;br /&gt;
找到struts2的配置文件:src/struts.properties&lt;/p&gt;
&lt;p&gt;struts.devMode=true&lt;br /&gt;
struts.i18n.reload=true&lt;br /&gt;
struts.configuration.xml.reload=true&lt;/p&gt;
&lt;p&gt;同样也可以修改struts.xml文件&lt;/p&gt;
&lt;p&gt;&amp;lt;constant name=&amp;#8221;struts.devMode&amp;#8221; value=&amp;#8221;true&amp;#8221; /&amp;gt;&lt;br /&gt;
&amp;lt;constant name=&amp;#8221;struts.i18n.reload&amp;#8221; value=&amp;#8221;true&amp;#8221; /&amp;gt;&lt;br /&gt;
&amp;lt;constant name=&amp;#8221;struts.configuration.xml.reload&amp;#8221; value=&amp;#8221;true&amp;#8221; /&amp;gt;&lt;/p&gt;
&lt;p&gt;这两个选项, 可以保证提供额外的出错信息(帮助开发人员定位错误位置), 国际化资源文件和配置文件修改后可以被立即自动重新载入(注意也能载入include文件的修改), 这个特性是N多其他框架所没有的.&lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p&gt;     那么另一个常见的问题就是修改了类文件后需要重新载入应用才能生效, 这个问题可以通过JavaRebel来搞定, 下面是 MyEclipse 中的Tomcat配置:&lt;br /&gt;
&lt;img src=&quot;http://www.qbencao.com/wordpress/upload/images/javarebel_myeclipse2_3.png&quot; alt=&quot;struts2&quot; width=&quot;520&quot; height=&quot;412&quot; /&gt;&lt;/p&gt;
&lt;p&gt;这两招下来, 可以在新加入类以及Struts配置修改后, 完全无需重启或者重新发布即可立即测试! 在JAR包暴多的情况下, 可以让我们不再等待10到20秒了!&lt;/p&gt;
&lt;p&gt;JavaRebel在加入父类时无法工作, 但是有人反映说JavaRebel无法正确显示Debug时的类行号, 也许那是老版本时候的事情了, 我个人认为这是谣传(以讹传讹吧)&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;http://www.zeroturnaround.com/releases/javarebel-2.0-M1.zip&quot; target=&quot;_blank&quot;&gt;javaRebel.jar 下载&lt;br /&gt;
&lt;/a&gt;
&lt;ul class=&quot;related_post&quot;&gt;
&lt;li&gt;&lt;a href=&quot;http://www.qbencao.com/2008/11/14/struts2-ognl-us-254.html&quot; title=&quot;struts2中的OGNL&quot;&gt;struts2中的OGNL&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://www.qbencao.com/2008/11/13/struts2-tags-iterato-260.html&quot; title=&quot;struts2标签学习&amp;#8211;iterator&quot;&gt;struts2标签学习&amp;#8211;iterator&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://www.qbencao.com/2008/11/13/struts2-tag-use-i-freemarker-258.html&quot; title=&quot;在struts2中使用freemarker&quot;&gt;在struts2中使用freemarker&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://www.qbencao.com/2008/11/13/ognl-intro-251.html&quot; title=&quot;OGNL简单使用&quot;&gt;OGNL简单使用&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://www.qbencao.com/2008/11/12/freemark-example-256.html&quot; title=&quot;Freemarker - 几个比较实用的例子&quot;&gt;Freemarker - 几个比较实用的例子&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://www.qbencao.com/2008/11/12/freemarke-249.html&quot; title=&quot;FreeMarker初学&quot;&gt;FreeMarker初学&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://www.qbencao.com/2008/10/20/struts2-xmlload-order-227.html&quot; title=&quot;struts2加载插件的顺序&quot;&gt;struts2加载插件的顺序&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://www.qbencao.com/2008/10/19/struts2-al-225.html&quot; title=&quot;Struts2 总结 - [Struts2]&quot;&gt;Struts2 总结 - [Struts2]&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;&lt;br /&gt;&lt;!-- Feedsky ad --&gt;&lt;a href=&quot;http://feed.feedsky.com/~cpm/c/qbencao/e3b7bb7063024dc6a9c31027d0c037b9&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~cpm/qbencao/e3b7bb7063024dc6a9c31027d0c037b9/s.gif&quot; border=&quot;0&quot; style=&quot;margin-top:5px;&quot; /&gt;&lt;/a&gt;&lt;!-- /Feedsky ad --&gt;&lt;br /&gt;&lt;!-- Feedsky flare --&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/qbencao?a=7c09cfb9416ae5fc173530f37b01c0c5&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/qbencao?i=7c09cfb9416ae5fc173530f37b01c0c5&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/qbencao?a=215a6389c277846e592a2843fc1dc40b&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/qbencao?i=215a6389c277846e592a2843fc1dc40b&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/qbencao?a=a11fe7c481ffa976d41683a0e8f0856d&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/qbencao?i=a11fe7c481ffa976d41683a0e8f0856d&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/qbencao?a=a06b18f55b4700b091e6877a2445aabf&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/qbencao?i=a06b18f55b4700b091e6877a2445aabf&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/qbencao?a=2438419338c5c3403b5b0c6450a9dfa5&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/qbencao?i=2438419338c5c3403b5b0c6450a9dfa5&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/qbencao?a=cc3ad31e08dfd9466de22a884b7a70a5&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/qbencao?i=cc3ad31e08dfd9466de22a884b7a70a5&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/qbencao?a=05cf89f5a3d8de4631e2eebadc3c0f45&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/qbencao?i=05cf89f5a3d8de4631e2eebadc3c0f45&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/qbencao?a=cf8033c74f09a5ada49b52b032bfcb3a&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/qbencao?i=cf8033c74f09a5ada49b52b032bfcb3a&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;!-- /Feedsky flare --&gt;</content:encoded><wfw:commentRss>http://www.qbencao.com/2008/12/11/struts2-reload-two-metho-285.html/feed</wfw:commentRss><description>    要提高Struts 2开发效率, 最主要的是修改了Struts配置文件后不要重新载入应用就能生效, 这可以通过以下配置做到:
找到struts2的配置文件:src/struts.properties
struts.devMode=true
struts.i18n.reload=true
struts.configuration.xml.reload=true
同样也可以修改struts.xml文件
&amp;#6...&lt;br /&gt;&lt;!-- Feedsky ad --&gt;&lt;a href=&quot;http://feed.feedsky.com/~cpm/c/qbencao/e3b7bb7063024dc6a9c31027d0c037b9&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~cpm/qbencao/e3b7bb7063024dc6a9c31027d0c037b9/s.gif&quot; border=&quot;0&quot; style=&quot;margin-top:5px;&quot; /&gt;&lt;/a&gt;&lt;!-- /Feedsky ad --&gt;&lt;br /&gt;&lt;!-- Feedsky flare --&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/qbencao?a=7c09cfb9416ae5fc173530f37b01c0c5&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/qbencao?i=7c09cfb9416ae5fc173530f37b01c0c5&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/qbencao?a=215a6389c277846e592a2843fc1dc40b&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/qbencao?i=215a6389c277846e592a2843fc1dc40b&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/qbencao?a=a11fe7c481ffa976d41683a0e8f0856d&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/qbencao?i=a11fe7c481ffa976d41683a0e8f0856d&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/qbencao?a=a06b18f55b4700b091e6877a2445aabf&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/qbencao?i=a06b18f55b4700b091e6877a2445aabf&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/qbencao?a=2438419338c5c3403b5b0c6450a9dfa5&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/qbencao?i=2438419338c5c3403b5b0c6450a9dfa5&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/qbencao?a=cc3ad31e08dfd9466de22a884b7a70a5&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/qbencao?i=cc3ad31e08dfd9466de22a884b7a70a5&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/qbencao?a=05cf89f5a3d8de4631e2eebadc3c0f45&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/qbencao?i=05cf89f5a3d8de4631e2eebadc3c0f45&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/qbencao?a=cf8033c74f09a5ada49b52b032bfcb3a&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/qbencao?i=cf8033c74f09a5ada49b52b032bfcb3a&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;!-- /Feedsky flare --&gt;</description><category>热部署</category><category>编程开发</category><category>Java</category><category>struts2</category><pubDate>Thu, 11 Dec 2008 14:58:22 +0800</pubDate><author>阿超</author><comments>http://www.qbencao.com/2008/12/11/struts2-reload-two-metho-285.html#comments</comments><guid isPermaLink="false">http://www.qbencao.com/?p=285</guid><dc:creator>阿超</dc:creator><fs:srclink>http://www.qbencao.com/2008/12/11/struts2-reload-two-metho-285.html</fs:srclink><fs:srcfeed>http://www.qbencao.com/feed</fs:srcfeed><fs:itemid>feedsky/qbencao/~6900889/158192976/5008872</fs:itemid></item><item><title>tomcat下的server.xml文件和context.xml</title><link>http://item.feedsky.com/~feedsky/qbencao/~6900889/158192977/5008872/1/item.html</link><content:encoded>&lt;div class=&quot;entity&quot; style=&quot;font-size: 10pt;&quot;&gt;
&lt;p&gt; &amp;lt;Server&amp;gt;元素&lt;br /&gt;
它代表整个容器,是Tomcat实例的顶层元素.由org.apache.catalina.Server接口来定义.它包含一个&amp;lt;Service&amp;gt;元素.并且它不能做为任何元素的子元素.&lt;/p&gt;
&lt;p&gt;&amp;lt;Server port=&amp;#8221;8005&amp;#8243; shutdown=&amp;#8221;SHUTDOWN&amp;#8221; debug=&amp;#8221;0&amp;#8243;&amp;gt;&lt;/p&gt;
&lt;p&gt;1&amp;gt;className指定实现org.apache.catalina.Server接口的类.默认值为org.apache.catalina.core.StandardServer&lt;br /&gt;
2&amp;gt;port指定Tomcat监听shutdown命令端口.终止服务器运行时,必须在Tomcat服务器所在的机器上发出shutdown命令.该属性是必须的.&lt;br /&gt;
3&amp;gt;shutdown指定终止Tomcat服务器运行时,发给Tomcat服务器的shutdown监听端口的字符串.该属性必须设置&lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p&gt;&amp;lt;Service&amp;gt;元素&lt;br /&gt;
该元素由org.apache.catalina.Service接口定义,它包含一个&amp;lt;Engine&amp;gt;元素,以及一个或多个&amp;lt;Connector&amp;gt;,这些Connector元素共享用同一个Engine元素&lt;/p&gt;
&lt;p&gt;&amp;lt;Service name=&amp;#8221;Catalina&amp;#8221;&amp;gt;&lt;br /&gt;
&amp;lt;Service name=&amp;#8221;Apache&amp;#8221;&amp;gt;&lt;br /&gt;
第一个&amp;lt;Service&amp;gt;处理所有直接由Tomcat服务器接收的web客户请求.&lt;br /&gt;
第二个&amp;lt;Service&amp;gt;处理所有由Apahce服务器转发过来的Web客户请求&lt;/p&gt;
&lt;p&gt;1&amp;gt;className 指定实现org.apahce.catalina.Service接口的类.默认为org.apahce.catalina.core.StandardService&lt;br /&gt;
2&amp;gt;name定义Service的名字&lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p&gt;&amp;lt;Engine&amp;gt;元素&lt;br /&gt;
每个Service元素只能有一个Engine元素.元素处理在同一个&amp;lt;Service&amp;gt;中所有&amp;lt;Connector&amp;gt;元素接收到的客户请求.由org.apahce.catalina.Engine接口定义.&lt;/p&gt;
&lt;p&gt;&amp;lt;Engine name=&amp;#8221;Catalina&amp;#8221; defaultHost=&amp;#8221;localhost&amp;#8221; debug=&amp;#8221;0&amp;#8243;&amp;gt;&lt;/p&gt;
&lt;p&gt;1&amp;gt;className指定实现Engine接口的类,默认值为StandardEngine&lt;br /&gt;
2&amp;gt;defaultHost指定处理客户的默认主机名,在&amp;lt;Engine&amp;gt;中的&amp;lt;Host&amp;gt;子元素中必须定义这一主机&lt;br /&gt;
3&amp;gt;name定义Engine的名字&lt;/p&gt;
&lt;p&gt;在&amp;lt;Engine&amp;gt;可以包含如下元素&amp;lt;Logger&amp;gt;, &amp;lt;Realm&amp;gt;, &amp;lt;Value&amp;gt;, &amp;lt;Host&amp;gt;&lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p&gt;&amp;lt;Host&amp;gt;元素&lt;br /&gt;
它由Host接口定义.一个Engine元素可以包含多个&amp;lt;Host&amp;gt;元素.每个&amp;lt;Host&amp;gt;的元素定义了一个虚拟主机.它包含了一个或多个Web应用.&lt;/p&gt;
&lt;p&gt;&amp;lt;Host name=&amp;#8221;localhost&amp;#8221; debug=&amp;#8221;0&amp;#8243; appBase=&amp;#8221;webapps&amp;#8221; unpackWARs=&amp;#8221;true&amp;#8221; autoDeploy=&amp;#8221;true&amp;#8221;&amp;gt;&lt;/p&gt;
&lt;p&gt;1&amp;gt;className指定实现Host接口的类.默认值为StandardHost&lt;br /&gt;
2&amp;gt;appBase指定虚拟主机的目录,可以指定绝对目录,也可以指定相对于&amp;lt;CATALINA_HOME&amp;gt;的相对目录.如果没有此项,默认为&amp;lt;CATALINA_HOME&amp;gt;/webapps&lt;br /&gt;
3&amp;gt;autoDeploy如果此项设为true,表示Tomcat服务处于运行状态时,能够监测appBase下的文件,如果有新有web应用加入进来,会自运发布这个WEB应用&lt;br /&gt;
4&amp;gt;unpackWARs如果此项设置为true,表示把WEB应用的WAR文件先展开为开放目录结构后再运行.如果设为false将直接运行为WAR文件&lt;br /&gt;
5&amp;gt;alias指定主机别名,可以指定多个别名&lt;br /&gt;
6&amp;gt;deployOnStartup如果此项设为true,表示Tomcat服务器启动时会自动发布appBase目录下所有的Web应用.如果Web应用中的server.xml没有相应的&amp;lt;Context&amp;gt;元素,将采用Tomcat默认的Context&lt;br /&gt;
7&amp;gt;name定义虚拟主机的名字&lt;/p&gt;
&lt;p&gt;在&amp;lt;Host&amp;gt;元素中可以包含如下子元素&lt;br /&gt;
&amp;lt;Logger&amp;gt;, &amp;lt;Realm&amp;gt;, &amp;lt;Value&amp;gt;, &amp;lt;Context&amp;gt;&lt;br /&gt;
&amp;lt;Context&amp;gt;元素&lt;br /&gt;
它由Context接口定义.是使用最频繁的元素.每个&amp;lt;Context元素代表了运行在虚拟主机上的单个Web应用.一个&amp;lt;Host&amp;gt;可以包含多个&amp;lt;Context&amp;gt;元素.每个web应用有唯一&lt;br /&gt;
的一个相对应的Context代表web应用自身.servlet容器为第一个web应用创建一个&lt;br /&gt;
ServletContext对象.&lt;/p&gt;
&lt;p&gt;&amp;lt;Context path=&amp;#8221;/sample&amp;#8221; docBase=&amp;#8221;sample&amp;#8221; debug=&amp;#8221;0&amp;#8243; reloadbale=&amp;#8221;true&amp;#8221;&amp;gt;&lt;/p&gt;
&lt;p&gt;1&amp;gt;className指定实现Context的类,默认为StandardContext类&lt;br /&gt;
2&amp;gt;path指定访问Web应用的URL入口,注意/myweb,而不是myweb了事&lt;br /&gt;
3&amp;gt;reloadable如果这个属性设为true, Tomcat服务器在运行状态下会监视在WEB-INF/classes和Web-INF/lib目录CLASS文件的改运.如果监视到有class文件被更新,服务器自重新加载Web应用&lt;br /&gt;
3&amp;gt;cookies指定是否通过Cookies来支持Session,默认值为true&lt;br /&gt;
4&amp;gt;useNaming指定是否支持JNDI,默认值为了true&lt;br /&gt;
在&amp;lt;Context&amp;gt;元素中可以包含如下元素&lt;br /&gt;
&amp;lt;Logger&amp;gt;, &amp;lt;Realm&amp;gt;, &amp;lt;Resource&amp;gt;, &amp;lt;ResourceParams&amp;gt;&lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p&gt;Connector元素&lt;br /&gt;
由Connector接口定义.&amp;lt;Connector&amp;gt;元素代表与客户程序实际交互的给件,它负责接收客户请求,以及向客户返回响应结果.&lt;/p&gt;
&lt;p&gt;&amp;lt;Connector port=&amp;#8221;8080&amp;#8243; maxThread=&amp;#8221;50&amp;#8243; minSpareThreads=&amp;#8221;25&amp;#8243; maxSpareThread=&amp;#8221;75&amp;#8243; enableLookups=&amp;#8221;false&amp;#8221; redirectPort=&amp;#8221;8443&amp;#8243; acceptCount=&amp;#8221;100&amp;#8243; debug=&amp;#8221;0&amp;#8243; connectionTimeout=&amp;#8221;20000&amp;#8243; disableUploadTimeout=&amp;#8221;true&amp;#8221; /&amp;gt;&lt;/p&gt;
&lt;p&gt;&amp;lt;Connection port=&amp;#8221;8009&amp;#8243; enableLookups=&amp;#8221;false&amp;#8221; redirectPort=&amp;#8221;8443&amp;#8243; debug=&amp;#8221;0&amp;#8243; protocol=&amp;#8221;AJP/1.3&amp;#8243; /&amp;gt;&lt;br /&gt;
第一个Connector元素定义了一个HTTP Connector,它通过8080端口接收HTTP请求;第二个Connector元素定义了一个JD Connector,它通过8009端口接收由其它服务器转发过来的请求.&lt;/p&gt;
&lt;p&gt;Connector元素共用属性&lt;br /&gt;
1&amp;gt;className指定实现Connector接口的类&lt;br /&gt;
2&amp;gt;enableLookups如果设为true,表示支持域名解析,可以把IP地址解析为主机名.WEB应用中调用request.getRemoteHost方法返回客户机主机名.默认值为true&lt;br /&gt;
3&amp;gt;redirectPort指定转发端口.如果当前端口只支持non-SSL请求,在需要安全通信的场命,将把客户请求转发至SSL的redirectPort端口&lt;br /&gt;
HttpConnector元素的属性&lt;br /&gt;
1&amp;gt;className实现Connector的类&lt;br /&gt;
2&amp;gt;port设定Tcp/IP端口,默认值为8080,如果把8080改成80,则只要输入&lt;a href=&quot;http://localhost/&quot;&gt;&lt;span style=&quot;text-decoration: underline;&quot;&gt;&lt;span style=&quot;color: #0000ff;&quot;&gt;http://localhost&lt;/span&gt;&lt;/span&gt;&lt;/a&gt;即可&lt;br /&gt;
因为TCP/IP的默认端口是80&lt;br /&gt;
3&amp;gt;address如果服务器有二个以上ip地址,此属性可以设定端口监听的ip地址.默认情况下,端口会监听服务器上所有的ip地址&lt;br /&gt;
4&amp;gt;bufferSize设定由端口创建的输入流的缓存大小.默认值为2048byte&lt;br /&gt;
5&amp;gt;protocol设定Http协议,默认值为HTTP/1.1&lt;br /&gt;
6&amp;gt;maxThreads设定在监听端口的线程的最大数目,这个值也决定了服务器可以同时响应客户请求的最大数目.默认值为200&lt;br /&gt;
7&amp;gt;acceptCount设定在监听端口队列的最大客户请求数量,默认值为10.如果队列已满,客户必须等待.&lt;br /&gt;
8&amp;gt;connectionTimeout定义建立客户连接超时的时间.如果为-1,表示不限制建立客户连接的时间&lt;br /&gt;
JkConnector的属性&lt;br /&gt;
1&amp;gt;className实现Connector的类&lt;br /&gt;
2&amp;gt;port设定AJP端口号&lt;br /&gt;
3&amp;gt;protocol必须设定为AJP/1.3&lt;br /&gt;
注:*************************&lt;br /&gt;
Tomcat5.0和Tomcat5.5里的server.xml文件配置是不同的。因为Tomcat5.5的context上下文配置被提取到server.xml文件外，独立配置，需要使用ResourceLink元素指定他。下面就是一个配置DEMO：&lt;/p&gt;
&lt;h5&gt;&lt;span style=&quot;font-size: 8pt;&quot;&gt; &lt;/span&gt;&lt;/h5&gt;
&lt;/div&gt;
&lt;h5&gt;本示例的项目应用名为stu，也就是容器名。&lt;/h5&gt;
&lt;h5&gt;1.配置stu/WEB-INF/web.xml文件&lt;/h5&gt;
&lt;h5&gt;加入下面代码：&lt;/h5&gt;
&lt;h5&gt;&amp;lt;!&amp;#8211; 定义资源&amp;#8211;&amp;gt;&lt;/h5&gt;
&lt;h5&gt;&amp;lt;resource-ref&amp;gt;&lt;/h5&gt;
&lt;h5&gt;&amp;lt;!&amp;#8211; 描述&amp;#8211;&amp;gt; &amp;lt;description&amp;gt; database:student JNDI &amp;lt;/description&amp;gt;&lt;/h5&gt;
&lt;h5&gt;&amp;lt;!&amp;#8211; 必要元素，包含应用组件获取资源的唯一名&amp;#8211;&amp;gt;&lt;/h5&gt;
&lt;h5&gt;&amp;lt;res-ref-name&amp;gt; jdbc/stu &amp;lt;/res-ref-name&amp;gt;&lt;/h5&gt;
&lt;h5&gt;&amp;lt;!&amp;#8211;资源类型，对于数据源则是javax.sql.DataSource&amp;#8211;&amp;gt;&lt;/h5&gt;
&lt;h5&gt;&amp;lt;res-type&amp;gt; javax.sql.DataSource &amp;lt;/res-type&amp;gt;&lt;/h5&gt;
&lt;h5&gt;&amp;lt;!&amp;#8211;有2个可选值Container或Application&amp;#8211;&amp;gt;&lt;/h5&gt;
&lt;h5&gt;&amp;lt;res-auth&amp;gt; Container &amp;lt;/res-auth&amp;gt;&lt;/h5&gt;
&lt;h5&gt;&amp;lt;!&amp;#8211;可选&amp;#8211;&amp;gt;&lt;/h5&gt;
&lt;h5&gt;&amp;lt;res-sharing-scope&amp;gt; Shareable &amp;lt;/res-sharing-scope&amp;gt;&lt;/h5&gt;
&lt;h5&gt;&amp;lt;/resource-ref&amp;gt;&lt;/h5&gt;
&lt;p&gt;附加一个server.xml的项目实例 下载&lt;a href=&quot;http://www.qbencao.com/wordpress/upload/server.xml&quot;&gt;server.xml&lt;/a&gt;
&lt;ul class=&quot;related_post&quot;&gt;
&lt;li&gt;&lt;a href=&quot;http://www.qbencao.com/2008/08/20/tomcat-catalina-200.html&quot; title=&quot;分析 Tomcat catalina.bat 脚本&quot;&gt;分析 Tomcat catalina.bat 脚本&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://www.qbencao.com/2008/08/19/tomcat-startup-199.html&quot; title=&quot;分析 Tomcat startup.bat 启动脚本&quot;&gt;分析 Tomcat startup.bat 启动脚本&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;&lt;br /&gt;&lt;!-- Feedsky ad --&gt;&lt;a href=&quot;http://feed.feedsky.com/~cpm/c/qbencao/946f9f2b576fa80a44e6b3b74cbd94e5&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~cpm/qbencao/946f9f2b576fa80a44e6b3b74cbd94e5/s.gif&quot; border=&quot;0&quot; style=&quot;margin-top:5px;&quot; /&gt;&lt;/a&gt;&lt;!-- /Feedsky ad --&gt;&lt;br /&gt;&lt;!-- Feedsky flare --&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/qbencao?a=d3f88b8a66633108a4522a970b978738&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/qbencao?i=d3f88b8a66633108a4522a970b978738&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/qbencao?a=8d96135090e5ada278214b797e63c9d0&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/qbencao?i=8d96135090e5ada278214b797e63c9d0&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/qbencao?a=93e33e492f6c561d46f71a573962c9fb&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/qbencao?i=93e33e492f6c561d46f71a573962c9fb&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/qbencao?a=cb7c9bb464720b3777602dd8e5abc787&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/qbencao?i=cb7c9bb464720b3777602dd8e5abc787&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/qbencao?a=6214b3d79de2929d8c94121557defde1&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/qbencao?i=6214b3d79de2929d8c94121557defde1&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/qbencao?a=c5bf5819629b7ebcb9759ffd61f9e74e&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/qbencao?i=c5bf5819629b7ebcb9759ffd61f9e74e&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/qbencao?a=93910438cf2f01a024ca32212074a163&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/qbencao?i=93910438cf2f01a024ca32212074a163&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/qbencao?a=9aa07f35d36a33b2255d347df206ea98&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/qbencao?i=9aa07f35d36a33b2255d347df206ea98&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;!-- /Feedsky flare --&gt;</content:encoded><wfw:commentRss>http://www.qbencao.com/2008/12/03/tomcat-serverxml-ntextxml-281.html/feed</wfw:commentRss><description> &amp;#60;Server&amp;#62;元素
它代表整个容器,是Tomcat实例的顶层元素.由org.apache.catalina.Server接口来定义.它包含一个&amp;#60;Service&amp;#62;元素.并且它不能做为任何元素的子元素.
&amp;#60;Server port=&amp;#8221;8005&amp;#8243; shutdown=&amp;#8221;SHUTDOWN&amp;#8221; debug=&amp;#8221;0&amp;#8243;&amp;#62;
1&amp;#62;className指定实...&lt;br /&gt;&lt;!-- Feedsky ad --&gt;&lt;a href=&quot;http://feed.feedsky.com/~cpm/c/qbencao/946f9f2b576fa80a44e6b3b74cbd94e5&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~cpm/qbencao/946f9f2b576fa80a44e6b3b74cbd94e5/s.gif&quot; border=&quot;0&quot; style=&quot;margin-top:5px;&quot; /&gt;&lt;/a&gt;&lt;!-- /Feedsky ad --&gt;&lt;br /&gt;&lt;!-- Feedsky flare --&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/qbencao?a=d3f88b8a66633108a4522a970b978738&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/qbencao?i=d3f88b8a66633108a4522a970b978738&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/qbencao?a=8d96135090e5ada278214b797e63c9d0&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/qbencao?i=8d96135090e5ada278214b797e63c9d0&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/qbencao?a=93e33e492f6c561d46f71a573962c9fb&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/qbencao?i=93e33e492f6c561d46f71a573962c9fb&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/qbencao?a=cb7c9bb464720b3777602dd8e5abc787&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/qbencao?i=cb7c9bb464720b3777602dd8e5abc787&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/qbencao?a=6214b3d79de2929d8c94121557defde1&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/qbencao?i=6214b3d79de2929d8c94121557defde1&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/qbencao?a=c5bf5819629b7ebcb9759ffd61f9e74e&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/qbencao?i=c5bf5819629b7ebcb9759ffd61f9e74e&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/qbencao?a=93910438cf2f01a024ca32212074a163&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/qbencao?i=93910438cf2f01a024ca32212074a163&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/qbencao?a=9aa07f35d36a33b2255d347df206ea98&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/qbencao?i=9aa07f35d36a33b2255d347df206ea98&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;!-- /Feedsky flare --&gt;</description><category>Java</category><category>server.xml</category><category>tomcat</category><pubDate>Wed, 03 Dec 2008 17:15:07 +0800</pubDate><author>阿超</author><comments>http://www.qbencao.com/2008/12/03/tomcat-serverxml-ntextxml-281.html#comments</comments><guid isPermaLink="false">http://www.qbencao.com/?p=281</guid><dc:creator>阿超</dc:creator><fs:srclink>http://www.qbencao.com/2008/12/03/tomcat-serverxml-ntextxml-281.html</fs:srclink><fs:srcfeed>http://www.qbencao.com/feed</fs:srcfeed><fs:itemid>feedsky/qbencao/~6900889/158192977/5008872</fs:itemid></item><item><title>hibernate annotations初体验</title><link>http://item.feedsky.com/~feedsky/qbencao/~6900889/158192978/5008872/1/item.html</link><content:encoded>&lt;p&gt;    Hibernate3.2版本与以前的2.x相比，最令人激动的特征是加入了JDK5.0的Annotation支持。一直是听说感觉很神气,今天有时间自己也来试一把,Hibernate Annotation 中文文档已经由满江红翻译团队翻译完成，你可以到这里下载：&lt;a href=&quot;http://www.hibernate.org/hib_docs/annotations/reference/zh_cn/pdf/hibernate_annotations.pdf&quot;&gt;hibernate_annotations.pdf&lt;br /&gt;
&lt;/a&gt;   Hibernate annotation可以减轻我们每一次都需要配置XXX.hbm.xml,可以减轻dba的工作量，使程序从一个数据库移植到另一个数据库更轻松，这些工作都交于hibernate内部自动维护,要想使用Annotation这个功能需要以下包支持:ejb-persistence.jar,hibernate-annotations.jar,hibernate-commons-annotatians.jar,log4j.jar,slf4j-log4j12-1.5.2.jar,slf4j-api-1.5.2.jar 都加到classpath中去.&lt;/p&gt;
&lt;p&gt;   然后建一个hibernate.cfg.xml文件 从别的项目中copy过来就可以了 内容和以前的没有什么区别,以下是我的文件内容&lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p&gt;&amp;lt;hibernate-configuration&amp;gt;&lt;br /&gt;
&amp;lt;session-factory&amp;gt;&lt;br /&gt;
 &amp;lt;property name=&amp;#8221;connection.username&amp;#8221;&amp;gt;sunxc&amp;lt;/property&amp;gt;&lt;br /&gt;
 &amp;lt;property name=&amp;#8221;connection.password&amp;#8221;&amp;gt;sunxc&amp;lt;/property&amp;gt;&lt;br /&gt;
 &amp;lt;property name=&amp;#8221;connection.url&amp;#8221;&amp;gt;jdbc:oracle:thin:@127.0.0.1:1521:sunxc&amp;lt;/property&amp;gt;&lt;br /&gt;
 &amp;lt;property name=&amp;#8221;hibernate.dialect&amp;#8221;&amp;gt;org.hibernate.dialect.Oracle8iDialect&amp;lt;/property&amp;gt;&lt;br /&gt;
 &amp;lt;property name=&amp;#8221;connection.driver_class&amp;#8221;&amp;gt;oracle.jdbc.driver.OracleDriver&amp;lt;/property&amp;gt;&lt;br /&gt;
 &amp;lt;property name=&amp;#8221;show_sql&amp;#8221;&amp;gt;true&amp;lt;/property&amp;gt;&lt;br /&gt;
    &amp;lt;mapping class=&amp;#8221;com.test.domain.Student&amp;#8221; /&amp;gt;&lt;br /&gt;
    &amp;lt;mapping class=&amp;#8221;com.test.domain.Departent&amp;#8221; /&amp;gt;&lt;br /&gt;
&amp;lt;/session-factory&amp;gt;&lt;br /&gt;
&amp;lt;/hibernate-configuration&amp;gt;&lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p&gt;然后建立一个HibernateUtil的类 这个类是用来得到SessionFactory的工具类&lt;/p&gt;
&lt;p&gt;import org.hibernate.HibernateException;&lt;br /&gt;
import org.hibernate.Session;&lt;br /&gt;
import org.hibernate.SessionFactory;&lt;br /&gt;
import org.hibernate.cfg.AnnotationConfiguration;&lt;br /&gt;
import org.hibernate.cfg.Configuration;&lt;/p&gt;
&lt;p&gt;public class HibernateUtil {&lt;/p&gt;
&lt;p&gt; private static  SessionFactory sessionFactory;&lt;br /&gt;
 &lt;br /&gt;
 static{&lt;br /&gt;
  try {&lt;br /&gt;
   sessionFactory = new AnnotationConfiguration()&lt;br /&gt;
         .configure()&lt;br /&gt;
         .buildSessionFactory();&lt;/p&gt;
&lt;p&gt;  } catch (HibernateException e) {&lt;br /&gt;
   e.printStackTrace();&lt;br /&gt;
  }&lt;br /&gt;
 }&lt;br /&gt;
 &lt;br /&gt;
 public static Session getSession(){&lt;br /&gt;
  return sessionFactory.openSession();&lt;br /&gt;
 }&lt;br /&gt;
}&lt;/p&gt;
&lt;p&gt;这里不同的是使用了 AnnotationConfiguration创 没有别的区别了&lt;/p&gt;
&lt;p&gt;就是这么简单&lt;/p&gt;
&lt;p&gt;然后在实体类中加上@Entity表示该POJO对象是实体类&lt;/p&gt;
&lt;p&gt;@Entity  //表示该POJO对象是实体类&lt;br /&gt;
public class Student {&lt;/p&gt;
&lt;p&gt; @Id  //表示主建&lt;br /&gt;
 private Long id;&lt;br /&gt;
 private String name;&lt;/p&gt;
&lt;p&gt; public Long getId() {&lt;br /&gt;
  return id;&lt;br /&gt;
 }&lt;br /&gt;
 public void setId(Long id) {&lt;br /&gt;
  this.id = id;&lt;br /&gt;
 }&lt;br /&gt;
 public String getName() {&lt;br /&gt;
  return name;&lt;br /&gt;
 }&lt;br /&gt;
 public void setName(String name) {&lt;br /&gt;
  this.name = name;&lt;br /&gt;
 }&lt;br /&gt;
}&lt;/p&gt;
&lt;p&gt;以上就是最基本的配置 马上建立一个Test测试下吧&lt;/p&gt;
&lt;p&gt;这种方式很灵活的比写hbm文件的优先级要高 还需要在以后的学习中继续深入研究啊:)
&lt;ul class=&quot;related_post&quot;&gt;
&lt;li&gt;&lt;a href=&quot;http://www.qbencao.com/2008/10/20/struts2-xmlload-order-227.html&quot; title=&quot;struts2加载插件的顺序&quot;&gt;struts2加载插件的顺序&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://www.qbencao.com/2008/10/19/struts2-al-225.html&quot; title=&quot;Struts2 总结 - [Struts2]&quot;&gt;Struts2 总结 - [Struts2]&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://www.qbencao.com/2008/10/14/struts-pd-220.html&quot; title=&quot;免费迷你书下载：深入浅出Struts 2&quot;&gt;免费迷你书下载：深入浅出Struts 2&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://www.qbencao.com/2008/08/26/hibernate-fetch-204.html&quot; title=&quot;Hibernate的Fetch &quot;&gt;Hibernate的Fetch &lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://www.qbencao.com/2008/08/25/tapestry-node-one-202.html&quot; title=&quot;Tapestry学习笔记&quot;&gt;Tapestry学习笔记&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://www.qbencao.com/2008/08/20/tomcat-catalina-200.html&quot; title=&quot;分析 Tomcat catalina.bat 脚本&quot;&gt;分析 Tomcat catalina.bat 脚本&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://www.qbencao.com/2008/08/19/tomcat-startup-199.html&quot; title=&quot;分析 Tomcat startup.bat 启动脚本&quot;&gt;分析 Tomcat startup.bat 启动脚本&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://www.qbencao.com/2008/08/07/dom4j-197.html&quot; title=&quot;Dom4j的使用(全而好的文章)&amp;#8211;转载&quot;&gt;Dom4j的使用(全而好的文章)&amp;#8211;转载&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;&lt;br /&gt;&lt;!-- Feedsky ad --&gt;&lt;a href=&quot;http://feed.feedsky.com/~cpm/c/qbencao/af872aae2e607ff501c8e107f0a383c3&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~cpm/qbencao/af872aae2e607ff501c8e107f0a383c3/s.gif&quot; border=&quot;0&quot; style=&quot;margin-top:5px;&quot; /&gt;&lt;/a&gt;&lt;!-- /Feedsky ad --&gt;&lt;br /&gt;&lt;!-- Feedsky flare --&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/qbencao?a=e74e8a4b34bd10ef1f979fa9d464b36f&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/qbencao?i=e74e8a4b34bd10ef1f979fa9d464b36f&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/qbencao?a=d12c3935e66c6e6ed58d2470d0696360&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/qbencao?i=d12c3935e66c6e6ed58d2470d0696360&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/qbencao?a=071e2344711ac7e5ed5862b6f6c97721&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/qbencao?i=071e2344711ac7e5ed5862b6f6c97721&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/qbencao?a=cfdf71233abe5fbd60b00216f3967a31&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/qbencao?i=cfdf71233abe5fbd60b00216f3967a31&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/qbencao?a=b2d46c0ac1019d3b61286fe2f1470979&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/qbencao?i=b2d46c0ac1019d3b61286fe2f1470979&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/qbencao?a=8e5d54a81610260682ad97c818af2270&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/qbencao?i=8e5d54a81610260682ad97c818af2270&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/qbencao?a=d36deda6aff5e9bfa28cbc7d6375e2ed&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/qbencao?i=d36deda6aff5e9bfa28cbc7d6375e2ed&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/qbencao?a=c54e34aad287e8c40eef1bad7e890176&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/qbencao?i=c54e34aad287e8c40eef1bad7e890176&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;!-- /Feedsky flare --&gt;</content:encoded><wfw:commentRss>http://www.qbencao.com/2008/12/02/hibernate-annotations-use-278.html/feed</wfw:commentRss><description>    Hibernate3.2版本与以前的2.x相比，最令人激动的特征是加入了JDK5.0的Annotation支持。一直是听说感觉很神气,今天有时间自己也来试一把,Hibernate Annotation 中文文档已经由满江红翻译团队翻译完成，你可以到这里下载：hibernate_annotations.pdf
   Hibernate an...&lt;br /&gt;&lt;!-- Feedsky ad --&gt;&lt;a href=&quot;http://feed.feedsky.com/~cpm/c/qbencao/af872aae2e607ff501c8e107f0a383c3&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~cpm/qbencao/af872aae2e607ff501c8e107f0a383c3/s.gif&quot; border=&quot;0&quot; style=&quot;margin-top:5px;&quot; /&gt;&lt;/a&gt;&lt;!-- /Feedsky ad --&gt;&lt;br /&gt;&lt;!-- Feedsky flare --&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/qbencao?a=e74e8a4b34bd10ef1f979fa9d464b36f&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/qbencao?i=e74e8a4b34bd10ef1f979fa9d464b36f&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/qbencao?a=d12c3935e66c6e6ed58d2470d0696360&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/qbencao?i=d12c3935e66c6e6ed58d2470d0696360&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/qbencao?a=071e2344711ac7e5ed5862b6f6c97721&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/qbencao?i=071e2344711ac7e5ed5862b6f6c97721&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/qbencao?a=cfdf71233abe5fbd60b00216f3967a31&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/qbencao?i=cfdf71233abe5fbd60b00216f3967a31&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/qbencao?a=b2d46c0ac1019d3b61286fe2f1470979&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/qbencao?i=b2d46c0ac1019d3b61286fe2f1470979&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/qbencao?a=8e5d54a81610260682ad97c818af2270&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/qbencao?i=8e5d54a81610260682ad97c818af2270&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/qbencao?a=d36deda6aff5e9bfa28cbc7d6375e2ed&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/qbencao?i=d36deda6aff5e9bfa28cbc7d6375e2ed&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/qbencao?a=c54e34aad287e8c40eef1bad7e890176&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/qbencao?i=c54e34aad287e8c40eef1bad7e890176&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;!-- /Feedsky flare --&gt;</description><category>hibernate annotations</category><category>编程开发</category><category>Java</category><category>java</category><pubDate>Tue, 02 Dec 2008 14:19:47 +0800</pubDate><author>阿超</author><comments>http://www.qbencao.com/2008/12/02/hibernate-annotations-use-278.html#comments</comments><guid isPermaLink="false">http://www.qbencao.com/?p=278</guid><dc:creator>阿超</dc:creator><fs:srclink>http://www.qbencao.com/2008/12/02/hibernate-annotations-use-278.html</fs:srclink><fs:srcfeed>http://www.qbencao.com/feed</fs:srcfeed><fs:itemid>feedsky/qbencao/~6900889/158192978/5008872</fs:itemid></item><item><title>WordPress添加文章被阅读次数插件</title><link>http://item.feedsky.com/~feedsky/qbencao/~6900889/158192979/5008872/1/item.html</link><content:encoded>&lt;p&gt;发表的文章只有回复数显示，谁都知道很多人是潜水的，看文章从来不回复，那么我想知道有多少人看过我的文章怎么办呢？ WordPress自身没有这个功能，只好借助于一款强大的插件——&lt;a class=&quot;external&quot; href=&quot;http://www.lesterchan.net/portfolio/programming.php&quot;&gt;&lt;span style=&quot;text-decoration: underline;&quot;&gt;&lt;span style=&quot;color: #0000ff;&quot;&gt;PostViews&lt;/span&gt;&lt;/span&gt;&lt;/a&gt;，目前最新的版本是1.10，可以在&lt;a class=&quot;external&quot; href=&quot;http://www.lesterchan.net/portfolio/programming.php&quot;&gt;&lt;span style=&quot;text-decoration: underline;&quot;&gt;&lt;span style=&quot;color: #0000ff;&quot;&gt;这里&lt;/span&gt;&lt;/span&gt;&lt;/a&gt;下载到。&lt;/p&gt;
&lt;p&gt;跟其他的所有插件一样，只需要将解压后的文件夹整个上传至/wp-content/plugins/下面，然后再将其激活就算安装成功。&lt;/p&gt;
&lt;p&gt;使用方法也很简单，在你想让它显示的地方（一般是在首页的文章标题下面或是单篇文章页面的文章标题下面）添加一行代码&lt;/p&gt;
&lt;div class=&quot;syntax_hilite&quot;&gt;
&lt;div id=&quot;php-1&quot;&gt;
&lt;div class=&quot;php&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #000000;&quot;&gt;&amp;lt;?php&lt;/span&gt; &lt;span style=&quot;color: #616100;&quot;&gt;if&lt;/span&gt;&lt;span style=&quot;font-weight: bold; color: #006600;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #000066;&quot;&gt;function_exists&lt;/span&gt;&lt;span style=&quot;font-weight: bold; color: #006600;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;#8216;the_views&amp;#8217;&lt;/span&gt;&lt;span style=&quot;font-weight: bold; color: #006600;&quot;&gt;)&lt;/span&gt;&lt;span style=&quot;font-weight: bold; color: #006600;&quot;&gt;)&lt;/span&gt; &lt;span style=&quot;font-weight: bold; color: #006600;&quot;&gt;{&lt;/span&gt; the_views&lt;span style=&quot;font-weight: bold; color: #006600;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;font-weight: bold; color: #006600;&quot;&gt;)&lt;/span&gt;; &lt;span style=&quot;font-weight: bold; color: #006600;&quot;&gt;}&lt;/span&gt; &lt;span style=&quot;font-weight: bold; color: #000000;&quot;&gt;?&amp;gt;&lt;/span&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p&gt;不过要保证在这行代码之后&lt;/p&gt;
&lt;div class=&quot;syntax_hilite&quot;&gt;
&lt;div id=&quot;php-2&quot;&gt;
&lt;div class=&quot;php&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #000000;&quot;&gt;&amp;lt;?php&lt;/span&gt; &lt;span style=&quot;color: #616100;&quot;&gt;while&lt;/span&gt; &lt;span style=&quot;font-weight: bold; color: #006600;&quot;&gt;(&lt;/span&gt;have_posts&lt;span style=&quot;font-weight: bold; color: #006600;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;font-weight: bold; color: #006600;&quot;&gt;)&lt;/span&gt;&lt;span style=&quot;font-weight: bold; color: #006600;&quot;&gt;)&lt;/span&gt; : the_post&lt;span style=&quot;font-weight: bold; color: #006600;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;font-weight: bold; color: #006600;&quot;&gt;)&lt;/span&gt;; &lt;span style=&quot;font-weight: bold; color: #000000;&quot;&gt;?&amp;gt;&lt;/span&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p&gt;可不要小瞧这个插件哟，它能实现的功能可不仅仅显示PostViews，它还可以列出被阅读次数最多的文章和某个分类下被阅读次数最多的文章。具体的实现方法：&lt;/p&gt;
&lt;li&gt;被阅读次数最多的文章
&lt;div class=&quot;syntax_hilite&quot;&gt;
&lt;div id=&quot;php-3&quot;&gt;
&lt;div class=&quot;php&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #000000;&quot;&gt;&amp;lt;?php&lt;/span&gt; &lt;span style=&quot;color: #616100;&quot;&gt;if&lt;/span&gt; &lt;span style=&quot;font-weight: bold; color: #006600;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #000066;&quot;&gt;function_exists&lt;/span&gt;&lt;span style=&quot;font-weight: bold; color: #006600;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;#8216;get_most_viewed&amp;#8217;&lt;/span&gt;&lt;span style=&quot;font-weight: bold; color: #006600;&quot;&gt;)&lt;/span&gt;&lt;span style=&quot;font-weight: bold; color: #006600;&quot;&gt;)&lt;/span&gt;: &lt;span style=&quot;font-weight: bold; color: #000000;&quot;&gt;?&amp;gt;&lt;/span&gt;&lt;br /&gt;
   &lt;span style=&quot;font-weight: bold; color: #000000;&quot;&gt;&amp;lt;?php&lt;/span&gt; get_most_viewed&lt;span style=&quot;font-weight: bold; color: #006600;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;font-weight: bold; color: #006600;&quot;&gt;)&lt;/span&gt;; &lt;span style=&quot;font-weight: bold; color: #000000;&quot;&gt;?&amp;gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-weight: bold; color: #000000;&quot;&gt;&amp;lt;?php&lt;/span&gt; &lt;span style=&quot;color: #616100;&quot;&gt;endif&lt;/span&gt;; &lt;span style=&quot;font-weight: bold; color: #000000;&quot;&gt;?&amp;gt;&lt;/span&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p&gt;第一个值是你想得到的列表的类型是文章？页面？还是两者都有，譬如：&amp;#8217;post&amp;#8217;, &amp;#8216;page&amp;#8217; 或者 &amp;#8216;both&amp;#8217;&lt;br /&gt;
第二个值是你想得到的列表的对象个数&lt;/p&gt;
&lt;p&gt;默认的是这样的：&lt;/p&gt;
&lt;blockquote&gt;&lt;p&gt;get_most_viewed(&amp;#8217;both&amp;#8217;, 10); //获取被阅读次数最多的10篇文章或页面&lt;/p&gt;&lt;/blockquote&gt;
&lt;/li&gt;
&lt;li&gt;某个分类下被阅读次数最多的文章
&lt;div class=&quot;syntax_hilite&quot;&gt;
&lt;div id=&quot;php-4&quot;&gt;
&lt;div class=&quot;php&quot;&gt;&lt;span style=&quot;font-weight: bold; color: #000000;&quot;&gt;&amp;lt;?php&lt;/span&gt; &lt;span style=&quot;color: #616100;&quot;&gt;if&lt;/span&gt; &lt;span style=&quot;font-weight: bold; color: #006600;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #000066;&quot;&gt;function_exists&lt;/span&gt;&lt;span style=&quot;font-weight: bold; color: #006600;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;#8216;get_most_viewed_category&amp;#8217;&lt;/span&gt;&lt;span style=&quot;font-weight: bold; color: #006600;&quot;&gt;)&lt;/span&gt;&lt;span style=&quot;font-weight: bold; color: #006600;&quot;&gt;)&lt;/span&gt;: &lt;span style=&quot;font-weight: bold; color: #000000;&quot;&gt;?&amp;gt;&lt;/span&gt;&lt;br /&gt;
   &lt;span style=&quot;font-weight: bold; color: #000000;&quot;&gt;&amp;lt;?php&lt;/span&gt; get_most_viewed_category&lt;span style=&quot;font-weight: bold; color: #006600;&quot;&gt;(&lt;/span&gt;&lt;span style=&quot;font-weight: bold; color: #006600;&quot;&gt;)&lt;/span&gt;; &lt;span style=&quot;font-weight: bold; color: #000000;&quot;&gt;?&amp;gt;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;font-weight: bold; color: #000000;&quot;&gt;&amp;lt;?php&lt;/span&gt; &lt;span style=&quot;color: #616100;&quot;&gt;endif&lt;/span&gt;; &lt;span style=&quot;font-weight: bold; color: #000000;&quot;&gt;?&amp;gt;&lt;/span&gt;&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p&gt;第一个值是分类目录的ID&lt;br /&gt;
第二个值是列表的类型：&amp;#8217;post&amp;#8217;, &amp;#8216;page&amp;#8217;, &amp;#8216;both&amp;#8217;&lt;br /&gt;
第三个值是列表中对象的个数&lt;/p&gt;
&lt;p&gt;默认是这样的：&lt;/p&gt;
&lt;blockquote&gt;&lt;p&gt;get_most_viewed_category(1, &amp;#8216;both&amp;#8217;, 10); //获取ID为1的目录下面被阅读最多的10篇文章或页面&lt;/p&gt;&lt;/blockquote&gt;
&lt;p&gt;这就是PostViews的全部功能哦，有兴趣的朋友快去试试吧！enjoy!&lt;/li&gt;
&lt;ul class=&quot;related_post&quot;&gt;
&lt;li&gt;&lt;a href=&quot;http://www.qbencao.com/2008/11/27/wordpress-blog-updat-273.html&quot; title=&quot;wordpress 博客整容修改记&quot;&gt;wordpress 博客整容修改记&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://www.qbencao.com/2008/11/27/wordpress-2-65-268.html&quot; title=&quot;垮过WordPress 2.6.4直接发布WordPress 2.6.5 &quot;&gt;垮过WordPress 2.6.4直接发布WordPress 2.6.5 &lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://www.qbencao.com/2008/11/07/wordpress-page-242.html&quot; title=&quot;8个WordPress Page页面管理插件&quot;&gt;8个WordPress Page页面管理插件&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://www.qbencao.com/2008/10/17/wordpress-2-6-2-222.html&quot; title=&quot;wordpress成功升级了 最新版本wordpress2.6.2&quot;&gt;wordpress成功升级了 最新版本wordpress2.6.2&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://www.qbencao.com/2008/06/02/about-websitemaking-172.html&quot; title=&quot;推荐四款网址简化服务&quot;&gt;推荐四款网址简化服务&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;&lt;br /&gt;&lt;!-- Feedsky ad --&gt;&lt;a href=&quot;http://feed.feedsky.com/~cpm/c/qbencao/ec49bd257b5c53fe855ebbd09cd5edc2&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~cpm/qbencao/ec49bd257b5c53fe855ebbd09cd5edc2/s.gif&quot; border=&quot;0&quot; style=&quot;margin-top:5px;&quot; /&gt;&lt;/a&gt;&lt;!-- /Feedsky ad --&gt;&lt;br /&gt;&lt;!-- Feedsky flare --&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/qbencao?a=e7d93ad7993e068292a5fd5757be9426&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/qbencao?i=e7d93ad7993e068292a5fd5757be9426&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/qbencao?a=7e3770e2de2d5e85815953b0bbdd55c4&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/qbencao?i=7e3770e2de2d5e85815953b0bbdd55c4&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/qbencao?a=43fca59505a32b3f6fa17c9765880b9a&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/qbencao?i=43fca59505a32b3f6fa17c9765880b9a&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/qbencao?a=00a01ac584f12d340cbbf70329ed9302&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/qbencao?i=00a01ac584f12d340cbbf70329ed9302&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/qbencao?a=d128398e47851c6c0dd48e20d4b120a2&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/qbencao?i=d128398e47851c6c0dd48e20d4b120a2&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/qbencao?a=904cc53e531aae62008f1f38b5f0aadb&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/qbencao?i=904cc53e531aae62008f1f38b5f0aadb&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/qbencao?a=3f16f600f9649e6aafa45be64b39b0a2&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/qbencao?i=3f16f600f9649e6aafa45be64b39b0a2&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/qbencao?a=7d79fce6bf2ba14afb6074f4d7db321d&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/qbencao?i=7d79fce6bf2ba14afb6074f4d7db321d&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;!-- /Feedsky flare --&gt;</content:encoded><wfw:commentRss>http://www.qbencao.com/2008/12/01/wordpress-post-views-p-276.html/feed</wfw:commentRss><description>发表的文章只有回复数显示，谁都知道很多人是潜水的，看文章从来不回复，那么我想知道有多少人看过我的文章怎么办呢？ WordPress自身没有这个功能，只好借助于一款强大的插件——PostViews，目前最新的版本是1.10，可以在这里下载到。
跟其他的...&lt;br /&gt;&lt;!-- Feedsky ad --&gt;&lt;a href=&quot;http://feed.feedsky.com/~cpm/c/qbencao/ec49bd257b5c53fe855ebbd09cd5edc2&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~cpm/qbencao/ec49bd257b5c53fe855ebbd09cd5edc2/s.gif&quot; border=&quot;0&quot; style=&quot;margin-top:5px;&quot; /&gt;&lt;/a&gt;&lt;!-- /Feedsky ad --&gt;&lt;br /&gt;&lt;!-- Feedsky flare --&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/qbencao?a=e7d93ad7993e068292a5fd5757be9426&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/qbencao?i=e7d93ad7993e068292a5fd5757be9426&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/qbencao?a=7e3770e2de2d5e85815953b0bbdd55c4&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/qbencao?i=7e3770e2de2d5e85815953b0bbdd55c4&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/qbencao?a=43fca59505a32b3f6fa17c9765880b9a&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/qbencao?i=43fca59505a32b3f6fa17c9765880b9a&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/qbencao?a=00a01ac584f12d340cbbf70329ed9302&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/qbencao?i=00a01ac584f12d340cbbf70329ed9302&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/qbencao?a=d128398e47851c6c0dd48e20d4b120a2&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/qbencao?i=d128398e47851c6c0dd48e20d4b120a2&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/qbencao?a=904cc53e531aae62008f1f38b5f0aadb&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/qbencao?i=904cc53e531aae62008f1f38b5f0aadb&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/qbencao?a=3f16f600f9649e6aafa45be64b39b0a2&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/qbencao?i=3f16f600f9649e6aafa45be64b39b0a2&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/qbencao?a=7d79fce6bf2ba14afb6074f4d7db321d&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/qbencao?i=7d79fce6bf2ba14afb6074f4d7db321d&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;!-- /Feedsky flare --&gt;</description><category>wordpress</category><category>家园建设</category><category>插件</category><pubDate>Mon, 01 Dec 2008 11:40:18 +0800</pubDate><author>阿超</author><comments>http://www.qbencao.com/2008/12/01/wordpress-post-views-p-276.html#comments</comments><guid isPermaLink="false">http://www.qbencao.com/?p=276</guid><dc:creator>阿超</dc:creator><fs:srclink>http://www.qbencao.com/2008/12/01/wordpress-post-views-p-276.html</fs:srclink><fs:srcfeed>http://www.qbencao.com/feed</fs:srcfeed><fs:itemid>feedsky/qbencao/~6900889/158192979/5008872</fs:itemid></item><item><title>wordpress 博客整容修改记</title><link>http://item.feedsky.com/~feedsky/qbencao/~6900889/158192980/5008872/1/item.html</link><content:encoded>&lt;p&gt;  用了这个&lt;a href=&quot;http://www.blogohblog.com&quot; target=&quot;_blank&quot;&gt;blueweed &lt;/a&gt;主题有一段时间了, 可是一直在忙 没有时间来修改,这两天有空就动手改一改小的地方,&lt;/p&gt;
&lt;p&gt;今天主要是修改下2级菜单,本以为调用2级菜单很麻烦,后来查了下原来竟然是如此简单&lt;br /&gt;
&amp;lt;?php wp_list_categories(&amp;#8217;orderby=count&amp;amp;title_li=&amp;amp;order=DESC&amp;#8217;); ?&amp;gt;&lt;/p&gt;
&lt;p&gt;这样就直接输出父子几别的了 具体还有一些其他的参数 有需要的朋友&lt;a href=&quot;http://zeuscn.net/archives/2008/03/11/parameters-of-wp_list_categories/&quot; target=&quot;_blank&quot;&gt;看看这里&lt;/a&gt;有很详细的介绍&lt;/p&gt;
&lt;p&gt;主要是用样式来控制 还有一些js代码 .还有很多地方需要改进的 在这里感谢网友&lt;a href=&quot;http://www.eemir3.com/&quot; target=&quot;_blank&quot;&gt;Yacca&lt;/a&gt; 还有一个CSS的老大&lt;/p&gt;
&lt;p&gt;不然我还在苦思冥想呢 呵呵
&lt;ul class=&quot;related_post&quot;&gt;
&lt;li&gt;&lt;a href=&quot;http://www.qbencao.com/2008/12/01/wordpress-post-views-p-276.html&quot; title=&quot;WordPress添加文章被阅读次数插件&quot;&gt;WordPress添加文章被阅读次数插件&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://www.qbencao.com/2008/11/27/wordpress-2-65-268.html&quot; title=&quot;垮过WordPress 2.6.4直接发布WordPress 2.6.5 &quot;&gt;垮过WordPress 2.6.4直接发布WordPress 2.6.5 &lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://www.qbencao.com/2008/11/07/wordpress-page-242.html&quot; title=&quot;8个WordPress Page页面管理插件&quot;&gt;8个WordPress Page页面管理插件&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://www.qbencao.com/2008/10/17/wordpress-2-6-2-222.html&quot; title=&quot;wordpress成功升级了 最新版本wordpress2.6.2&quot;&gt;wordpress成功升级了 最新版本wordpress2.6.2&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://www.qbencao.com/2008/06/02/about-websitemaking-172.html&quot; title=&quot;推荐四款网址简化服务&quot;&gt;推荐四款网址简化服务&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;&lt;br /&gt;&lt;!-- Feedsky ad --&gt;&lt;a href=&quot;http://feed.feedsky.com/~cpm/c/qbencao/56b90edcde05634afb1a083df15ff884&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~cpm/qbencao/56b90edcde05634afb1a083df15ff884/s.gif&quot; border=&quot;0&quot; style=&quot;margin-top:5px;&quot; /&gt;&lt;/a&gt;&lt;!-- /Feedsky ad --&gt;&lt;br /&gt;&lt;!-- Feedsky flare --&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/qbencao?a=6fb03d42f0db0b7aea80921ef834c969&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/qbencao?i=6fb03d42f0db0b7aea80921ef834c969&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/qbencao?a=db173c5016570334dac7e87647965746&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/qbencao?i=db173c5016570334dac7e87647965746&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/qbencao?a=ee481ca1638047109cbce72fd036cbdd&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/qbencao?i=ee481ca1638047109cbce72fd036cbdd&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/qbencao?a=f27e2f8341d9d389c6e00668f8352b21&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/qbencao?i=f27e2f8341d9d389c6e00668f8352b21&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/qbencao?a=4ea353d3f015288d282e6235e79e8d33&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/qbencao?i=4ea353d3f015288d282e6235e79e8d33&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/qbencao?a=a9131fb02b27863584f1872451f9fcc3&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/qbencao?i=a9131fb02b27863584f1872451f9fcc3&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/qbencao?a=81a75f12294ea6fd8d0b18dc6fabde73&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/qbencao?i=81a75f12294ea6fd8d0b18dc6fabde73&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/qbencao?a=d33c748bb89121b8452899fe86731b4f&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/qbencao?i=d33c748bb89121b8452899fe86731b4f&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;!-- /Feedsky flare --&gt;</content:encoded><wfw:commentRss>http://www.qbencao.com/2008/11/27/wordpress-blog-updat-273.html/feed</wfw:commentRss><description>  用了这个blueweed 主题有一段时间了, 可是一直在忙 没有时间来修改,这两天有空就动手改一改小的地方,
今天主要是修改下2级菜单,本以为调用2级菜单很麻烦,后来查了下原来竟然是如此简单
&amp;#60;?php wp_list_categories(&amp;#8217;orderby=count&amp;#38;title_li=&amp;#38;order=DESC...&lt;br /&gt;&lt;!-- Feedsky ad --&gt;&lt;a href=&quot;http://feed.feedsky.com/~cpm/c/qbencao/56b90edcde05634afb1a083df15ff884&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~cpm/qbencao/56b90edcde05634afb1a083df15ff884/s.gif&quot; border=&quot;0&quot; style=&quot;margin-top:5px;&quot; /&gt;&lt;/a&gt;&lt;!-- /Feedsky ad --&gt;&lt;br /&gt;&lt;!-- Feedsky flare --&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/qbencao?a=6fb03d42f0db0b7aea80921ef834c969&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/qbencao?i=6fb03d42f0db0b7aea80921ef834c969&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/qbencao?a=db173c5016570334dac7e87647965746&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/qbencao?i=db173c5016570334dac7e87647965746&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/qbencao?a=ee481ca1638047109cbce72fd036cbdd&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/qbencao?i=ee481ca1638047109cbce72fd036cbdd&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/qbencao?a=f27e2f8341d9d389c6e00668f8352b21&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/qbencao?i=f27e2f8341d9d389c6e00668f8352b21&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/qbencao?a=4ea353d3f015288d282e6235e79e8d33&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/qbencao?i=4ea353d3f015288d282e6235e79e8d33&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/qbencao?a=a9131fb02b27863584f1872451f9fcc3&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/qbencao?i=a9131fb02b27863584f1872451f9fcc3&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/qbencao?a=81a75f12294ea6fd8d0b18dc6fabde73&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/qbencao?i=81a75f12294ea6fd8d0b18dc6fabde73&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/qbencao?a=d33c748bb89121b8452899fe86731b4f&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/qbencao?i=d33c748bb89121b8452899fe86731b4f&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;!-- /Feedsky flare --&gt;</description><category>wordpress</category><category>家园建设</category><category>主题</category><pubDate>Thu, 27 Nov 2008 16:10:36 +0800</pubDate><author>阿超</author><comments>http://www.qbencao.com/2008/11/27/wordpress-blog-updat-273.html#comments</comments><guid isPermaLink="false">http://www.qbencao.com/?p=273</guid><dc:creator>阿超</dc:creator><fs:srclink>http://www.qbencao.com/2008/11/27/wordpress-blog-updat-273.html</fs:srclink><fs:srcfeed>http://www.qbencao.com/feed</fs:srcfeed><fs:itemid>feedsky/qbencao/~6900889/158192980/5008872</fs:itemid></item><item><title>区别不同浏览器IE6，IE7，firefox，CSS hack写法</title><link>http://item.feedsky.com/~feedsky/qbencao/~6900889/158192981/5008872/1/item.html</link><content:encoded>&lt;h3&gt;区别不同浏览器，CSS hack写法：&lt;/h3&gt;
&lt;p&gt; &lt;/p&gt;
&lt;div&gt;区别&lt;span class=&quot;blue&quot;&gt;IE6&lt;/span&gt;与&lt;span class=&quot;orange&quot;&gt;FF&lt;/span&gt;：&lt;/div&gt;
&lt;div&gt;       background:&lt;span class=&quot;orange&quot;&gt;orange&lt;/span&gt;;&lt;span class=&quot;red&quot;&gt;*&lt;/span&gt;background:&lt;span class=&quot;blue&quot;&gt;blue&lt;/span&gt;;&lt;/div&gt;
&lt;p&gt; &lt;/p&gt;
&lt;div&gt;区别&lt;span class=&quot;blue&quot;&gt;IE6&lt;/span&gt;与&lt;span class=&quot;green&quot;&gt;IE7&lt;/span&gt;：&lt;/div&gt;
&lt;div&gt;       background:&lt;span class=&quot;green&quot;&gt;green&lt;/span&gt; &lt;span class=&quot;red&quot;&gt;!important&lt;/span&gt;;background:&lt;span class=&quot;blue&quot;&gt;blue&lt;/span&gt;;&lt;/div&gt;
&lt;p&gt; &lt;/p&gt;
&lt;div&gt;区别&lt;span class=&quot;green&quot;&gt;IE7&lt;/span&gt;与&lt;span class=&quot;orange&quot;&gt;FF&lt;/span&gt;：&lt;/div&gt;
&lt;div&gt;       background:&lt;span class=&quot;orange&quot;&gt;orange&lt;/span&gt;; &lt;span class=&quot;red&quot;&gt;*&lt;/span&gt;background:&lt;span class=&quot;green&quot;&gt;green&lt;/span&gt;;&lt;/div&gt;
&lt;p&gt; &lt;/p&gt;
&lt;div&gt;区别&lt;span class=&quot;orange&quot;&gt;FF&lt;/span&gt;，&lt;span class=&quot;green&quot;&gt;IE7&lt;/span&gt;，&lt;span class=&quot;blue&quot;&gt;IE6&lt;/span&gt;：&lt;/div&gt;
&lt;div&gt;       background:&lt;span class=&quot;orange&quot;&gt;orange&lt;/span&gt;;&lt;span class=&quot;red&quot;&gt;*&lt;/span&gt;background:&lt;span class=&quot;green&quot;&gt;green&lt;/span&gt; &lt;span class=&quot;red&quot;&gt;!important&lt;/span&gt;;*background:&lt;span class=&quot;blue&quot;&gt;blue&lt;/span&gt;;&lt;/div&gt;
&lt;p&gt; &lt;/p&gt;
&lt;div&gt;注：IE都能识别*;标准浏览器(如FF)不能识别*；&lt;/div&gt;
&lt;div&gt;IE6能识别*，但不能识别 !important,&lt;/div&gt;
&lt;div&gt;IE7能识别*，也能识别!important;&lt;/div&gt;
&lt;div&gt;FF不能识别*，但能识别!important;&lt;/div&gt;
&lt;p&gt; &lt;/p&gt;
&lt;table class=&quot;hack&quot; border=&quot;0&quot; cellspacing=&quot;1&quot; cellpadding=&quot;0&quot; width=&quot;400&quot;&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt; &lt;/td&gt;
&lt;td&gt;IE6&lt;/td&gt;
&lt;td&gt;IE7&lt;/td&gt;
&lt;td&gt;FF&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;*&lt;/td&gt;
&lt;td&gt;√&lt;/td&gt;
&lt;td&gt;√&lt;/td&gt;
&lt;td&gt;×&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;!important&lt;/td&gt;
&lt;td&gt;×&lt;/td&gt;
&lt;td&gt;√&lt;/td&gt;
&lt;td&gt;√&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;hr /&gt;另外再补充一个，下划线&amp;#8221;&lt;span class=&quot;red&quot;&gt;_&lt;/span&gt;&amp;#8220;,&lt;br /&gt;
IE6支持下划线，IE7和firefox均不支持下划线。&lt;/p&gt;
&lt;p&gt;于是大家还可以这样来区分&lt;span class=&quot;blue&quot;&gt;IE6&lt;/span&gt;，&lt;span class=&quot;green&quot;&gt;IE7&lt;/span&gt;，&lt;span class=&quot;orange&quot;&gt;firefox&lt;/span&gt;&lt;br /&gt;
: background:&lt;span class=&quot;orange&quot;&gt;orange&lt;/span&gt;;&lt;span class=&quot;red&quot;&gt;*&lt;/span&gt;background:&lt;span class=&quot;green&quot;&gt;green&lt;/span&gt;;&lt;span class=&quot;red&quot;&gt;_&lt;/span&gt;background:&lt;span class=&quot;blue&quot;&gt;blue&lt;/span&gt;;&lt;/p&gt;
&lt;p&gt;注：不管是什么方法，书写的顺序都是firefox的写在前面，IE7的写在中间，IE6的写在最后面。
&lt;ul class=&quot;related_post&quot;&gt;
&lt;li&gt;&lt;a href=&quot;http://www.qbencao.com/2008/05/06/no-more-ie6-background-ficker-138.html&quot; title=&quot;ie6的又一个bug，强制从缓存中读取图片&quot;&gt;ie6的又一个bug，强制从缓存中读取图片&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://www.qbencao.com/2008/04/02/qbencao-meirong-101.html&quot; title=&quot;钱本草博客整容&quot;&gt;钱本草博客整容&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://www.qbencao.com/2008/03/20/ie-firefox-css-study-2-97.html&quot; title=&quot;CSS 兼容要点&quot;&gt;CSS 兼容要点&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://www.qbencao.com/2008/03/20/ie-firefox-css-ok-1-96.html&quot; title=&quot;IE/Firefox CSS兼容问题&quot;&gt;IE/Firefox CSS兼容问题&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://www.qbencao.com/2008/03/19/themes-abnormality-in-firefox-95.html&quot; title=&quot;主题在Firefox下不正常显示&quot;&gt;主题在Firefox下不正常显示&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://www.qbencao.com/2008/10/21/ie7-229.html&quot; title=&quot;IE7复制粘贴时，总出现提示信息的解决办法&quot;&gt;IE7复制粘贴时，总出现提示信息的解决办法&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://www.qbencao.com/2008/05/07/ff-ie-js-136.html&quot; title=&quot;firefox与ie 的javascript区别 &quot;&gt;firefox与ie 的javascript区别 &lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://www.qbencao.com/2008/04/05/css-hack-aggregate-104.html&quot; title=&quot;CSS Hack汇总快查&quot;&gt;CSS Hack汇总快查&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;&lt;br /&gt;&lt;!-- Feedsky ad --&gt;&lt;a href=&quot;http://feed.feedsky.com/~cpm/c/qbencao/03214ae384e70639caf1c48edbefcd1a&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~cpm/qbencao/03214ae384e70639caf1c48edbefcd1a/s.gif&quot; border=&quot;0&quot; style=&quot;margin-top:5px;&quot; /&gt;&lt;/a&gt;&lt;!-- /Feedsky ad --&gt;&lt;br /&gt;&lt;!-- Feedsky flare --&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/qbencao?a=1b14aa9900e8cd79060417565dac02ed&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/qbencao?i=1b14aa9900e8cd79060417565dac02ed&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/qbencao?a=edc810c6e3f20a7036d5bf26f88fb22d&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/qbencao?i=edc810c6e3f20a7036d5bf26f88fb22d&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/qbencao?a=2449e0a3fe2a083e6c68fa3c3d39ce85&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/qbencao?i=2449e0a3fe2a083e6c68fa3c3d39ce85&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/qbencao?a=2f7dab8f3b432a7799b4d445b3bcbe5d&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/qbencao?i=2f7dab8f3b432a7799b4d445b3bcbe5d&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/qbencao?a=2060804c422460d04f1cd77b62308a7b&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/qbencao?i=2060804c422460d04f1cd77b62308a7b&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/qbencao?a=2ff9f53d6f4f94558849bbbd5582278d&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/qbencao?i=2ff9f53d6f4f94558849bbbd5582278d&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/qbencao?a=a45e5c03ce70c0d047a20e1d83da4492&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/qbencao?i=a45e5c03ce70c0d047a20e1d83da4492&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/qbencao?a=5691b94a9e8da9b1304c2742e8a74cb3&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/qbencao?i=5691b94a9e8da9b1304c2742e8a74cb3&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;!-- /Feedsky flare --&gt;</content:encoded><wfw:commentRss>http://www.qbencao.com/2008/11/27/css-hack-ie6-ie7-firefo-270.html/feed</wfw:commentRss><description>区别不同浏览器，CSS hack写法：
 
区别IE6与FF：
       background:orange;*background:blue;
 
区别IE6与IE7：
       background:green !important;background:blue;
 
区别IE7与FF：
       background:orange; *background:green;
 
区别FF，IE7，IE6：
       background:orange;*background:g...&lt;br /&gt;&lt;!-- Feedsky ad --&gt;&lt;a href=&quot;http://feed.feedsky.com/~cpm/c/qbencao/03214ae384e70639caf1c48edbefcd1a&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~cpm/qbencao/03214ae384e70639caf1c48edbefcd1a/s.gif&quot; border=&quot;0&quot; style=&quot;margin-top:5px;&quot; /&gt;&lt;/a&gt;&lt;!-- /Feedsky ad --&gt;&lt;br /&gt;&lt;!-- Feedsky flare --&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/qbencao?a=1b14aa9900e8cd79060417565dac02ed&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/qbencao?i=1b14aa9900e8cd79060417565dac02ed&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/qbencao?a=edc810c6e3f20a7036d5bf26f88fb22d&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/qbencao?i=edc810c6e3f20a7036d5bf26f88fb22d&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/qbencao?a=2449e0a3fe2a083e6c68fa3c3d39ce85&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/qbencao?i=2449e0a3fe2a083e6c68fa3c3d39ce85&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/qbencao?a=2f7dab8f3b432a7799b4d445b3bcbe5d&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/qbencao?i=2f7dab8f3b432a7799b4d445b3bcbe5d&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/qbencao?a=2060804c422460d04f1cd77b62308a7b&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/qbencao?i=2060804c422460d04f1cd77b62308a7b&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/qbencao?a=2ff9f53d6f4f94558849bbbd5582278d&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/qbencao?i=2ff9f53d6f4f94558849bbbd5582278d&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/qbencao?a=a45e5c03ce70c0d047a20e1d83da4492&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/qbencao?i=a45e5c03ce70c0d047a20e1d83da4492&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/qbencao?a=5691b94a9e8da9b1304c2742e8a74cb3&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/qbencao?i=5691b94a9e8da9b1304c2742e8a74cb3&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;!-- /Feedsky flare --&gt;</description><category>ie6</category><category>firefox</category><category>Div&amp;Css</category><category>ie7</category><category>css</category><pubDate>Thu, 27 Nov 2008 15:44:55 +0800</pubDate><author>阿超</author><comments>http://www.qbencao.com/2008/11/27/css-hack-ie6-ie7-firefo-270.html#comments</comments><guid isPermaLink="false">http://www.qbencao.com/?p=270</guid><dc:creator>阿超</dc:creator><fs:srclink>http://www.qbencao.com/2008/11/27/css-hack-ie6-ie7-firefo-270.html</fs:srclink><fs:srcfeed>http://www.qbencao.com/feed</fs:srcfeed><fs:itemid>feedsky/qbencao/~6900889/158192981/5008872</fs:itemid></item><item><title>垮过WordPress 2.6.4直接发布WordPress 2.6.5</title><link>http://item.feedsky.com/~feedsky/qbencao/~6900889/158192982/5008872/1/item.html</link><content:encoded>&lt;p&gt;&lt;a href=&quot;http://wpchina.org/&quot; target=&quot;_blank&quot;&gt;&lt;span style=&quot;text-decoration: underline;&quot;&gt;&lt;span style=&quot;color: #810081;&quot;&gt;WordPress&lt;/span&gt;&lt;/span&gt;&lt;/a&gt; 开发者刚刚发布了 WordPress 2.6.5 版本，由于这是一个紧急升级版本，建议每个用户立即升级到这一版本。&lt;/p&gt;
&lt;p&gt;WordPress 2.6.5 主要解决了一个重要的安全问题，并修复了另外三个bug。&lt;/p&gt;
&lt;p&gt;这个 XSS 安全问题主要影响运行于 Apache 2.x 平台上基于IP的虚拟主机用户。如果你仅仅对这个安全问题感兴趣，你只需要使用 2.6.5 文件包里的 &lt;code&gt;wp-inlcudes/feed.php&lt;/code&gt; 和 &lt;code&gt;wp-includes/version.php&lt;/code&gt; 来覆盖你的旧文件即可。此外，这一版本还修复了另外三个 XSS 相关的 bug。&lt;/p&gt;
&lt;p&gt;WordPress 2.6.4 已经被跳过。语言包无变化，可沿用 WordPress 2.6.2 的语言包。所以我们 WordPress 中文团队没有制作中文包，你只需用&lt;a class=&quot;external&quot; href=&quot;http://wpcn.googlecode.com/files/diff-from-tags_2.6.3-r9870-to-tags_2.6.5-r9870.zip&quot; target=&quot;_blank&quot;&gt;&lt;span style=&quot;text-decoration: underline;&quot;&gt;&lt;span style=&quot;color: #0000ff;&quot;&gt;WordPress 2.6.3 到 2.6.5 的升级补丁&lt;/span&gt;&lt;/span&gt;&lt;/a&gt;更新下即可。&lt;/p&gt;
&lt;p&gt;已在使用 WordPress 2.6.3 的用户只须下载升级补丁，并上传覆盖已有文件即可。
&lt;ul class=&quot;related_post&quot;&gt;
&lt;li&gt;&lt;a href=&quot;http://www.qbencao.com/2008/10/17/wordpress-2-6-2-222.html&quot; title=&quot;wordpress成功升级了 最新版本wordpress2.6.2&quot;&gt;wordpress成功升级了 最新版本wordpress2.6.2&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://www.qbencao.com/2008/12/01/wordpress-post-views-p-276.html&quot; title=&quot;WordPress添加文章被阅读次数插件&quot;&gt;WordPress添加文章被阅读次数插件&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://www.qbencao.com/2008/11/27/wordpress-blog-updat-273.html&quot; title=&quot;wordpress 博客整容修改记&quot;&gt;wordpress 博客整容修改记&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://www.qbencao.com/2008/11/07/wordpress-page-242.html&quot; title=&quot;8个WordPress Page页面管理插件&quot;&gt;8个WordPress Page页面管理插件&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://www.qbencao.com/2008/06/02/about-websitemaking-172.html&quot; title=&quot;推荐四款网址简化服务&quot;&gt;推荐四款网址简化服务&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;&lt;br /&gt;&lt;!-- Feedsky ad --&gt;&lt;a href=&quot;http://feed.feedsky.com/~cpm/c/qbencao/f4792aaaa510b6ad4b42085c8452e83c&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~cpm/qbencao/f4792aaaa510b6ad4b42085c8452e83c/s.gif&quot; border=&quot;0&quot; style=&quot;margin-top:5px;&quot; /&gt;&lt;/a&gt;&lt;!-- /Feedsky ad --&gt;&lt;br /&gt;&lt;!-- Feedsky flare --&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/qbencao?a=525af272eaf46abc2e2e98189248b872&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/qbencao?i=525af272eaf46abc2e2e98189248b872&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/qbencao?a=441060db7ca41e2067c69d832d4f0f87&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/qbencao?i=441060db7ca41e2067c69d832d4f0f87&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/qbencao?a=7f28e1e773c5d3dbcfd22d9bcd1ede20&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/qbencao?i=7f28e1e773c5d3dbcfd22d9bcd1ede20&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/qbencao?a=84e9c4f8636d05e8311affa460a2a9f9&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/qbencao?i=84e9c4f8636d05e8311affa460a2a9f9&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/qbencao?a=2fa26ed5ed84f3b9ec9fea629322393d&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/qbencao?i=2fa26ed5ed84f3b9ec9fea629322393d&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/qbencao?a=032a12c602cf3d3537c095ba3640f8f0&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/qbencao?i=032a12c602cf3d3537c095ba3640f8f0&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/qbencao?a=17b1b8de0eefc10df0bab9dc177ab01d&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/qbencao?i=17b1b8de0eefc10df0bab9dc177ab01d&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/qbencao?a=621a2f0c309d4d497af14c7801d5cea5&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/qbencao?i=621a2f0c309d4d497af14c7801d5cea5&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;!-- /Feedsky flare --&gt;</content:encoded><wfw:commentRss>http://www.qbencao.com/2008/11/27/wordpress-2-65-268.html/feed</wfw:commentRss><description>WordPress 开发者刚刚发布了 WordPress 2.6.5 版本，由于这是一个紧急升级版本，建议每个用户立即升级到这一版本。
WordPress 2.6.5 主要解决了一个重要的安全问题，并修复了另外三个bug。
这个 XSS 安全问题主要影响运行于 Apache 2.x 平台上基于IP的虚拟主机...&lt;br /&gt;&lt;!-- Feedsky ad --&gt;&lt;a href=&quot;http://feed.feedsky.com/~cpm/c/qbencao/f4792aaaa510b6ad4b42085c8452e83c&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~cpm/qbencao/f4792aaaa510b6ad4b42085c8452e83c/s.gif&quot; border=&quot;0&quot; style=&quot;margin-top:5px;&quot; /&gt;&lt;/a&gt;&lt;!-- /Feedsky ad --&gt;&lt;br /&gt;&lt;!-- Feedsky flare --&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/qbencao?a=525af272eaf46abc2e2e98189248b872&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/qbencao?i=525af272eaf46abc2e2e98189248b872&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/qbencao?a=441060db7ca41e2067c69d832d4f0f87&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/qbencao?i=441060db7ca41e2067c69d832d4f0f87&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/qbencao?a=7f28e1e773c5d3dbcfd22d9bcd1ede20&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/qbencao?i=7f28e1e773c5d3dbcfd22d9bcd1ede20&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/qbencao?a=84e9c4f8636d05e8311affa460a2a9f9&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/qbencao?i=84e9c4f8636d05e8311affa460a2a9f9&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/qbencao?a=2fa26ed5ed84f3b9ec9fea629322393d&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/qbencao?i=2fa26ed5ed84f3b9ec9fea629322393d&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/qbencao?a=032a12c602cf3d3537c095ba3640f8f0&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/qbencao?i=032a12c602cf3d3537c095ba3640f8f0&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/qbencao?a=17b1b8de0eefc10df0bab9dc177ab01d&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/qbencao?i=17b1b8de0eefc10df0bab9dc177ab01d&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/qbencao?a=621a2f0c309d4d497af14c7801d5cea5&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/qbencao?i=621a2f0c309d4d497af14c7801d5cea5&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;!-- /Feedsky flare --&gt;</description><category>wordpress</category><category>家园建设</category><category>升级</category><pubDate>Thu, 27 Nov 2008 11:21:27 +0800</pubDate><author>阿超</author><comments>http://www.qbencao.com/2008/11/27/wordpress-2-65-268.html#comments</comments><guid isPermaLink="false">http://www.qbencao.com/?p=268</guid><dc:creator>阿超</dc:creator><fs:srclink>http://www.qbencao.com/2008/11/27/wordpress-2-65-268.html</fs:srclink><fs:srcfeed>http://www.qbencao.com/feed</fs:srcfeed><fs:itemid>feedsky/qbencao/~6900889/158192982/5008872</fs:itemid></item><item><title>struts2中的OGNL</title><link>http://item.feedsky.com/~feedsky/qbencao/~6900889/158192983/5008872/1/item.html</link><content:encoded>&lt;p&gt;Struts2在OGNL基础上的增强&lt;br /&gt;
　　１、值栈(ValueStack)&lt;br /&gt;
　　　　Struts2将OGNL上下文设置为Struts2中的ActionContext(内部使用的仍然是OgnlContext)，并将值栈设为OGNL的根对象。&lt;br /&gt;
　　　　我们知道，OGNL上下文中的根对象可以直接访问，不需要使用任何特殊的“标记”，而引用上下文中的其他对象则需要使用“#”来标记。由于值栈是上下文中的根对象，因此可以直接访问。那么对于值栈中的对象该如何访问呢？Struts2提供了一个特殊的OGNLPropertyAccessor，它可以自动查找栈内的所有对象(从栈顶到栈底)，直接找到一个具有你所查找的属性的对象。也就是说，对于值栈中的任何对象都可以直接访问，而不需要使用“#”。&lt;br /&gt;
　　　　假设值栈中有两个对象：student和employee，两个对象都有name属性，student有学号属性number，而employee有薪水属性salary。employee先入栈，student后入栈，位于栈顶，那么对于表达式name,访问的就是student的name属性，因为student对象位于栈顶；表达式salary，访问的就是employee的salary属性。正如你所见，访问值栈中的对象属性或方法，无须指明对象，也不用“#”，就好像值栈中的对象都是OGNL上下文中的根对象一样。这就是Struts2在OGNL基础上做出的改进。&lt;br /&gt;
　　２、[N]语法&lt;br /&gt;
　　　　如上所述，如果想要访问employee的name属性，应该如何写表达式呢？我们可以使用[N].xxx(N是从0开始的整数)这样的语法来指定从哪一个位置开始向下查找对象的属性，表达式[1].name访问的就是employee对象的name属性。&lt;br /&gt;
　　　　在使用[N].xxx语法时，要注意位置序号的含义，它并不是表示“获取栈中索引为N的对象”，而是截取从位置N开始的部分栈。&lt;br /&gt;
　　３、top关键字&lt;br /&gt;
　　　　top用于获取栈顶的对象，结合[N].xxx语法，我们就可以获取栈中任意位置的对象。&lt;br /&gt;
　　　　如：[0].top,[1].top等&lt;br /&gt;
　　４、访问静态成员&lt;br /&gt;
　　　　除了使用标准的OGNL表达式访问静态字段和静态方法外，Struts2还允许你不指定完整的类名，而是通过“vs”前缀来调用保存在栈中的静态字段和静态方法。&lt;br /&gt;
　　　　@vs@FOO_PROPERTY&lt;br /&gt;
　　　　@vs@someMethod()&lt;br /&gt;
　　　　@vs1@someMethod()&lt;br /&gt;
　　　　vs表示ValueStack，如果只有vs，那么将使用栈顶对象的类；如果在vs后面跟上一个数字，那么将使用栈中指定位置处的对象类。&lt;br /&gt;
　　５、值栈中的Action实例&lt;br /&gt;
　　　　Struts2框架总是把Action实例放在栈顶。因为Action在值栈中，而值栈又是OGNL中的根，所以引用Action的属性可以省略“#”标记，这也是为什么我们在结果页面中可以直接访问Action的属性的原因。&lt;br /&gt;
　　６、Struts2中的命名对象&lt;br /&gt;
　　　　Struts2还提供了一些命名对象，这些对象没有保存在值栈中，而是保存在ActionContext中，因此访问这些对象需要使用“#”标记。这些命名对象都是Map类型。&lt;br /&gt;
　　　parameters&lt;br /&gt;
　　　　用于访问请求参数。如：#parameters['id']或#parameters.id，相当于调用了HttpServletRequest对象的getParameter()方法。&lt;br /&gt;
　　　　注意，parameters本质上是一个使用HttpServletRequest对象中的请求参数构造的Map对象，一量对象被创建(在调用Action实例之前就已经创建好了)，它和HttpServletRequest对象就没有了任何关系。&lt;br /&gt;
　　　request&lt;br /&gt;
　　　　用于访问请求属性。如：#request['user']或#request.user，相当于调用了HttpServletRequest对象的getAttribute()方法。&lt;br /&gt;
　　　session&lt;br /&gt;
　　　　用于访问session属性。如：#session['user']或#session.user，相当于调用了HttpSession对象的getAttribute()方法。&lt;br /&gt;
　　　application&lt;br /&gt;
　　　　用于访问application属性。如：#application['user']或#application.user，相当于调用了ServletContext的getAttribute()方法。&lt;br /&gt;
　　　attr&lt;br /&gt;
　　　　如果PageContext可用，则访问PageContext，否则依次搜索request、session和application对象。
&lt;ul class=&quot;related_post&quot;&gt;
&lt;li&gt;&lt;a href=&quot;http://www.qbencao.com/2008/11/13/ognl-intro-251.html&quot; title=&quot;OGNL简单使用&quot;&gt;OGNL简单使用&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://www.qbencao.com/2008/12/11/struts2-reload-two-metho-285.html&quot; title=&quot;Struts2自动加载,提高Struts2开发生产力&quot;&gt;Struts2自动加载,提高Struts2开发生产力&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://www.qbencao.com/2008/11/13/struts2-tags-iterato-260.html&quot; title=&quot;struts2标签学习&amp;#8211;iterator&quot;&gt;struts2标签学习&amp;#8211;iterator&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://www.qbencao.com/2008/11/13/struts2-tag-use-i-freemarker-258.html&quot; title=&quot;在struts2中使用freemarker&quot;&gt;在struts2中使用freemarker&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://www.qbencao.com/2008/11/12/freemark-example-256.html&quot; title=&quot;Freemarker - 几个比较实用的例子&quot;&gt;Freemarker - 几个比较实用的例子&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://www.qbencao.com/2008/11/12/freemarke-249.html&quot; title=&quot;FreeMarker初学&quot;&gt;FreeMarker初学&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://www.qbencao.com/2008/11/10/struts2-ognl-fuhao-247.html&quot; title=&quot;Struts2 ognl中的#、%和$符号用法说明&quot;&gt;Struts2 ognl中的#、%和$符号用法说明&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://www.qbencao.com/2008/10/20/struts2-xmlload-order-227.html&quot; title=&quot;struts2加载插件的顺序&quot;&gt;struts2加载插件的顺序&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;&lt;br /&gt;&lt;!-- Feedsky ad --&gt;&lt;a href=&quot;http://feed.feedsky.com/~cpm/c/qbencao/4283c9a9e5d12fb7ffe20a7830786dc7&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~cpm/qbencao/4283c9a9e5d12fb7ffe20a7830786dc7/s.gif&quot; border=&quot;0&quot; style=&quot;margin-top:5px;&quot; /&gt;&lt;/a&gt;&lt;!-- /Feedsky ad --&gt;&lt;br /&gt;&lt;!-- Feedsky flare --&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/qbencao?a=e1684805bfb528cffe823052af063bc0&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/qbencao?i=e1684805bfb528cffe823052af063bc0&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/qbencao?a=b85b26112de12707c241f44e5ae19441&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/qbencao?i=b85b26112de12707c241f44e5ae19441&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/qbencao?a=e65aed7e514912a98f7053a32a043997&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/qbencao?i=e65aed7e514912a98f7053a32a043997&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/qbencao?a=e0e8321027f84cdfbe7e157936fd4b04&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/qbencao?i=e0e8321027f84cdfbe7e157936fd4b04&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/qbencao?a=7522bbb39331fa304ff3263e794574e0&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/qbencao?i=7522bbb39331fa304ff3263e794574e0&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/qbencao?a=92c71f150c471c388531541ca98be3af&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/qbencao?i=92c71f150c471c388531541ca98be3af&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/qbencao?a=5902b9152d9c6555482e1a17f2f61d84&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/qbencao?i=5902b9152d9c6555482e1a17f2f61d84&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/qbencao?a=da9aa89e5699ee35683b1f7862a492a4&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/qbencao?i=da9aa89e5699ee35683b1f7862a492a4&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;!-- /Feedsky flare --&gt;</content:encoded><wfw:commentRss>http://www.qbencao.com/2008/11/14/struts2-ognl-us-254.html/feed</wfw:commentRss><description>Struts2在OGNL基础上的增强
　　１、值栈(ValueStack)
　　　　Struts2将OGNL上下文设置为Struts2中的ActionContext(内部使用的仍然是OgnlContext)，并将值栈设为OGNL的根对象。
　　　　我们知道，OGNL上下文中的根对象可以直接访问，不需要使用任何特殊的“标记...&lt;br /&gt;&lt;!-- Feedsky ad --&gt;&lt;a href=&quot;http://feed.feedsky.com/~cpm/c/qbencao/4283c9a9e5d12fb7ffe20a7830786dc7&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~cpm/qbencao/4283c9a9e5d12fb7ffe20a7830786dc7/s.gif&quot; border=&quot;0&quot; style=&quot;margin-top:5px;&quot; /&gt;&lt;/a&gt;&lt;!-- /Feedsky ad --&gt;&lt;br /&gt;&lt;!-- Feedsky flare --&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/qbencao?a=e1684805bfb528cffe823052af063bc0&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/qbencao?i=e1684805bfb528cffe823052af063bc0&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/qbencao?a=b85b26112de12707c241f44e5ae19441&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/qbencao?i=b85b26112de12707c241f44e5ae19441&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/qbencao?a=e65aed7e514912a98f7053a32a043997&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/qbencao?i=e65aed7e514912a98f7053a32a043997&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/qbencao?a=e0e8321027f84cdfbe7e157936fd4b04&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/qbencao?i=e0e8321027f84cdfbe7e157936fd4b04&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/qbencao?a=7522bbb39331fa304ff3263e794574e0&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/qbencao?i=7522bbb39331fa304ff3263e794574e0&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/qbencao?a=92c71f150c471c388531541ca98be3af&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/qbencao?i=92c71f150c471c388531541ca98be3af&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/qbencao?a=5902b9152d9c6555482e1a17f2f61d84&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/qbencao?i=5902b9152d9c6555482e1a17f2f61d84&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/qbencao?a=da9aa89e5699ee35683b1f7862a492a4&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/qbencao?i=da9aa89e5699ee35683b1f7862a492a4&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;!-- /Feedsky flare --&gt;</description><category>编程开发</category><category>Java</category><category>ognl</category><category>struts2</category><pubDate>Fri, 14 Nov 2008 05:40:15 +0800</pubDate><author>阿超</author><comments>http://www.qbencao.com/2008/11/14/struts2-ognl-us-254.html#comments</comments><guid isPermaLink="false">http://www.qbencao.com/?p=254</guid><dc:creator>阿超</dc:creator><fs:srclink>http://www.qbencao.com/2008/11/14/struts2-ognl-us-254.html</fs:srclink><fs:srcfeed>http://www.qbencao.com/feed</fs:srcfeed><fs:itemid>feedsky/qbencao/~6900889/158192983/5008872</fs:itemid></item><item><title>struts2标签学习–iterator</title><link>http://item.feedsky.com/~feedsky/qbencao/~6900889/158192984/5008872/1/item.html</link><content:encoded>&lt;p&gt;    iterator标签主要是用于迭代输出集合元素,如list set map 数组等,在使用&amp;lt;s:iterator/&amp;gt;标签的时候有三个属性值得我们关注&lt;/p&gt;
&lt;p&gt;1. value属性:可选的属性,value属性是指一个被迭代的集合,使用ognl表达式指定,如果为空的话默认就是ValueStack栈顶的集合.&lt;br /&gt;
2.id属性:可选属性, 是指集合元素的id&lt;br /&gt;
3.status属性:可选属性,该属性在迭代时会产生一个IteratorStatus对象,该对象可以判断当前元素的位置,包含了以下属性方法:&lt;/p&gt;
&lt;p&gt;int  getCount();  迭代元素个数&lt;/p&gt;
&lt;p&gt;int  getIndex();  迭代元素当前索引&lt;/p&gt;
&lt;p&gt;boolean getFirst(); 是否为第一个&lt;/p&gt;
&lt;p&gt;boolean getEven(); 是否为偶&lt;/p&gt;
&lt;p&gt;boolean getLast(); 是否最后一个&lt;/p&gt;
&lt;p&gt;bolean getOdd();   是否为奇&lt;/p&gt;
&lt;p&gt;由于iteratorstatus对象并不是ognl的根对象因此访问需要加上 #访问如下例子:&lt;/p&gt;
&lt;p&gt;&amp;lt;s:iterator value=&amp;#8221;{&amp;#8217;dd&amp;#8217;,'bb&amp;#8217;,'cc&amp;#8217;}&amp;#8221; status=&amp;#8221;st&amp;#8221;&amp;gt;&lt;/p&gt;
&lt;p&gt;   &amp;lt;s:if test=&amp;#8221;#st.odd&amp;#8221;&amp;gt;&lt;/p&gt;
&lt;p&gt;      &amp;lt;s:property value=&amp;#8221;#st.index&amp;#8221;/&amp;gt;&lt;/p&gt;
&lt;p&gt;   &amp;lt;/s:if&amp;gt;&lt;/p&gt;
&lt;p&gt;&amp;lt;/s:iterator&amp;gt;&lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p&gt;此外:iterator也可以迭代map对象,map对象中有几对key-value 就迭代几次,分别使用&lt;br /&gt;
&amp;lt;s:property value=&amp;#8221;key&amp;#8221;/&amp;gt;&lt;br /&gt;
&amp;lt;s:property value=&amp;#8221;value&amp;#8221;/&amp;gt;&lt;/p&gt;
&lt;p&gt;输出即可.
&lt;ul class=&quot;related_post&quot;&gt;
&lt;li&gt;&lt;a href=&quot;http://www.qbencao.com/2008/12/11/struts2-reload-two-metho-285.html&quot; title=&quot;Struts2自动加载,提高Struts2开发生产力&quot;&gt;Struts2自动加载,提高Struts2开发生产力&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://www.qbencao.com/2008/11/14/struts2-ognl-us-254.html&quot; title=&quot;struts2中的OGNL&quot;&gt;struts2中的OGNL&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://www.qbencao.com/2008/11/13/struts2-tag-use-i-freemarker-258.html&quot; title=&quot;在struts2中使用freemarker&quot;&gt;在struts2中使用freemarker&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://www.qbencao.com/2008/11/13/ognl-intro-251.html&quot; title=&quot;OGNL简单使用&quot;&gt;OGNL简单使用&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://www.qbencao.com/2008/11/12/freemark-example-256.html&quot; title=&quot;Freemarker - 几个比较实用的例子&quot;&gt;Freemarker - 几个比较实用的例子&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://www.qbencao.com/2008/11/12/freemarke-249.html&quot; title=&quot;FreeMarker初学&quot;&gt;FreeMarker初学&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://www.qbencao.com/2008/10/20/struts2-xmlload-order-227.html&quot; title=&quot;struts2加载插件的顺序&quot;&gt;struts2加载插件的顺序&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://www.qbencao.com/2008/10/19/struts2-al-225.html&quot; title=&quot;Struts2 总结 - [Struts2]&quot;&gt;Struts2 总结 - [Struts2]&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;&lt;br /&gt;&lt;!-- Feedsky ad --&gt;&lt;a href=&quot;http://feed.feedsky.com/~cpm/c/qbencao/40dff0bf7885c9e068dd5a00db9b8033&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~cpm/qbencao/40dff0bf7885c9e068dd5a00db9b8033/s.gif&quot; border=&quot;0&quot; style=&quot;margin-top:5px;&quot; /&gt;&lt;/a&gt;&lt;!-- /Feedsky ad --&gt;&lt;br /&gt;&lt;!-- Feedsky flare --&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/qbencao?a=09b97d0564a204cc2e5a256188df10f3&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/qbencao?i=09b97d0564a204cc2e5a256188df10f3&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/qbencao?a=0eb8d79a717d1fdbabd8b21f66f74ded&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/qbencao?i=0eb8d79a717d1fdbabd8b21f66f74ded&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/qbencao?a=a151c75d23820483a8ab36b58cfa28bb&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/qbencao?i=a151c75d23820483a8ab36b58cfa28bb&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/qbencao?a=5fafe60bfd9a8a0bc2c4f8271abe8ae5&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/qbencao?i=5fafe60bfd9a8a0bc2c4f8271abe8ae5&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/qbencao?a=a4a31b049116b5423dcd288219f9a6f4&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/qbencao?i=a4a31b049116b5423dcd288219f9a6f4&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/qbencao?a=c6683079eddacd591178ae050d4726ef&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/qbencao?i=c6683079eddacd591178ae050d4726ef&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/qbencao?a=0ad853861429ef492438836b53c48402&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/qbencao?i=0ad853861429ef492438836b53c48402&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/qbencao?a=da89c4d7e3b0242a7ff04b2916a47ac1&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/qbencao?i=da89c4d7e3b0242a7ff04b2916a47ac1&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;!-- /Feedsky flare --&gt;</content:encoded><wfw:commentRss>http://www.qbencao.com/2008/11/13/struts2-tags-iterato-260.html/feed</wfw:commentRss><description>    iterator标签主要是用于迭代输出集合元素,如list set map 数组等,在使用&amp;#60;s:iterator/&amp;#62;标签的时候有三个属性值得我们关注
1. value属性:可选的属性,value属性是指一个被迭代的集合,使用ognl表达式指定,如果为空的话默认就是ValueStack栈顶的集合.
2.id属...&lt;br /&gt;&lt;!-- Feedsky ad --&gt;&lt;a href=&quot;http://feed.feedsky.com/~cpm/c/qbencao/40dff0bf7885c9e068dd5a00db9b8033&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~cpm/qbencao/40dff0bf7885c9e068dd5a00db9b8033/s.gif&quot; border=&quot;0&quot; style=&quot;margin-top:5px;&quot; /&gt;&lt;/a&gt;&lt;!-- /Feedsky ad --&gt;&lt;br /&gt;&lt;!-- Feedsky flare --&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/qbencao?a=09b97d0564a204cc2e5a256188df10f3&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/qbencao?i=09b97d0564a204cc2e5a256188df10f3&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/qbencao?a=0eb8d79a717d1fdbabd8b21f66f74ded&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/qbencao?i=0eb8d79a717d1fdbabd8b21f66f74ded&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/qbencao?a=a151c75d23820483a8ab36b58cfa28bb&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/qbencao?i=a151c75d23820483a8ab36b58cfa28bb&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/qbencao?a=5fafe60bfd9a8a0bc2c4f8271abe8ae5&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/qbencao?i=5fafe60bfd9a8a0bc2c4f8271abe8ae5&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/qbencao?a=a4a31b049116b5423dcd288219f9a6f4&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/qbencao?i=a4a31b049116b5423dcd288219f9a6f4&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/qbencao?a=c6683079eddacd591178ae050d4726ef&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/qbencao?i=c6683079eddacd591178ae050d4726ef&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/qbencao?a=0ad853861429ef492438836b53c48402&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/qbencao?i=0ad853861429ef492438836b53c48402&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/qbencao?a=da89c4d7e3b0242a7ff04b2916a47ac1&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/qbencao?i=da89c4d7e3b0242a7ff04b2916a47ac1&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;!-- /Feedsky flare --&gt;</description><category>家园建设</category><category>iterator</category><category>struts2</category><pubDate>Thu, 13 Nov 2008 15:26:40 +0800</pubDate><author>阿超</author><comments>http://www.qbencao.com/2008/11/13/struts2-tags-iterato-260.html#comments</comments><guid isPermaLink="false">http://www.qbencao.com/?p=260</guid><dc:creator>阿超</dc:creator><fs:srclink>http://www.qbencao.com/2008/11/13/struts2-tags-iterato-260.html</fs:srclink><fs:srcfeed>http://www.qbencao.com/feed</fs:srcfeed><fs:itemid>feedsky/qbencao/~6900889/158192984/5008872</fs:itemid></item><item><title>在struts2中使用freemarker</title><link>http://item.feedsky.com/~feedsky/qbencao/~6900889/158192985/5008872/1/item.html</link><content:encoded>&lt;p&gt;普通的struts2配置文件一般是这么配置的：&lt;/p&gt;
&lt;div class=&quot;cnblogs_code&quot;&gt;&lt;span style=&quot;color: #000000;&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;action name&lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;=&lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;&amp;#8220;&lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;Action1&lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;&amp;#8220;&lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt; &lt;/span&gt;&lt;span style=&quot;color: #0000ff;&quot;&gt;class&lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;=&lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;&amp;#8220;&lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;com.abc.Action1&lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;&amp;#8220;&lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;&lt;br /&gt;
    &lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;result&lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;&amp;gt;/&lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;page.jsp&lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;&amp;lt;/&lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;result&lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;&lt;br /&gt;
&lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;&amp;lt;/&lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;action&lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/div&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p&gt;这里的view是一个jsp页面，也可以改成是一个freemarker模板页面：&lt;/p&gt;
&lt;div class=&quot;cnblogs_code&quot;&gt;&lt;span style=&quot;color: #0000ff;&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #800000;&quot;&gt;action &lt;/span&gt;&lt;span style=&quot;color: #ff0000;&quot;&gt;name&lt;/span&gt;&lt;span style=&quot;color: #0000ff;&quot;&gt;=&amp;#8221;Action1&amp;#8243;&lt;/span&gt;&lt;span style=&quot;color: #ff0000;&quot;&gt; class&lt;/span&gt;&lt;span style=&quot;color: #0000ff;&quot;&gt;=&amp;#8221;com.abc.Action1&amp;#8243;&lt;/span&gt;&lt;span style=&quot;color: #0000ff;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;&lt;br /&gt;
    &lt;/span&gt;&lt;span style=&quot;color: #0000ff;&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #800000;&quot;&gt;result &lt;/span&gt;&lt;span style=&quot;color: #ff0000;&quot;&gt;type&lt;/span&gt;&lt;span style=&quot;color: #0000ff;&quot;&gt;=&amp;#8221;freemarker&amp;#8221;&lt;/span&gt;&lt;span style=&quot;color: #0000ff;&quot;&gt;&amp;gt;/&lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;fm.ftl&lt;/span&gt;&lt;span style=&quot;color: #0000ff;&quot;&gt;&amp;lt;/&lt;/span&gt;&lt;span style=&quot;color: #800000;&quot;&gt;result&lt;/span&gt;&lt;span style=&quot;color: #0000ff;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;&lt;br /&gt;
&lt;/span&gt;&lt;span style=&quot;color: #0000ff;&quot;&gt;&amp;lt;/&lt;/span&gt;&lt;span style=&quot;color: #800000;&quot;&gt;action&lt;/span&gt;&lt;span style=&quot;color: #0000ff;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/div&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p&gt;当然我们希望能在fm.ftl上使用struts2的标签，需要在fm.ftl页面最开始添加对struts2标签的引用：&lt;/p&gt;
&lt;div class=&quot;cnblogs_code&quot;&gt;&lt;span style=&quot;color: #000000;&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;#assign s&lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;=&lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;JspTaglibs[&lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;&quot;&lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;/WEB-INF/struts-tags.tld&lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;&quot;&lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;] &lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;/&amp;gt;&lt;/span&gt;&lt;/div&gt;
&lt;p&gt;引用前把&lt;span style=&quot;font-family: Verdana;&quot;&gt;struts2-core-2.0.x.x.jar包里的&lt;span style=&quot;font-family: Verdana;&quot;&gt;META-INF&lt;/span&gt;/struts-tags.tld 复制到 /WEB-INF/struts-tags.tld&lt;/span&gt;&lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p&gt;默认是不支持JspTaglibs的引用的，这里还需要一个额外的配置，修改web.xml，添加如下内容：&lt;/p&gt;
&lt;div class=&quot;cnblogs_code&quot;&gt;&lt;span style=&quot;color: #000000;&quot;&gt;    &lt;/span&gt;&lt;span style=&quot;color: #0000ff;&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #800000;&quot;&gt;servlet&lt;/span&gt;&lt;span style=&quot;color: #0000ff;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;&lt;br /&gt;
        &lt;/span&gt;&lt;span style=&quot;color: #0000ff;&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #800000;&quot;&gt;servlet-name&lt;/span&gt;&lt;span style=&quot;color: #0000ff;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;JspSupportServlet&lt;/span&gt;&lt;span style=&quot;color: #0000ff;&quot;&gt;&amp;lt;/&lt;/span&gt;&lt;span style=&quot;color: #800000;&quot;&gt;servlet-name&lt;/span&gt;&lt;span style=&quot;color: #0000ff;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;&lt;br /&gt;
        &lt;/span&gt;&lt;span style=&quot;color: #0000ff;&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #800000;&quot;&gt;servlet-class&lt;/span&gt;&lt;span style=&quot;color: #0000ff;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;&lt;br /&gt;
             org.apache.struts2.views.JspSupportServlet&lt;br /&gt;
        &lt;/span&gt;&lt;span style=&quot;color: #0000ff;&quot;&gt;&amp;lt;/&lt;/span&gt;&lt;span style=&quot;color: #800000;&quot;&gt;servlet-class&lt;/span&gt;&lt;span style=&quot;color: #0000ff;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;&lt;br /&gt;
        &lt;/span&gt;&lt;span style=&quot;color: #0000ff;&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #800000;&quot;&gt;load-on-startup&lt;/span&gt;&lt;span style=&quot;color: #0000ff;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;1&lt;/span&gt;&lt;span style=&quot;color: #0000ff;&quot;&gt;&amp;lt;/&lt;/span&gt;&lt;span style=&quot;color: #800000;&quot;&gt;load-on-startup&lt;/span&gt;&lt;span style=&quot;color: #0000ff;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;&lt;br /&gt;
    &lt;/span&gt;&lt;span style=&quot;color: #0000ff;&quot;&gt;&amp;lt;/&lt;/span&gt;&lt;span style=&quot;color: #800000;&quot;&gt;servlet&lt;/span&gt;&lt;span style=&quot;color: #0000ff;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/div&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p&gt;一个简单的fm.ftl文件的例子：&lt;/p&gt;
&lt;div class=&quot;cnblogs_code&quot;&gt;&lt;span style=&quot;color: #000000;&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;#assign s&lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;=&lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;JspTaglibs[&lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;&quot;&lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;/WEB-INF/struts-tags.tld&lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;&quot;&lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;] &lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;/&amp;gt;&lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;&lt;br /&gt;
&lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;html&lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;&lt;br /&gt;
&lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;head&lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;&lt;br /&gt;
&lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;meta http&lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;-&lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;equiv&lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;=&lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;&amp;#8220;&lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;Content-Type&lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;&amp;#8220;&lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt; content&lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;=&lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;&amp;#8220;&lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;text/html; charset=GB2312&lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;&amp;#8220;&lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;&lt;br /&gt;
&lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;title&lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;Insert title here&lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;&amp;lt;/&lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;title&lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;&lt;br /&gt;
&lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;&amp;lt;/&lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;head&lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;&lt;br /&gt;
&lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;body&lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;&lt;br /&gt;
&lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;@s.form action&lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;=&lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;&amp;#8220;Action1&lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;.action&lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;&amp;#8220;&lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;&lt;br /&gt;
&lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;@s.textfield name&lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;=&lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;&amp;#8220;&lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;username&lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;&amp;#8220;&lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;&amp;gt;&amp;lt;/&lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;@s.textfield&lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;&lt;br /&gt;
&lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;@s.textfield name&lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;=&lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;&amp;#8220;&lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;password&lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;&amp;#8220;&lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;&amp;gt;&amp;lt;/&lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;@s.textfield&lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;&lt;br /&gt;
&lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;@s.submit value&lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;=&lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;&amp;#8220;&lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;提交&lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;&amp;#8220;&lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;/&amp;gt;&lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;&lt;br /&gt;
&lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;&amp;lt;/&lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;@s.form&lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;&lt;br /&gt;
&lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;br&lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;/&amp;gt;&lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;登录用户名：${username}&lt;br /&gt;
&lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;&amp;lt;/&lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;body&lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;&lt;br /&gt;
&lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;&amp;lt;/&lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;html&lt;/span&gt;&lt;span style=&quot;color: #000000;&quot;&gt;&amp;gt;&lt;/span&gt;&lt;/div&gt;
&lt;p&gt;&lt;span style=&quot;color: red;&quot;&gt;注意：struts2在freemarker页面中标签写法和jsp页面的写法不同，freemarker里是&amp;lt;@s.form&amp;gt;，jsp里是&amp;lt;s:form&amp;gt;，一定不要写错了！&lt;/span&gt;&lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p&gt;使用时发现对中文的支持不好，显示时中文出现乱码，这里修改下struts.xml配置文件：&lt;/p&gt;
&lt;div class=&quot;cnblogs_code&quot;&gt;&lt;span style=&quot;color: #0000ff;&quot;&gt;&amp;lt;&lt;/span&gt;&lt;span style=&quot;color: #800000;&quot;&gt;constant &lt;/span&gt;&lt;span style=&quot;color: #ff0000;&quot;&gt;name&lt;/span&gt;&lt;span style=&quot;color: #0000ff;&quot;&gt;=&amp;#8221;struts.i18n.encoding&amp;#8221;&lt;/span&gt;&lt;span style=&quot;color: #ff0000;&quot;&gt; value&lt;/span&gt;&lt;span style=&quot;color: #0000ff;&quot;&gt;=&amp;#8221;gb2312&amp;#8243;&lt;/span&gt;&lt;span style=&quot;color: #ff0000;&quot;&gt; &lt;/span&gt;&lt;span style=&quot;color: #0000ff;&quot;&gt;/&amp;gt;&lt;/span&gt;&lt;/div&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p&gt;现在就可以在struts2中正常使用freemarker了!
&lt;ul class=&quot;related_post&quot;&gt;
&lt;li&gt;&lt;a href=&quot;http://www.qbencao.com/2008/11/12/freemark-example-256.html&quot; title=&quot;Freemarker - 几个比较实用的例子&quot;&gt;Freemarker - 几个比较实用的例子&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://www.qbencao.com/2008/11/12/freemarke-249.html&quot; title=&quot;FreeMarker初学&quot;&gt;FreeMarker初学&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://www.qbencao.com/2008/12/11/struts2-reload-two-metho-285.html&quot; title=&quot;Struts2自动加载,提高Struts2开发生产力&quot;&gt;Struts2自动加载,提高Struts2开发生产力&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://www.qbencao.com/2008/11/14/struts2-ognl-us-254.html&quot; title=&quot;struts2中的OGNL&quot;&gt;struts2中的OGNL&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://www.qbencao.com/2008/11/13/struts2-tags-iterato-260.html&quot; title=&quot;struts2标签学习&amp;#8211;iterator&quot;&gt;struts2标签学习&amp;#8211;iterator&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://www.qbencao.com/2008/11/13/ognl-intro-251.html&quot; title=&quot;OGNL简单使用&quot;&gt;OGNL简单使用&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://www.qbencao.com/2008/10/20/struts2-xmlload-order-227.html&quot; title=&quot;struts2加载插件的顺序&quot;&gt;struts2加载插件的顺序&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://www.qbencao.com/2008/10/19/struts2-al-225.html&quot; title=&quot;Struts2 总结 - [Struts2]&quot;&gt;Struts2 总结 - [Struts2]&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;&lt;br /&gt;&lt;!-- Feedsky ad --&gt;&lt;a href=&quot;http://feed.feedsky.com/~cpm/c/qbencao/cdf773da87cce17c5032d389319e2600&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~cpm/qbencao/cdf773da87cce17c5032d389319e2600/s.gif&quot; border=&quot;0&quot; style=&quot;margin-top:5px;&quot; /&gt;&lt;/a&gt;&lt;!-- /Feedsky ad --&gt;&lt;br /&gt;&lt;!-- Feedsky flare --&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/qbencao?a=2b6a2d27f62aa2a7b7d7da276c5beecb&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/qbencao?i=2b6a2d27f62aa2a7b7d7da276c5beecb&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/qbencao?a=3b864d638d1421e66fc315e17bfabc67&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/qbencao?i=3b864d638d1421e66fc315e17bfabc67&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/qbencao?a=c3e17d82819a59ef621759216098c0a3&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/qbencao?i=c3e17d82819a59ef621759216098c0a3&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/qbencao?a=e6b6035051326dcd76599d00ae376cf2&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/qbencao?i=e6b6035051326dcd76599d00ae376cf2&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/qbencao?a=c7fa1231ab570bc518da781a92720588&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/qbencao?i=c7fa1231ab570bc518da781a92720588&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/qbencao?a=213c82216f5459b34cd18736093ffa1d&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/qbencao?i=213c82216f5459b34cd18736093ffa1d&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/qbencao?a=ad3d90272bf7e2aa7713ddbf68f035a7&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/qbencao?i=ad3d90272bf7e2aa7713ddbf68f035a7&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/qbencao?a=0ecc7178ac1140526653484521e6437c&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/qbencao?i=0ecc7178ac1140526653484521e6437c&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;!-- /Feedsky flare --&gt;</content:encoded><wfw:commentRss>http://www.qbencao.com/2008/11/13/struts2-tag-use-i-freemarker-258.html/feed</wfw:commentRss><description>普通的struts2配置文件一般是这么配置的：
&amp;#60;action name=&amp;#8220;Action1&amp;#8220; class=&amp;#8220;com.abc.Action1&amp;#8220;&amp;#62;
    &amp;#60;result&amp;#62;/page.jsp&amp;#60;/result&amp;#62;
&amp;#60;/action&amp;#62;
 
这里的view是一个jsp页面，也可以改成是一个freemarker模板页面：
&amp;#60;action name=&amp;#8221;Action1&amp;#8243...&lt;br /&gt;&lt;!-- Feedsky ad --&gt;&lt;a href=&quot;http://feed.feedsky.com/~cpm/c/qbencao/cdf773da87cce17c5032d389319e2600&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~cpm/qbencao/cdf773da87cce17c5032d389319e2600/s.gif&quot; border=&quot;0&quot; style=&quot;margin-top:5px;&quot; /&gt;&lt;/a&gt;&lt;!-- /Feedsky ad --&gt;&lt;br /&gt;&lt;!-- Feedsky flare --&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/qbencao?a=2b6a2d27f62aa2a7b7d7da276c5beecb&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/qbencao?i=2b6a2d27f62aa2a7b7d7da276c5beecb&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/qbencao?a=3b864d638d1421e66fc315e17bfabc67&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/qbencao?i=3b864d638d1421e66fc315e17bfabc67&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/qbencao?a=c3e17d82819a59ef621759216098c0a3&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/qbencao?i=c3e17d82819a59ef621759216098c0a3&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/qbencao?a=e6b6035051326dcd76599d00ae376cf2&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/qbencao?i=e6b6035051326dcd76599d00ae376cf2&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/qbencao?a=c7fa1231ab570bc518da781a92720588&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/qbencao?i=c7fa1231ab570bc518da781a92720588&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/qbencao?a=213c82216f5459b34cd18736093ffa1d&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/qbencao?i=213c82216f5459b34cd18736093ffa1d&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/qbencao?a=ad3d90272bf7e2aa7713ddbf68f035a7&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/qbencao?i=ad3d90272bf7e2aa7713ddbf68f035a7&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;a href=&quot;http://feed.feedsky.com/~flare/qbencao?a=0ecc7178ac1140526653484521e6437c&quot; target=&quot;_blank&quot;&gt;&lt;img src=&quot;http://feed.feedsky.com/~flare/qbencao?i=0ecc7178ac1140526653484521e6437c&quot; border=&quot;0&quot;&gt;&lt;/a&gt;&lt;!-- /Feedsky flare --&gt;</description><category>freemarker</category><category>s:form</category><category>家园建设</category><category>struts2</category><pubDate>Thu, 13 Nov 2008 08:40:47 +0800</pubDate><author>阿超</author><comments>http://www.qbencao.com/2008/11/13/struts2-tag-use-i-freemarker-258.html#comments</comments><guid isPermaLink="false">http://www.qbencao.com/?p=258</guid><dc:creator>阿超</dc:creator><fs:srclink>http://www.qbencao.com/2008/11/13/struts2-tag-use-i-freemarker-258.html</fs:srclink><fs:srcfeed>http://www.qbencao.com/feed</fs:srcfeed><fs:itemid>feedsky/qbencao/~6900889/158192985/5008872</fs:itemid></item></channel></rss>