﻿<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/"><channel><title>BlogJava-猪-随笔分类-工作</title><link>http://www.blogjava.net/liuspring/category/34389.html</link><description>java .net</description><language>zh-cn</language><lastBuildDate>Thu, 20 May 2010 17:31:00 GMT</lastBuildDate><pubDate>Thu, 20 May 2010 17:31:00 GMT</pubDate><ttl>60</ttl><item><title>关于我</title><link>http://www.blogjava.net/liuspring/archive/2010/05/19/321377.html</link><dc:creator>猪</dc:creator><author>猪</author><pubDate>Wed, 19 May 2010 06:58:00 GMT</pubDate><guid>http://www.blogjava.net/liuspring/archive/2010/05/19/321377.html</guid><wfw:comment>http://www.blogjava.net/liuspring/comments/321377.html</wfw:comment><comments>http://www.blogjava.net/liuspring/archive/2010/05/19/321377.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/liuspring/comments/commentRss/321377.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/liuspring/services/trackbacks/321377.html</trackback:ping><description><![CDATA[<div>
<div>一个喜欢coding的程序员，工作在北京，从事java web 开发，喜欢JavaScript，平时关注技术新闻，试用各种新框架、新语言，学海无涯，有时也迷茫</div>
<div>平时没事翻翻编程思想、浏览各位同行的blog，将各种实际中的技巧、方法拿来养眼，并用到自己的项目中感受快乐</div>
<div>头儿的评价：不管遇到什么难题，都会钻窟窿盗洞把它解决掉</div>
</div>
<span style="font-size: 36pt; ">
<div><span style="font-size: 36pt; "><br />
</span></div>
求职<a href="http://liuspring315.appspot.com/blogView.do?logId=11001" title="工作简历" target="_blank">简历</a></span>
<img src ="http://www.blogjava.net/liuspring/aggbug/321377.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/liuspring/" target="_blank">猪</a> 2010-05-19 14:58 <a href="http://www.blogjava.net/liuspring/archive/2010/05/19/321377.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>windows7 访问局域网计算机 提示用户名密码错误</title><link>http://www.blogjava.net/liuspring/archive/2010/03/03/314444.html</link><dc:creator>猪</dc:creator><author>猪</author><pubDate>Wed, 03 Mar 2010 13:41:00 GMT</pubDate><guid>http://www.blogjava.net/liuspring/archive/2010/03/03/314444.html</guid><wfw:comment>http://www.blogjava.net/liuspring/comments/314444.html</wfw:comment><comments>http://www.blogjava.net/liuspring/archive/2010/03/03/314444.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/liuspring/comments/commentRss/314444.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/liuspring/services/trackbacks/314444.html</trackback:ping><description><![CDATA[今天上班发现访问公司局域网里的计算机共享不好使了，输入正确的用户名密码，也提示不正确，差点就还原系统了，最后Google到了方法： WIN7电脑上开始 search 输入sec ， 打开local security policy, 找到security settings\local policies\Network Security: LAN Manager authentication level, the default vaule 是 not defined. 改为"Send NTLM response only"后即可. 参考：http://bbs.pcbeta.com/thread-511161-1-1.html
<img src ="http://www.blogjava.net/liuspring/aggbug/314444.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/liuspring/" target="_blank">猪</a> 2010-03-03 21:41 <a href="http://www.blogjava.net/liuspring/archive/2010/03/03/314444.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>hibernate异常</title><link>http://www.blogjava.net/liuspring/archive/2009/03/31/263103.html</link><dc:creator>猪</dc:creator><author>猪</author><pubDate>Tue, 31 Mar 2009 05:27:00 GMT</pubDate><guid>http://www.blogjava.net/liuspring/archive/2009/03/31/263103.html</guid><wfw:comment>http://www.blogjava.net/liuspring/comments/263103.html</wfw:comment><comments>http://www.blogjava.net/liuspring/archive/2009/03/31/263103.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/liuspring/comments/commentRss/263103.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/liuspring/services/trackbacks/263103.html</trackback:ping><description><![CDATA[<span  style="font-family: Arial; font-size: 14px; line-height: 20px; "><strong style="line-height: normal; ">备案：<br style="line-height: normal; " />
java.lang.IllegalStateException: No data type for node: org.hibernate.hql.ast.tree.IdentNode</strong><br style="line-height: normal; " />
<br style="line-height: normal; " />
hibernate查询时报上面的异常，仔细检查hql写的有不对的地方，我就是把逗号,写成点.</span>
<img src ="http://www.blogjava.net/liuspring/aggbug/263103.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/liuspring/" target="_blank">猪</a> 2009-03-31 13:27 <a href="http://www.blogjava.net/liuspring/archive/2009/03/31/263103.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>用javascript获取和设置style</title><link>http://www.blogjava.net/liuspring/archive/2008/10/10/233589.html</link><dc:creator>猪</dc:creator><author>猪</author><pubDate>Fri, 10 Oct 2008 06:49:00 GMT</pubDate><guid>http://www.blogjava.net/liuspring/archive/2008/10/10/233589.html</guid><wfw:comment>http://www.blogjava.net/liuspring/comments/233589.html</wfw:comment><comments>http://www.blogjava.net/liuspring/archive/2008/10/10/233589.html#Feedback</comments><slash:comments>1</slash:comments><wfw:commentRss>http://www.blogjava.net/liuspring/comments/commentRss/233589.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/liuspring/services/trackbacks/233589.html</trackback:ping><description><![CDATA[
<p>好久没写了
<br/>
中间过了个十一，在家混沌过了好几天</p>
<p>回来转眼上了一星期班了，忙的屁滚尿流
<br/>
一年前的系统要增加两个大功能，200多个报表要挨个修改，报表校验的页面效果客户又提出了新建议，一个字 改</p>
<p>从昨天晚上开始捣鼓到现在终于解决了一个问题，心情好了些，上来写写，哈哈</p>
<p>这两天用了baidu 百度空间中的弹出窗口js，感觉不错，很强大，很好很简单的解决了好几个问题，界面友好度以及美化也好多了，以前都是硬邦邦window.open();</p>
<p>有兴趣的朋友搜索"<a href="http://www.google.cn/search?q=百度+popup&amp;sourceid=navclient-ff&amp;ie=UTF-8&amp;rlz=1B3GGGL_zh-CNCN266CN267&amp;aq=t">百度 popup</a>"就好了，已经有人给出了注释，强大。</p>
<p>最有意思的是用javascript获取和设置style</p>
<p>DOM标准引入了覆盖样式表的概念，当我们用document.getElementById("id").style.backgroundColor 获取样式时 获取的只是id中style属性中设置的背景色，如果id中的style属性中没有设置background-color那么就会返回空，也就是说如果id用class属性引用了一个外部样式表，在这个外部样式表中设置的背景色，那么不好意思document.getElementById("id").style.backgroundColor 这种写法不好使，如果要获取外部样式表中的设置，需要用到window对象的getComputedStyle()方法，代码这样写window.getComputedStyle(id,null).backgroundColor
<br/>
但是兼容问题又来了，这么写在firefox中好使，但在IE中不好使
<br/>
两者兼容的方式写成
<br/>
window.getComputedStyle?window.getComputedStyle(id,null).backgroundColor:id.currentStyle["backgroundColor"];
<br/>
如果是获取背景色，这种方法在firefox和IE中的返回值还是不一样的，IE中是返回"#ffff99"样子的，而firefox中返回"rgb(238, 44, 34) "
<br/>
值得注意的是：window.getComputedStyle(id,null)这种方式不能设置样式，只能获取，要设置还得写成类似这样id.style.background="#EE2C21";</p>
<p>参考：
<br/>
JavaScript权威指南
<br/>
<a href="http://bokee.shinylife.net/blog/article.asp?id=817">http://bokee.shinylife.net/blog/article.asp?id=817</a>
<br/>
<a href="http://book.csdn.net/bookfiles/679/10067921329.shtml">http://book.csdn.net/bookfiles/679/10067921329.shtml</a>
<br/></p>
<img src ="http://www.blogjava.net/liuspring/aggbug/233589.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/liuspring/" target="_blank">猪</a> 2008-10-10 14:49 <a href="http://www.blogjava.net/liuspring/archive/2008/10/10/233589.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>普元培训第五天</title><link>http://www.blogjava.net/liuspring/archive/2008/09/18/229796.html</link><dc:creator>猪</dc:creator><author>猪</author><pubDate>Thu, 18 Sep 2008 13:01:00 GMT</pubDate><guid>http://www.blogjava.net/liuspring/archive/2008/09/18/229796.html</guid><wfw:comment>http://www.blogjava.net/liuspring/comments/229796.html</wfw:comment><comments>http://www.blogjava.net/liuspring/archive/2008/09/18/229796.html#Feedback</comments><slash:comments>6</slash:comments><wfw:commentRss>http://www.blogjava.net/liuspring/comments/commentRss/229796.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/liuspring/services/trackbacks/229796.html</trackback:ping><description><![CDATA[
<p>培训最后一天，报表~</p>
<p>感觉普元的报表有点水晶的味道，弄了个分组报表，又建数据源又建数据集有设行分组，列分组的，赶紧挺麻烦，没有用润乾好使，虽然润乾工作量也挺大</p>
<p>看来老板要贴了心上普元了，接下来可能要实战了，不知道啥样，现在有两点困难;</p>
<p>1\、普元报的错误，无从下手，不知道哪出的毛病，比如有时在展现层的毛病，而在逻辑处理层报错，摸不着头脑啊。</p>
<p>2、普元的构件不熟悉，据说有1000多个构件，不像java api一样按照功能分的包，它是按层分的包，业务逻辑层构件、运算层构件、展现层构件。要实现一个功能怎么能知道构件包里有没有现成的，恐怕这只能慢慢熟悉那些构件库了</p>
<p>3、觉得普元的报表系统不怎么样，至少没有什么让人耳目一新的，工作流系统还挺强，对工作流不熟悉，不敢说什么，然后就是可维护性，可扩展性，可能一直是自己写代码的，看不见代码总觉得不踏实最然功能实现了并以更迅速的</p>
<p>4、听头儿说这是未来软件开发的趋势，听得我直郁闷，未来开发就是这么托构件然后用连线一拉基本完事儿了吗？！得，要不我还是转行做小买卖去吧，呜呜，总的来说，觉得这种模式对程序员个人的发展没多大好处，核心代码都被封装好了，不知道什么是类，对象，方法，面向对象，也能轻而易举做软件工程师了，呵呵，工程师以后不值钱喽。</p>
<p>自己的一点感觉，胡侃一通，不知道合不合乎逻辑，在前面的blog里有朋友留言说"千万别被普元忽悠了"，哈哈，不知道那位兄弟的理由是什么，想多听听大家的意见，望广留言，多谢多谢多谢！！！</p>
<img src ="http://www.blogjava.net/liuspring/aggbug/229796.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/liuspring/" target="_blank">猪</a> 2008-09-18 21:01 <a href="http://www.blogjava.net/liuspring/archive/2008/09/18/229796.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>通过Xpath来访问数据</title><link>http://www.blogjava.net/liuspring/archive/2008/09/18/229672.html</link><dc:creator>猪</dc:creator><author>猪</author><pubDate>Thu, 18 Sep 2008 05:48:00 GMT</pubDate><guid>http://www.blogjava.net/liuspring/archive/2008/09/18/229672.html</guid><wfw:comment>http://www.blogjava.net/liuspring/comments/229672.html</wfw:comment><comments>http://www.blogjava.net/liuspring/archive/2008/09/18/229672.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/liuspring/comments/commentRss/229672.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/liuspring/services/trackbacks/229672.html</trackback:ping><description><![CDATA[
<p style="MARGIN: 0cm 0cm 6pt 21pt; TEXT-ALIGN: left; mso-para-margin-left: 21.0pt; mso-para-margin-top: 0cm; mso-para-margin-right: 0cm; mso-para-margin-bottom: .5gd">例子1：Entity的格式</p>
<p style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21pt; TEXT-ALIGN: left; tab-stops: 15.0pt 30.0pt 45.0pt 60.0pt 75.0pt 90.0pt 105.0pt 120.0pt 135.0pt 150.0pt 165.0pt 180.0pt 195.0pt 210.0pt 225.0pt 240.0pt 255.0pt 270.0pt 285.0pt 300.0pt; mso-char-indent-count: 2.0; mso-layout-grid-align: none">&lt;root&gt;</p>
<p style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 42pt; TEXT-ALIGN: left; tab-stops: 15.0pt 30.0pt 45.0pt 60.0pt 75.0pt 90.0pt 105.0pt 120.0pt 135.0pt 150.0pt 165.0pt 180.0pt 195.0pt 210.0pt 225.0pt 240.0pt 255.0pt 270.0pt 285.0pt 300.0pt; mso-char-indent-count: 4.0; mso-layout-grid-align: none">&lt;data&gt;</p>
<p style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 84pt; TEXT-ALIGN: left; tab-stops: 15.0pt 30.0pt 45.0pt 60.0pt 75.0pt 90.0pt 105.0pt 120.0pt 135.0pt 150.0pt 165.0pt 180.0pt 195.0pt 210.0pt 225.0pt 240.0pt 255.0pt 270.0pt 285.0pt 300.0pt; mso-char-indent-count: 8.0; mso-layout-grid-align: none">&lt;myEntity&gt;</p>
<p style="MARGIN: 0cm 0cm 0pt; TEXT-ALIGN: left; tab-stops: 15.0pt 30.0pt 45.0pt 60.0pt 75.0pt 90.0pt 105.0pt 120.0pt 135.0pt 150.0pt 165.0pt 180.0pt 195.0pt 210.0pt 225.0pt 240.0pt 255.0pt 270.0pt 285.0pt 300.0pt; mso-layout-grid-align: none">&lt;myField1&gt;1234&lt;/myField1&gt;</p>
<p style="MARGIN: 0cm 0cm 0pt; TEXT-ALIGN: left; tab-stops: 15.0pt 30.0pt 45.0pt 60.0pt 75.0pt 90.0pt 105.0pt 120.0pt 135.0pt 150.0pt 165.0pt 180.0pt 195.0pt 210.0pt 225.0pt 240.0pt 255.0pt 270.0pt 285.0pt 300.0pt; mso-layout-grid-align: none">&lt;myField2&gt;This is demo&lt;/myField2&gt;</p>
<p style="MARGIN: 0cm 0cm 6pt 52.5pt; TEXT-ALIGN: left; mso-para-margin-left: 5.0gd; mso-para-margin-top: 0cm; mso-para-margin-right: 0cm; mso-para-margin-bottom: .5gd">&lt;/myEntity&gt;</p>
<p style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 42pt; TEXT-ALIGN: left; tab-stops: 15.0pt 30.0pt 45.0pt 60.0pt 75.0pt 90.0pt 105.0pt 120.0pt 135.0pt 150.0pt 165.0pt 180.0pt 195.0pt 210.0pt 225.0pt 240.0pt 255.0pt 270.0pt 285.0pt 300.0pt; mso-char-indent-count: 4.0; mso-layout-grid-align: none">&lt;/data&gt;</p>
<p style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21pt; TEXT-ALIGN: left; tab-stops: 15.0pt 30.0pt 45.0pt 60.0pt 75.0pt 90.0pt 105.0pt 120.0pt 135.0pt 150.0pt 165.0pt 180.0pt 195.0pt 210.0pt 225.0pt 240.0pt 255.0pt 270.0pt 285.0pt 300.0pt; mso-char-indent-count: 2.0; mso-layout-grid-align: none">&lt;/root&gt;</p>
<p style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21pt; TEXT-ALIGN: left; tab-stops: 15.0pt 30.0pt 45.0pt 60.0pt 75.0pt 90.0pt 105.0pt 120.0pt 135.0pt 150.0pt 165.0pt 180.0pt 195.0pt 210.0pt 225.0pt 240.0pt 255.0pt 270.0pt 285.0pt 300.0pt; mso-char-indent-count: 2.0; mso-layout-grid-align: none"> </p>
<p style="MARGIN: 0cm 0cm 6pt 21pt; TEXT-ALIGN: left; mso-para-margin-left: 21.0pt; mso-para-margin-top: 0cm; mso-para-margin-right: 0cm; mso-para-margin-bottom: .5gd">例子2：EntityList的格式为</p>
<p style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21pt; TEXT-ALIGN: left; tab-stops: 15.0pt 30.0pt 45.0pt 60.0pt 75.0pt 90.0pt 105.0pt 120.0pt 135.0pt 150.0pt 165.0pt 180.0pt 195.0pt 210.0pt 225.0pt 240.0pt 255.0pt 270.0pt 285.0pt 300.0pt; mso-char-indent-count: 2.0; mso-layout-grid-align: none">&lt;root&gt;</p>
<p style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 42pt; TEXT-ALIGN: left; tab-stops: 15.0pt 30.0pt 45.0pt 60.0pt 75.0pt 90.0pt 105.0pt 120.0pt 135.0pt 150.0pt 165.0pt 180.0pt 195.0pt 210.0pt 225.0pt 240.0pt 255.0pt 270.0pt 285.0pt 300.0pt; mso-char-indent-count: 4.0; mso-layout-grid-align: none">&lt;data&gt;</p>
<p style="MARGIN: 0cm 0cm 0pt 42pt; TEXT-INDENT: 21pt">&lt;list length=2&gt;</p>
<p style="MARGIN: 0cm 0cm 0pt 63pt; TEXT-ALIGN: left; tab-stops: 15.0pt 30.0pt 45.0pt 60.0pt 75.0pt 90.0pt 105.0pt 120.0pt 135.0pt 150.0pt 165.0pt 180.0pt 195.0pt 210.0pt 225.0pt 240.0pt 255.0pt 270.0pt 285.0pt 300.0pt; mso-para-margin-left: 6.0gd; mso-layout-grid-align: none">&lt;myEntity name="test1"&gt;</p>
<p style="MARGIN: 0cm 0cm 0pt 63pt; TEXT-ALIGN: left; tab-stops: 15.0pt 30.0pt 45.0pt 60.0pt 75.0pt 90.0pt 105.0pt 120.0pt 135.0pt 150.0pt 165.0pt 180.0pt 195.0pt 210.0pt 225.0pt 240.0pt 255.0pt 270.0pt 285.0pt 300.0pt; mso-para-margin-left: 6.0gd; mso-layout-grid-align: none">&lt;myField1&gt;1234&lt;/myField1&gt;</p>
<p style="MARGIN: 0cm 0cm 0pt 63pt; TEXT-ALIGN: left; tab-stops: 15.0pt 30.0pt 45.0pt 60.0pt 75.0pt 90.0pt 105.0pt 120.0pt 135.0pt 150.0pt 165.0pt 180.0pt 195.0pt 210.0pt 225.0pt 240.0pt 255.0pt 270.0pt 285.0pt 300.0pt; mso-para-margin-left: 6.0gd; mso-layout-grid-align: none">&lt;myField2&gt;This is demo&lt;/myField2&gt;</p>
<p style="MARGIN: 0cm 0cm 0pt 63pt; TEXT-ALIGN: left; tab-stops: 4.5pt 75.0pt 90.0pt 105.0pt 120.0pt 135.0pt 150.0pt 165.0pt 180.0pt 195.0pt 210.0pt 225.0pt 240.0pt 255.0pt 270.0pt 285.0pt 300.0pt; mso-para-margin-left: 6.0gd; mso-layout-grid-align: none">&lt;/myEntity&gt;</p>
<p style="MARGIN: 0cm 0cm 0pt 63pt; TEXT-ALIGN: left; tab-stops: 15.0pt 30.0pt 45.0pt 60.0pt 75.0pt 90.0pt 105.0pt 120.0pt 135.0pt 150.0pt 165.0pt 180.0pt 195.0pt 210.0pt 225.0pt 240.0pt 255.0pt 270.0pt 285.0pt 300.0pt; mso-para-margin-left: 6.0gd; mso-layout-grid-align: none">&lt;myEntity name="test2"&gt;</p>
<p style="MARGIN: 0cm 0cm 0pt 63pt; TEXT-ALIGN: left; tab-stops: 15.0pt 30.0pt 45.0pt 60.0pt 75.0pt 90.0pt 105.0pt 120.0pt 135.0pt 150.0pt 165.0pt 180.0pt 195.0pt 210.0pt 225.0pt 240.0pt 255.0pt 270.0pt 285.0pt 300.0pt; mso-para-margin-left: 6.0gd; mso-layout-grid-align: none">&lt;myField1&gt;2345&lt;/myField1&gt;</p>
<p style="MARGIN: 0cm 0cm 0pt 63pt; TEXT-ALIGN: left; tab-stops: 15.0pt 30.0pt 45.0pt 60.0pt 75.0pt 90.0pt 105.0pt 120.0pt 135.0pt 150.0pt 165.0pt 180.0pt 195.0pt 210.0pt 225.0pt 240.0pt 255.0pt 270.0pt 285.0pt 300.0pt; mso-para-margin-left: 6.0gd; mso-layout-grid-align: none">&lt;myField2&gt;This is demo&lt;/myField2&gt;</p>
<p style="MARGIN: 0cm 0cm 0pt 63pt; TEXT-ALIGN: left; tab-stops: 15.0pt 30.0pt 45.0pt 60.0pt 75.0pt 90.0pt 105.0pt 120.0pt 135.0pt 150.0pt 165.0pt 180.0pt 195.0pt 210.0pt 225.0pt 240.0pt 255.0pt 270.0pt 285.0pt 300.0pt; mso-para-margin-left: 6.0gd; mso-layout-grid-align: none">&lt;/myEntity&gt;</p>
<p style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 52.5pt; TEXT-ALIGN: left; tab-stops: 15.0pt 30.0pt 45.0pt 60.0pt 75.0pt 90.0pt 105.0pt 120.0pt 135.0pt 150.0pt 165.0pt 180.0pt 195.0pt 210.0pt 225.0pt 240.0pt 255.0pt 270.0pt 285.0pt 300.0pt; mso-char-indent-count: 5.0; mso-layout-grid-align: none">&lt;list&gt;</p>
<p style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 42pt; TEXT-ALIGN: left; tab-stops: 15.0pt 30.0pt 45.0pt 60.0pt 75.0pt 90.0pt 105.0pt 120.0pt 135.0pt 150.0pt 165.0pt 180.0pt 195.0pt 210.0pt 225.0pt 240.0pt 255.0pt 270.0pt 285.0pt 300.0pt; mso-char-indent-count: 4.0; mso-layout-grid-align: none">&lt;/data&gt;</p>
<p style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21pt; TEXT-ALIGN: left; tab-stops: 15.0pt 30.0pt 45.0pt 60.0pt 75.0pt 90.0pt 105.0pt 120.0pt 135.0pt 150.0pt 165.0pt 180.0pt 195.0pt 210.0pt 225.0pt 240.0pt 255.0pt 270.0pt 285.0pt 300.0pt; mso-char-indent-count: 2.0; mso-layout-grid-align: none">&lt;/root&gt;</p>
<p style="MARGIN: 0cm 0cm 6pt 21pt; TEXT-ALIGN: left; mso-para-margin-left: 21.0pt; mso-para-margin-top: 0cm; mso-para-margin-right: 0cm; mso-para-margin-bottom: .5gd"> </p>
<p style="MARGIN: 0cm 0cm 6pt 21pt; LAYOUT-GRID-MODE: char; TEXT-ALIGN: left; mso-para-margin-left: 21.0pt; mso-para-margin-top: 0cm; mso-para-margin-right: 0cm; mso-para-margin-bottom: .5gd; mso-layout-grid-align: none">通过Xpath来访问数据，比如</p>
<p style="MARGIN: 0cm 0cm 6pt 21pt; LAYOUT-GRID-MODE: char; TEXT-ALIGN: left; mso-para-margin-left: 21.0pt; mso-para-margin-top: 0cm; mso-para-margin-right: 0cm; mso-para-margin-bottom: .5gd; mso-layout-grid-align: none">/root/data /myEntity将访问到例子1中的&lt;myEntity&gt;实体</p>
<p style="MARGIN: 0cm 0cm 6pt 21pt; LAYOUT-GRID-MODE: char; TEXT-ALIGN: left; mso-para-margin-left: 21.0pt; mso-para-margin-top: 0cm; mso-para-margin-right: 0cm; mso-para-margin-bottom: .5gd; mso-layout-grid-align: none">/root/data/myEntity/ myField1 将访问到例子1中的myField1，结果为1234</p>
<p style="MARGIN: 0cm 0cm 6pt 21pt; LAYOUT-GRID-MODE: char; TEXT-ALIGN: left; mso-para-margin-left: 21.0pt; mso-para-margin-top: 0cm; mso-para-margin-right: 0cm; mso-para-margin-bottom: .5gd; mso-layout-grid-align: none">/root/data/list/myEntity[@name="test1"]将访问例子2中的&lt;myEntity name="test1"&gt; 实体</p>
<p style="MARGIN: 0cm 0cm 0pt 39pt; TEXT-INDENT: -18pt; mso-list: l0 level1 lfo1; tab-stops: list 39.0pt">/root/data/list/myEntity[@name="test1"]/myField1将访问例子2中的myField1，值为1234</p>
<img src ="http://www.blogjava.net/liuspring/aggbug/229672.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/liuspring/" target="_blank">猪</a> 2008-09-18 13:48 <a href="http://www.blogjava.net/liuspring/archive/2008/09/18/229672.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>普元培训第四天</title><link>http://www.blogjava.net/liuspring/archive/2008/09/18/229616.html</link><dc:creator>猪</dc:creator><author>猪</author><pubDate>Thu, 18 Sep 2008 03:19:00 GMT</pubDate><guid>http://www.blogjava.net/liuspring/archive/2008/09/18/229616.html</guid><wfw:comment>http://www.blogjava.net/liuspring/comments/229616.html</wfw:comment><comments>http://www.blogjava.net/liuspring/archive/2008/09/18/229616.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/liuspring/comments/commentRss/229616.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/liuspring/services/trackbacks/229616.html</trackback:ping><description><![CDATA[
<p>第四天还没来得及写呢，现在已经是第五天了呵呵</p>
<p>昨天临时以前的项目要改写东西，听的断断续续</p>
<p>还是一些关于工作流的知识，只是更加复杂一下，跟着文档一个劲儿的复制黏贴</p>
<p>也不知道所以然</p>
<p>据说下午还要考试，晕</p>
<img src ="http://www.blogjava.net/liuspring/aggbug/229616.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/liuspring/" target="_blank">猪</a> 2008-09-18 11:19 <a href="http://www.blogjava.net/liuspring/archive/2008/09/18/229616.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>普元培训第三天</title><link>http://www.blogjava.net/liuspring/archive/2008/09/16/229228.html</link><dc:creator>猪</dc:creator><author>猪</author><pubDate>Tue, 16 Sep 2008 10:22:00 GMT</pubDate><guid>http://www.blogjava.net/liuspring/archive/2008/09/16/229228.html</guid><wfw:comment>http://www.blogjava.net/liuspring/comments/229228.html</wfw:comment><comments>http://www.blogjava.net/liuspring/archive/2008/09/16/229228.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/liuspring/comments/commentRss/229228.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/liuspring/services/trackbacks/229228.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: 今天接着培训普元EOS讲rishWeb和工作流上午实现了一个在一个table中实现增删改查，有个控件datacell，一下子就把我搞蒙了， 一个劲儿的复制黏贴，也不知道哪是哪，看起来好像类似与那个.net中的那个DataGrid，关键是还不大明白那些输入输出参数应该以什么套路配置。应该是在开始的时候就配置输入输出参数，但是又是如何跳回到jsp的呢，&lt;datacell:datacell ...&nbsp;&nbsp;<a href='http://www.blogjava.net/liuspring/archive/2008/09/16/229228.html'>阅读全文</a><img src ="http://www.blogjava.net/liuspring/aggbug/229228.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/liuspring/" target="_blank">猪</a> 2008-09-16 18:22 <a href="http://www.blogjava.net/liuspring/archive/2008/09/16/229228.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>第一次使用Subversion，Attempted to lock an already-locked dir</title><link>http://www.blogjava.net/liuspring/archive/2008/09/15/229049.html</link><dc:creator>猪</dc:creator><author>猪</author><pubDate>Mon, 15 Sep 2008 13:24:00 GMT</pubDate><guid>http://www.blogjava.net/liuspring/archive/2008/09/15/229049.html</guid><wfw:comment>http://www.blogjava.net/liuspring/comments/229049.html</wfw:comment><comments>http://www.blogjava.net/liuspring/archive/2008/09/15/229049.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/liuspring/comments/commentRss/229049.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/liuspring/services/trackbacks/229049.html</trackback:ping><description><![CDATA[一直苦恼与不能实现广域网的版本控制，终于发现Google code就提供这种服务，它使用Subversion来控制版本，下了一个<a title="TortoiseSVN 1.5.1" href="http://www.subversion.org.cn/?action-viewnews-itemid-67"><span style="font-size: 12px; text-decoration: none;">TortoiseSVN 1.5.1 </span></a><br />
装上，捣鼓了半天终于上传上Google code了，哈哈。有成就感<br />
这两天有搞了个eclipse插件<a title="subclipse" href="http://subclipse.tigris.org/">subclipse</a>，运行起来以后无论commit还是update都提示错误：<br />
<br />
<strong>Attempted to lock an already-locked dir</strong><br />
<br />
通过搜索，解决办法是 执行clearup操作，就好了<br />
记录在这，Subversion还要继续研究<br />
<br />
<img src ="http://www.blogjava.net/liuspring/aggbug/229049.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/liuspring/" target="_blank">猪</a> 2008-09-15 21:24 <a href="http://www.blogjava.net/liuspring/archive/2008/09/15/229049.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>普元EOS培训第二天</title><link>http://www.blogjava.net/liuspring/archive/2008/09/11/228446.html</link><dc:creator>猪</dc:creator><author>猪</author><pubDate>Thu, 11 Sep 2008 13:16:00 GMT</pubDate><guid>http://www.blogjava.net/liuspring/archive/2008/09/11/228446.html</guid><wfw:comment>http://www.blogjava.net/liuspring/comments/228446.html</wfw:comment><comments>http://www.blogjava.net/liuspring/archive/2008/09/11/228446.html#Feedback</comments><slash:comments>6</slash:comments><wfw:commentRss>http://www.blogjava.net/liuspring/comments/commentRss/228446.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/liuspring/services/trackbacks/228446.html</trackback:ping><description><![CDATA[
<p>今天剖析了昨天三下两下生成的增删改查的代码（能看到的代码也仅仅限于jsp页面中的一些标签），其他的要看的话都是xml，要用EOS的设计器看才是类似于流程图的东西</p>
<p>感觉看不到亲切的java代码很不爽，呵呵</p>
<p>然后练习自定义运算逻辑，这下自己写类了呵呵，eos能够由向导自动生成类和方法体，就像Myeclipse中新建struts的action一样，发现eos的方法都是静态的，都是返回一个int整型值，参数列表也都是Document doc, BizContext param，看起来只有方法名可以自定义了，呵呵！</p>
<p>之前说过普元这套东西都是用xml格式传递参数的，这里就是从param中获取xml，然后拆解每个要用到的节点，来获取传入的参数，然后经过处理后把返回值再放到xml节点中，好费劲。</p>
<p>然后是handler，为了灵活的加入新的处理，可以在一个业务逻辑的前后加入多个handler,跟一般的过滤器写法没什么差别。</p>
<p>然后是jsp Tag自定义，也是继承了javax.servlet.jsp.tagext.TagSupport，没有普元的东西</p>
<p>再然后是复杂查询，多表查询，他是创建一个查询实体，就是视图啦</p>
<p>一天下来对普元EOS了解的多了些，它以方法为单位作为构成构件，以达到重用的目的，各个层之间以xml格式作为联系，开发人员基本上已图形化开发，不接触底层技术，给程序员的门槛降低了（大学生就业更难了呵呵），开发系统开始工业化，把零件装起来，螺丝拧上就OK了</p>
<p>可能经历实际开发了，会有多一些不一样的感触吧</p>
<p>还是没闹明白难道这就是所谓SOA吗？？？</p>
<img src ="http://www.blogjava.net/liuspring/aggbug/228446.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/liuspring/" target="_blank">猪</a> 2008-09-11 21:16 <a href="http://www.blogjava.net/liuspring/archive/2008/09/11/228446.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>普元EOS培训第一天</title><link>http://www.blogjava.net/liuspring/archive/2008/09/10/228197.html</link><dc:creator>猪</dc:creator><author>猪</author><pubDate>Wed, 10 Sep 2008 09:47:00 GMT</pubDate><guid>http://www.blogjava.net/liuspring/archive/2008/09/10/228197.html</guid><wfw:comment>http://www.blogjava.net/liuspring/comments/228197.html</wfw:comment><comments>http://www.blogjava.net/liuspring/archive/2008/09/10/228197.html#Feedback</comments><slash:comments>7</slash:comments><wfw:commentRss>http://www.blogjava.net/liuspring/comments/commentRss/228197.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/liuspring/services/trackbacks/228197.html</trackback:ping><description><![CDATA[<p class="MsoNormal"><span style="font-family: 宋体;">普元</span><span lang="EN-US">EOS</span><span style="font-family: 宋体;">，面向构件的开发</span></p>
<p class="MsoNormal"><span style="font-family: 宋体;">公司要购进普元的EOS开发工具，组织为期5天的培训<br />
</span></p>
<p class="MsoNormal"><span style="font-family: 宋体;">为了今天的培训我把我的笔记本系统都重装了，折腾了半天装数据库，装</span><span lang="EN-US">EOS</span><span style="font-family: 宋体;">，装</span><span lang="EN-US">EOS</span><span style="font-family: 宋体;">补丁，不知道干嘛不做一个集成了补丁的安装包</span></p>
<p class="MsoNormal"><span style="font-family: 宋体;">安装过程中要配置数据库，要初始化数据库，会向数据库中自动建好多表，然后安装成功后可以在服务控制台管理。</span></p>
<p class="MsoNormal"><span style="font-family: 宋体;">首先做了个</span><span lang="EN-US">HelloWorld</span></p>
<p class="MsoNormal"><span style="font-family: 宋体;">界面就是这样的</span></p>
<p class="MsoNormal"><span style="font-family: 宋体;"><img alt="" src="http://www.blogjava.net/images/blogjava_net/liuspring/eos1.JPG" width="800" height="600" /><br />
</span></p>
<p class="MsoNormal"><span lang="EN-US"><!--[if gte vml 1]><v:shapetype id="_x0000_t75" coordsize="21600,21600" o:spt="75" o:preferrelative="t" path="m@4@5l@4@11@9@11@9@5xe" filled="f" stroked="f">
<v:stroke joinstyle="miter" />
<v:formulas>
<v:f eqn="if lineDrawn pixelLineWidth 0" />
<v:f eqn="sum @0 1 0" />
<v:f eqn="sum 0 0 @1" />
<v:f eqn="prod @2 1 2" />
<v:f eqn="prod @3 21600 pixelWidth" />
<v:f eqn="prod @3 21600 pixelHeight" />
<v:f eqn="sum @0 0 1" />
<v:f eqn="prod @6 1 2" />
<v:f eqn="prod @7 21600 pixelWidth" />
<v:f eqn="sum @8 21600 0" />
<v:f eqn="prod @7 21600 pixelHeight" />
<v:f eqn="sum @10 21600 0" />
</v:formulas>
<v:path o:extrusionok="f" gradientshapeok="t" o:connecttype="rect" />
<o:lock v:ext="edit" aspectratio="t" />
</v:shapetype><v:shape id="_x0000_i1025" type="#_x0000_t75" style='width:414.75pt;
height:311.25pt'>
<v:imagedata src="file:///C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp\msohtml1\11\clip_image001.png" o:title="" />
</v:shape><![endif]--><!--[if !vml]--><!--[endif]--></span></p>
<p class="MsoNormal"><span style="font-family: 宋体;">首先新建一个构件包</span><span lang="EN-US">(</span><span style="font-family: 宋体;">面向构件的开发嘛</span><span lang="EN-US">)</span><span style="font-family: 宋体;">，每个构建包下有页面构件</span><span lang="EN-US">page</span><span style="font-family: 宋体;">，展现逻辑构件</span><span lang="EN-US">pr</span><span style="font-family: 宋体;">，业务逻辑构件</span><span lang="EN-US">biz</span><span style="font-family: 宋体;">，数据逻辑构件</span><span lang="EN-US">data</span><span style="font-family: 宋体;">等等。</span></p>
<p class="MsoNormal"><span style="font-family: 宋体;">我的理解就是每个构件就相当于分层架构中的一层，</span><span lang="EN-US">page</span><span style="font-family: 宋体;">就是</span><span lang="EN-US">jsp</span><span style="font-family: 宋体;">页面，</span><span lang="EN-US">pr</span><span style="font-family: 宋体;">是</span><span lang="EN-US">Struts</span><span style="font-family: 宋体;">的</span><span lang="EN-US">action</span><span style="font-family: 宋体;">，</span><span lang="EN-US">biz</span><span style="font-family: 宋体;">是</span><span lang="EN-US">spring</span><span style="font-family: 宋体;">的</span><span lang="EN-US">bean,data</span><span style="font-family: 宋体;">是</span><span lang="EN-US">hibernate</span><span style="font-family: 宋体;">的映射，普元在这之上又进行了封装，以前我们在各个层之间传递数据通常由一个</span><span lang="EN-US">DTO</span><span style="font-family: 宋体;">数据传递对象，而普元在各个层用</span><span lang="EN-US">xml</span><span style="font-family: 宋体;">来传递，普元把普遍通用的实现逻辑处理都封装成了构件，我们只要调用构件就行了。</span></p>
<p class="MsoNormal"><span lang="EN-US"><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></span><span style="font-family: 宋体;">之后又来了复杂点有刺激的，通过向导实现对一个单表的增删改查，向导跟</span><span lang="EN-US">vs.net</span><span style="font-family: 宋体;">中的那个数据连接，数据适配器拖到页面上选择表，选择字段，就自动生成了增删改查，只是</span><span lang="EN-US">vs.net</span><span style="font-family: 宋体;">中可以看到生成的</span><span lang="EN-US">C#</span><span style="font-family: 宋体;">的代码，而普元生成的只是一堆</span><span lang="EN-US">xml</span><span style="font-family: 宋体;">。</span></p>
<p class="MsoNormal"><span lang="EN-US"><!--[if gte vml 1]><v:shape id="_x0000_i1026" type="#_x0000_t75" style='width:288.75pt;height:274.5pt'>
<v:imagedata src="file:///C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp\msohtml1\11\clip_image003.png" o:title="" />
</v:shape><![endif]--><!--[if !vml]--><img alt="" src="http://www.blogjava.net/images/blogjava_net/liuspring/eos2.JPG" width="388" height="372" /><br />
<!--[endif]--></span></p>
<p class="MsoNormal"><span style="font-family: 宋体;">原来一天未必能完成的事，现在十分钟做完，能傻瓜的都傻瓜了，真的也要下岗了。</span></p>
<p class="MsoNormal"><span style="font-family: 宋体;">哦，对了，这些和</span><span lang="EN-US">SOA</span><span style="font-family: 宋体;">怎么联系上呢？</span></p>
<img src ="http://www.blogjava.net/liuspring/aggbug/228197.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/liuspring/" target="_blank">猪</a> 2008-09-10 17:47 <a href="http://www.blogjava.net/liuspring/archive/2008/09/10/228197.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>jsp下载文件的问题</title><link>http://www.blogjava.net/liuspring/archive/2008/09/05/227186.html</link><dc:creator>猪</dc:creator><author>猪</author><pubDate>Fri, 05 Sep 2008 04:49:00 GMT</pubDate><guid>http://www.blogjava.net/liuspring/archive/2008/09/05/227186.html</guid><wfw:comment>http://www.blogjava.net/liuspring/comments/227186.html</wfw:comment><comments>http://www.blogjava.net/liuspring/archive/2008/09/05/227186.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/liuspring/comments/commentRss/227186.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/liuspring/services/trackbacks/227186.html</trackback:ping><description><![CDATA[要提供给客户一个下载xml文件备份的功能<br />
思路确定了<br />
生成xml<br />
在服务器指定目录创建文件<br />
取得文件路径，弹出下载框<br />
<br />
<div id="codee_html" style="background-color: #f9f7ed">
<div style="background: #fdfdfd"><u>Java语言</u>: </div>
<div class="source" style="font-family: 'Courier New','Lucida Console','monospace'; background-color: #f9f7ed" jquery1220589733765="2"><span class="lineno" style="color: #008800; font-style: italic">01</span> &lt;%<span style="color: #a61717; background-color: #e3d2d2">@</span> page contentType=<span style="color: #0000ff">"text/html;charset=UTF-8"</span> language=<span style="color: #0000ff">"java"</span>%&gt;<br />
<span class="lineno" style="color: #008800; font-style: italic">02</span> &lt;%<span style="color: #a61717; background-color: #e3d2d2">@</span> page import=<span style="color: #0000ff">"java.io.*"</span> %&gt;<br />
<span class="lineno" style="color: #008800; font-style: italic">03</span> &lt;%<br />
<span class="lineno" style="color: #008800; font-style: italic">04</span> &nbsp;&nbsp;&nbsp;&nbsp; String pathurl = (String)request.<span style="color: #ff0000">getAttribute</span>(<span style="color: #0000ff">"pathurl"</span>);<br />
<span class="lineno special">05</span> &nbsp;&nbsp;&nbsp;&nbsp; <span style="font-weight: bold; color: #000080">if</span>(pathurl !=<span style="font-weight: bold; color: #000080">null</span> &amp;&amp; !pathurl.<span style="color: #ff0000">equals</span>(<span style="color: #0000ff">""</span>)){<br />
<span class="lineno" style="color: #008800; font-style: italic">06</span> &nbsp;&nbsp;&nbsp; <br />
<span class="lineno" style="color: #008800; font-style: italic">07</span> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; String addressReport = application.<span style="color: #ff0000">getRealPath</span>(<span style="color: #0000ff">"/"</span>)+<span style="color: #0000ff">"saveFiles"</span>+File.<span style="color: #ff0000">separator</span>+pathurl;<br />
<span class="lineno" style="color: #008800; font-style: italic">08</span> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <span style="color: #008800; font-style: italic">//String addressReport = PageConstraint.XML_PATH_SEND+pathurl;</span><br />
<span class="lineno" style="color: #008800; font-style: italic">09</span> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; addressReport = addressReport.<span style="color: #ff0000">replace</span>(File.<span style="color: #ff0000">separator</span>,File.<span style="color: #ff0000">separator</span>+File.<span style="color: #ff0000">separator</span>);<br />
<span class="lineno special">10</span> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br />
<span class="lineno" style="color: #008800; font-style: italic">11</span> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <span style="color: #008800; font-style: italic">//&nbsp;&nbsp; 设置响应头和下载保存的文件名&nbsp; </span><br />
<span class="lineno" style="color: #008800; font-style: italic">12</span> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; response.<span style="color: #ff0000">setContentType</span>(<span style="color: #0000ff">"APPLICATION/OCTET-STREAM;charset=UTF-8"</span>);&nbsp; <br />
<span class="lineno" style="color: #008800; font-style: italic">13</span> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; response.<span style="color: #ff0000">setHeader</span>(<span style="color: #0000ff">"Content-Disposition"</span>,&nbsp; <br />
<span class="lineno" style="color: #008800; font-style: italic">14</span> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <span style="color: #0000ff">"attachment;&nbsp;&nbsp; filename=\""</span>&nbsp;&nbsp; +&nbsp;&nbsp; pathurl&nbsp;&nbsp; +&nbsp;&nbsp; <span style="color: #0000ff">"\""</span>);&nbsp; <br />
<span class="lineno special">15</span> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br />
<span class="lineno" style="color: #008800; font-style: italic">16</span> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <span style="color: #008800; font-style: italic">//&nbsp;&nbsp; 打开指定文件的流信息&nbsp; </span><br />
<span class="lineno" style="color: #008800; font-style: italic">17</span> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; java.<span style="color: #ff0000">io</span>.<span style="color: #ff0000">FileInputStream</span>&nbsp;&nbsp; fileInputStream&nbsp;&nbsp; =&nbsp; <br />
<span class="lineno" style="color: #008800; font-style: italic">18</span> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <span style="font-weight: bold; color: #000080">new</span>&nbsp;&nbsp; java.<span style="color: #ff0000">io</span>.<span style="color: #ff0000">FileInputStream</span>(addressReport);&nbsp; <br />
<span class="lineno" style="color: #008800; font-style: italic">19</span> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br />
<span class="lineno special">20</span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span style="color: #008800; font-style: italic">写出流信息&nbsp; </span><br />
<span class="lineno" style="color: #008800; font-style: italic">21</span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <span style="color: #008800; font-style: italic">int&nbsp;&nbsp; i;&nbsp; </span><br />
<span class="lineno" style="color: #008800; font-style: italic">22</span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <span style="color: #008800; font-style: italic">while&nbsp;&nbsp; ((i=fileInputStream.read())&nbsp;&nbsp; !=&nbsp;&nbsp; -1)&nbsp;&nbsp; {&nbsp; </span><br />
<span class="lineno" style="color: #008800; font-style: italic">23</span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<span style="color: #008800; font-style: italic">out.write(i);&nbsp; </span><br />
<span class="lineno" style="color: #008800; font-style: italic">24</span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <span style="color: #008800; font-style: italic">}</span><br />
<span class="lineno special">25</span> &nbsp;&nbsp;&nbsp; <br />
<span class="lineno" style="color: #008800; font-style: italic">26</span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <span style="color: #008800; font-style: italic">fileInputStream.close();&nbsp; </span><br />
<span class="lineno" style="color: #008800; font-style: italic">27</span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <span style="color: #008800; font-style: italic">out.close(); </span><br />
<span class="lineno" style="color: #008800; font-style: italic">28</span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br />
<em><font color="#008800">29</font></em>&nbsp;&nbsp;&nbsp;&nbsp; }<br />
<span class="lineno" style="color: #008800; font-style: italic">30</span>&nbsp;&nbsp; %&gt;<br />
</div>
</div>
<br />
这么写在jsp文件中的代码，开始试验没有问题，但是如果xml中有中文，就会是乱码，xml文件是使用utf8生成的，猜想可能是在流读取的时候编码不对，于是在网上搜得了下面这样的写法，通过InputStreamReader设置了编码UTF-8<br />
测试成功<br />
<br />
<div id="codee_html" style="background-color: #f9f7ed">
<div style="background: #fdfdfd"><u>Java语言</u>: <br />
<span class="lineno" style="color: #008800; font-style: italic">01</span> &lt;%<span style="color: #a61717; background-color: #e3d2d2">@</span> page contentType=<span style="color: #0000ff">"text/html;charset=UTF-8"</span> language=<span style="color: #0000ff">"java"</span>%&gt;<br />
<span class="lineno" style="color: #008800; font-style: italic">02</span> &lt;%<span style="color: #a61717; background-color: #e3d2d2">@</span> page import=<span style="color: #0000ff">"java.io.*"</span> %&gt;<br />
<span class="lineno" style="color: #008800; font-style: italic">03</span> &lt;%<br />
<span class="lineno" style="color: #008800; font-style: italic">04</span> &nbsp;&nbsp;&nbsp;&nbsp; String pathurl = (String)request.<span style="color: #ff0000">getAttribute</span>(<span style="color: #0000ff">"pathurl"</span>);<br />
<span class="lineno special">05</span> &nbsp;&nbsp;&nbsp;&nbsp; <span style="font-weight: bold; color: #000080">if</span>(pathurl !=<span style="font-weight: bold; color: #000080">null</span> &amp;&amp; !pathurl.<span style="color: #ff0000">equals</span>(<span style="color: #0000ff">""</span>)){<br />
<span class="lineno" style="color: #008800; font-style: italic">06</span> &nbsp;&nbsp;&nbsp; <br />
<span class="lineno" style="color: #008800; font-style: italic">07</span> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; String addressReport = application.<span style="color: #ff0000">getRealPath</span>(<span style="color: #0000ff">"/"</span>)+<span style="color: #0000ff">"saveFiles"</span>+File.<span style="color: #ff0000">separator</span>+pathurl;<br />
<span class="lineno" style="color: #008800; font-style: italic">08</span> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <span style="color: #008800; font-style: italic">//String addressReport = PageConstraint.XML_PATH_SEND+pathurl;</span><br />
<span class="lineno" style="color: #008800; font-style: italic">09</span> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; addressReport = addressReport.<span style="color: #ff0000">replace</span>(File.<span style="color: #ff0000">separator</span>,File.<span style="color: #ff0000">separator</span>+File.<span style="color: #ff0000">separator</span>);<br />
<span class="lineno special">10</span> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br />
<span class="lineno" style="color: #008800; font-style: italic">11</span> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <span style="color: #008800; font-style: italic">//&nbsp;&nbsp; 设置响应头和下载保存的文件名&nbsp; </span><br />
<span class="lineno" style="color: #008800; font-style: italic">12</span> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; response.<span style="color: #ff0000">setContentType</span>(<span style="color: #0000ff">"APPLICATION/OCTET-STREAM;charset=UTF-8"</span>);&nbsp; <br />
<span class="lineno" style="color: #008800; font-style: italic">13</span> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; response.<span style="color: #ff0000">setHeader</span>(<span style="color: #0000ff">"Content-Disposition"</span>,&nbsp; <br />
<span class="lineno" style="color: #008800; font-style: italic">14</span> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <span style="color: #0000ff">"attachment;&nbsp;&nbsp; filename=\""</span>&nbsp;&nbsp; +&nbsp;&nbsp; pathurl&nbsp;&nbsp; +&nbsp;&nbsp; <span style="color: #0000ff">"\""</span>);&nbsp; <br />
<span class="lineno special">15</span> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br />
<span class="lineno" style="color: #008800; font-style: italic">16</span> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <span style="color: #008800; font-style: italic">//&nbsp;&nbsp; 打开指定文件的流信息&nbsp; </span><br />
<span class="lineno" style="color: #008800; font-style: italic">17</span> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; java.<span style="color: #ff0000">io</span>.<span style="color: #ff0000">FileInputStream</span>&nbsp;&nbsp; fileInputStream&nbsp;&nbsp; =&nbsp; <br />
<span class="lineno" style="color: #008800; font-style: italic">18</span> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <span style="font-weight: bold; color: #000080">new</span>&nbsp;&nbsp; java.<span style="color: #ff0000">io</span>.<span style="color: #ff0000">FileInputStream</span>(addressReport);&nbsp; <br />
<span class="lineno" style="color: #008800; font-style: italic">19</span> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br />
<span class="lineno special">20</span> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <span style="color: #008800; font-style: italic">//&nbsp;&nbsp; 写出流信息&nbsp; </span><br />
<span class="lineno" style="color: #008800; font-style: italic">21</span> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <span style="color: #008800; font-style: italic">//int&nbsp;&nbsp; i;&nbsp; </span><br />
<span class="lineno" style="color: #008800; font-style: italic">22</span> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <span style="color: #008800; font-style: italic">//while&nbsp;&nbsp; ((i=fileInputStream.read())&nbsp;&nbsp; !=&nbsp;&nbsp; -1)&nbsp;&nbsp; {&nbsp; </span><br />
<span class="lineno" style="color: #008800; font-style: italic">23</span> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <span style="color: #008800; font-style: italic">//out.write(i);&nbsp; </span><br />
<span class="lineno" style="color: #008800; font-style: italic">24</span> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <span style="color: #008800; font-style: italic">//}</span><br />
<span class="lineno special">25</span> &nbsp;&nbsp;&nbsp; <br />
<span class="lineno" style="color: #008800; font-style: italic">26</span> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <span style="color: #008800; font-style: italic">//fileInputStream.close();&nbsp; </span><br />
<span class="lineno" style="color: #008800; font-style: italic">27</span> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <span style="color: #008800; font-style: italic">//out.close(); </span><br />
<span class="lineno" style="color: #008800; font-style: italic">28</span> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br />
<span class="lineno" style="color: #008800; font-style: italic">29</span> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; InputStreamReader&nbsp;&nbsp; reader=<span style="font-weight: bold; color: #000080">new</span>&nbsp;&nbsp; InputStreamReader(fileInputStream,<span style="color: #0000ff">"UTF-8"</span>);&nbsp; <br />
<span class="lineno special">30</span> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <span style="font-weight: bold; color: #000080">int</span>&nbsp;&nbsp; i=<span style="color: #0000ff">0</span>;&nbsp; <br />
<span class="lineno" style="color: #008800; font-style: italic">31</span> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <span style="font-weight: bold; color: #000080">while</span>((i=reader.<span style="color: #ff0000">read</span>())!=-<span style="color: #0000ff">1</span>){&nbsp; <br />
<span class="lineno" style="color: #008800; font-style: italic">32</span> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; out.<span style="color: #ff0000">write</span>(i);<br />
<span class="lineno" style="color: #008800; font-style: italic">33</span> <br />
<span class="lineno" style="color: #008800; font-style: italic">34</span> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }<br />
<span class="lineno special">35</span> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; reader.<span style="color: #ff0000">close</span>();&nbsp; <br />
<span class="lineno" style="color: #008800; font-style: italic">36</span> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; fileInputStream.<span style="color: #ff0000">close</span>(); <br />
<span class="lineno" style="color: #008800; font-style: italic">37</span> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; out.<span style="color: #ff0000">close</span>();&nbsp; <br />
<span class="lineno" style="color: #008800; font-style: italic">38</span> &nbsp;&nbsp;&nbsp; }<br />
<span class="lineno" style="color: #008800; font-style: italic">39</span> &nbsp; %&gt;<br />
</div>
<br />
</div>
<br />
总结：还是对java的流相关只是掌握不清啊，不能熟练运用
<img src ="http://www.blogjava.net/liuspring/aggbug/227186.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/liuspring/" target="_blank">猪</a> 2008-09-05 12:49 <a href="http://www.blogjava.net/liuspring/archive/2008/09/05/227186.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>web.xml中&amp;lt;url-pattern&amp;gt;的3种写法</title><link>http://www.blogjava.net/liuspring/archive/2008/09/01/226073.html</link><dc:creator>猪</dc:creator><author>猪</author><pubDate>Mon, 01 Sep 2008 06:13:00 GMT</pubDate><guid>http://www.blogjava.net/liuspring/archive/2008/09/01/226073.html</guid><wfw:comment>http://www.blogjava.net/liuspring/comments/226073.html</wfw:comment><comments>http://www.blogjava.net/liuspring/archive/2008/09/01/226073.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/liuspring/comments/commentRss/226073.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/liuspring/services/trackbacks/226073.html</trackback:ping><description><![CDATA[<p><strong>①　完全匹配</strong>  <p>&nbsp;&nbsp;&nbsp; &lt;url-pattern&gt;/test/list.do&lt;<strong>/</strong>url-pattern&gt;</p> <p><strong>② 目录匹配</strong>  <blockquote> <p>&nbsp;&nbsp;&nbsp; &lt;url-pattern&gt;/test/*&lt;/url-pattern&gt;<strong> </strong></p></blockquote> <p><strong>③ 扩展名匹配</strong>  <p>&nbsp;&nbsp;&nbsp; &lt;url-pattern&gt;*.do&lt;/url-pattern&gt;</p> <p>servlet-mapping的重要规则：  <p>☆ 容器会首先查找完全匹配，如果找不到，再查找目录匹配，如果也找不到，就查找扩展名匹配。  <p>☆ 如果一个请求匹配多个&#8220;目录匹配&#8221;，容器会选择最长的匹配。</p> <img src ="http://www.blogjava.net/liuspring/aggbug/226073.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/liuspring/" target="_blank">猪</a> 2008-09-01 14:13 <a href="http://www.blogjava.net/liuspring/archive/2008/09/01/226073.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item></channel></rss>