﻿<?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-&lt;span class="style11"&gt;★33°空间‰&lt;/span&gt;-随笔分类-个人心得</title><link>http://www.blogjava.net/yeiwei/category/15465.html</link><description> &lt;span class="style14"&gt;&lt;br&gt;&lt;br&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;----气度影响格局-性格决定命运&lt;br&gt;
 &lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;----智力比知识重要，素质比智力重要，觉悟比素质更重要 &lt;/span&gt;</description><language>zh-cn</language><lastBuildDate>Fri, 23 Mar 2007 05:59:44 GMT</lastBuildDate><pubDate>Fri, 23 Mar 2007 05:59:44 GMT</pubDate><ttl>60</ttl><item><title>Visual C#的Web XML编程</title><link>http://www.blogjava.net/yeiwei/archive/2007/03/22/105518.html</link><dc:creator>圣域飞侠</dc:creator><author>圣域飞侠</author><pubDate>Thu, 22 Mar 2007 03:53:00 GMT</pubDate><guid>http://www.blogjava.net/yeiwei/archive/2007/03/22/105518.html</guid><wfw:comment>http://www.blogjava.net/yeiwei/comments/105518.html</wfw:comment><comments>http://www.blogjava.net/yeiwei/archive/2007/03/22/105518.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/yeiwei/comments/commentRss/105518.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/yeiwei/services/trackbacks/105518.html</trackback:ping><description><![CDATA[<font face="宋体">由于XML的易共享性等众多优点，XML技术越来越多地被应用于企业数据处理等领域，如应用于企业报表、新闻发布、会计数据处理等等。 <br /><br />XML正快速成为从中间层传送数据到桌面的工具，由于XML的数据可以通过中间层代理与多种后端（数据库）源集成，目前绝大多数数据库制造商已全面支持XML技术，提供了各种强大功能处理XML数据。 <br /><br />Microsoft的.NET围绕XML这一核心提供了一个强大而快速的开发工具——C#，它具有前所未有的高开发效率，特别是在XML编程方面。 <br /><br />C#提供了许多相关类处理XML数据，如处理stream的类： XmlReader和XmlWriter； DOM的类：XmlNode、XmlDocument和XmlElement等; Xpath的类：XmlNavigator；XSLT的类：XslTransform。 <br /><br /><ccid_nobr><b>显示XML文件内容</b></ccid_nobr><br /><br />用C#编程实现显示XML文件中信息的方法是使用.NET提供的标准类把XML文件内容读入一个StreamReader类对象中,再用XmlDataDocument类的DataSet读XML的方法去读XML信息到DataSet中，DataSet再以DataView的方式赋给一个Web Form上的DataGrid，最后由DataBind显示数据，具体实现代码如下: <br /><br /><ccid_nobr></ccid_nobr></font>
		<div align="center">
				<table cellspacing="0" bordercolordark="#ffffff" cellpadding="0" width="550" align="center" bordercolorlight="black" border="1">
						<tbody>
								<tr>
										<td class="code" bgcolor="#e6e6e6">using System.Xml;<br /><br />//处理XML必须加的Namespace，还需在References中加System.XML.Dll<br /><br />using System.IO; <br /><br />//读XML文件必须加的Namespace </td>
								</tr>
						</tbody>
				</table>
		</div>
		<br />
		<br />然后在Page_Load中加入如下代码： <br /><br /><ccid_nobr><div align="center"><table cellspacing="0" bordercolordark="#ffffff" cellpadding="0" width="550" align="center" bordercolorlight="black" border="1"><tbody><tr><td class="code" bgcolor="#e6e6e6">protected void Page_Load(object sender, EventArgs e){ <br /><br />string datafile="guest.xml" ; <br /><br />//假设XML文件名为guest.xml<br /><br />StreamReader tyj=new StreamReader(Server.MapPath(datafile));<br /><br />XmlDataDocument datadoc = new XmlDataDocument(); <br /><br />//创建该对象为了读取XML<br /><br />datadoc.DataSet.ReadXml(tyj);<br /><br />//读取guest.xml文件内容<br /><br />DataGrid1.DataSource = datadoc.DataSet.Tables[0].DefaultView;<br /><br />//设置DataGrid数据源<br /><br />DataGrid1.DataBind();<br /><br />//绑定<br /><br />datadoc=null ; <br /><br />//释放资源<br /><br />tyj.Close();}<br /><br />//释放StreamReader类，这非常重要，否则下次打开会显示文件已经被使用 </td></tr></tbody></table></div></ccid_nobr><br /><br />对应于显示用的Web Form中DataGrid的功能，我们需要增加下面的函数： <br /><br /><ccid_nobr><div align="center"><table cellspacing="0" bordercolordark="#ffffff" cellpadding="0" width="550" align="center" bordercolorlight="black" border="1"><tbody><tr><td class="code" bgcolor="#e6e6e6">protected void OnSelectName(object sender,EventArgs e) {<br /><br />Session["select_name"]=(string)DataGrid1.SelectedItem.Cells[1].Text.ToString();<br /><br />//把选定的 DataGrid某行中的一个单元中的值(Name)存入一个会话变量中，以便下一页用<br /><br />Response.Redirect("xml_manage.aspx");} <br /><br />//转到有增加删除功能的管理页 </td></tr></tbody></table></div></ccid_nobr><br /><br />Web Form加入以下代码: <br /><br /><ccid_nobr><div align="center"><table cellspacing="0" bordercolordark="#ffffff" cellpadding="0" width="550" align="center" bordercolorlight="black" border="1"><tbody><tr><td class="code" bgcolor="#e6e6e6"><asp:datagrid id="DataGrid1" runat="server" onselectedindexchanged="OnSelectName"><br /><br /><property name="Columns"><br /><br /><?xml:namespace prefix = asp /?><asp:buttoncolumn text="选择" commandname="Select"></asp:buttoncolumn><br /><br /></property></asp:datagrid></td></tr></tbody></table></div></ccid_nobr><br /><br />代码的作用是当按了“选择”按钮后，执行OnSelectName()中的程序，把选定的 DataGrid中某行中的一个单元中的值(Name)存入一个会话变量中，然后转到下一页。 <br /><br /><ccid_nobr><b>增加XML文件内容</b></ccid_nobr><br /><br />在Web Form中增加相应的几个TextBox和一个用于提交的Button，如本文附图所示，并为这button增加如下代码： <br /><br /><ccid_nobr><div align="center"><table cellspacing="0" bordercolordark="#ffffff" cellpadding="0" width="550" align="center" bordercolorlight="black" border="1"><tbody><tr><td class="code" bgcolor="#e6e6e6">string datafile = "guest.xml" ;XmlDocument xmldocument = new XmlDocument() ;<br /><br />xmldocument.Load(Server.MapPath(datafile)) ; <br /><br />//把guest.xml读到xmldocument中<br /><br />DocumentNavigator navigator = new DocumentNavigator(xmldocument) ;<br /><br />//最重要的类<br /><br />navigator.MoveToDocumentElement() ;<br /><br />navigator.Insert(System.Xml.TreePosition.FirstChild, XmlNodeType.Element, "Guest","","") ;//插入节点Guest<br /><br />navigator.Insert(System.Xml.TreePosition.FirstChild, XmlNodeType.Element, "Name","","") ;<br /><br />navigator.Insert(System.Xml.TreePosition.FirstChild, XmlNodeType.Text,"Name","","") ;<br /><br />navigator.Value=Name.Text ; <br /><br />//为该节点赋值<br /><br />navigator.MoveToParent() ; <br /><br />//返回父节点 Guest<br /><br />……<br /><br />//使用同类语句，在元素Name下插入另一些元素如Country、E-mail地址和留言等<br /><br />xmldocument.Save(Server.MapPath(datafile));<br /><br />//最后保存这个XML文档<br /><br />navigator=null ;<br /><br />xmldocument=null ; <br /><br />//释放XML文档，这样其他程序可以用它 </td></tr></tbody></table></div></ccid_nobr><br /><br />上述代码使用DocumentNavigator类增加元素和内容，注意使用后要释放资源。 <br /><br /><ccid_nobr><b>删除XML文件内容 </b></ccid_nobr><br /><br />删除选定记录，对于你上面选择的节点，下面代码可查找到该节点并清除选中的信息: <br /><br /><ccid_nobr><div align="center"><table cellspacing="0" bordercolordark="#ffffff" cellpadding="0" width="550" align="center" bordercolorlight="black" border="1"><tbody><tr><td class="code" bgcolor="#e6e6e6">string datafile = "guest.xml" ;<br /><br />XmlDocument xmldocument = new XmlDocument() ;<br /><br />xmldocument.Load(Server.MapPath(datafile)) ; <br /><br />//把guest.xml读到xmldocument中<br /><br />DocumentNavigator navigator = new DocumentNavigator(xmldocument) ;<br /><br />navigator.MoveToDocumentElement() ;<br /><br />navigator.Select("/Guests/Guest[Name='"+Session["select_name"]+"']");<br /><br />//参数是Xpath<br /><br />navigator.RemoveSelected(); <br /><br />//执行删除<br /><br />xmldocument.Save(Server.MapPath(datafile));<br /><br />//最后保存这个XML文档<br /><br />navigator=null;<br /><br />//释放类<br /><br />xmldocument=null ; <br /><br />//释放XML文档，这样其他程序可以用它 </td></tr></tbody></table></div></ccid_nobr><br /><br />如需将XML文件中所有信息清除，使用“navigator.RemoveChildren();”语句即可实现。 <br /><br /><ccid_nobr><b>结论</b></ccid_nobr><br /><br />综上可知，C#编写XML应用程序不但快捷而且方便，在编写ASP.NET数据库应用程序时，用XML文件替代一些小的Table，能减少许多数据库存取连接，也能让其他网络程序更易使用这些数据。 <br /><br />目前XML的主要瓶颈在于文件系统的读出或写入，故应使用更多内存和缓存方式，如果信息量不是巨大无比且修改量也较小，而浏览量巨大的话，使用XML方法将是很好的选择；相反，如数据量巨大，应考虑使用支持XML的数据库，无论你使用ADO+连接其他数据库，还是使用SQL server，C#中都有直接的类函数可让这些数据库中的信息直接和XML交互访问。 <br /><img src ="http://www.blogjava.net/yeiwei/aggbug/105518.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/yeiwei/" target="_blank">圣域飞侠</a> 2007-03-22 11:53 <a href="http://www.blogjava.net/yeiwei/archive/2007/03/22/105518.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>20070316</title><link>http://www.blogjava.net/yeiwei/archive/2007/03/16/104176.html</link><dc:creator>圣域飞侠</dc:creator><author>圣域飞侠</author><pubDate>Fri, 16 Mar 2007 02:50:00 GMT</pubDate><guid>http://www.blogjava.net/yeiwei/archive/2007/03/16/104176.html</guid><wfw:comment>http://www.blogjava.net/yeiwei/comments/104176.html</wfw:comment><comments>http://www.blogjava.net/yeiwei/archive/2007/03/16/104176.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/yeiwei/comments/commentRss/104176.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/yeiwei/services/trackbacks/104176.html</trackback:ping><description><![CDATA[<p>   秋天的黄昏，乌鸦返巢，藤缠老树，失去依拖的游子，面对这样的景色，不能不触动愁思。远处，小桥流水，村舍人家，显得宁谐温馨。<br />  雨声晓梦，举目窗外，但见翠竹，苍梧枝叶分明，格外清新。细雨蒙蒙，山峦若隐若现，忽明忽暗，浅淡素雅。令人心驰神往，宠辱皆忘。</p><img src ="http://www.blogjava.net/yeiwei/aggbug/104176.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/yeiwei/" target="_blank">圣域飞侠</a> 2007-03-16 10:50 <a href="http://www.blogjava.net/yeiwei/archive/2007/03/16/104176.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>Wap相关资料下载</title><link>http://www.blogjava.net/yeiwei/archive/2007/03/16/104161.html</link><dc:creator>圣域飞侠</dc:creator><author>圣域飞侠</author><pubDate>Fri, 16 Mar 2007 02:02:00 GMT</pubDate><guid>http://www.blogjava.net/yeiwei/archive/2007/03/16/104161.html</guid><wfw:comment>http://www.blogjava.net/yeiwei/comments/104161.html</wfw:comment><comments>http://www.blogjava.net/yeiwei/archive/2007/03/16/104161.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/yeiwei/comments/commentRss/104161.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/yeiwei/services/trackbacks/104161.html</trackback:ping><description><![CDATA[[download=http://download.edohc.com/download/中国联通“互动视界”搜索接口规范.rar]中国联通“互动视界”搜索接口规范[/download]<br /><div style="FONT-SIZE: 14px; WIDTH: 580px; LINE-HEIGHT: 160%">[download=http://download.edohc.com/download/wapwentidaquan.rar]WAP常见问题问答大全.rar[/download]<br />[download=http://download.edohc.com/download/wapjianzhanjichu.rar]WAP建站基础教程.doc[/download]<br />[download=http://download.edohc.com/download/WAP开发问答大全.rar]WAP开发问答大全.rar[/download]</div><br /><img src ="http://www.blogjava.net/yeiwei/aggbug/104161.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/yeiwei/" target="_blank">圣域飞侠</a> 2007-03-16 10:02 <a href="http://www.blogjava.net/yeiwei/archive/2007/03/16/104161.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>WCDMA与GSM系统规划差异性分析</title><link>http://www.blogjava.net/yeiwei/archive/2006/10/09/74006.html</link><dc:creator>圣域飞侠</dc:creator><author>圣域飞侠</author><pubDate>Mon, 09 Oct 2006 02:56:00 GMT</pubDate><guid>http://www.blogjava.net/yeiwei/archive/2006/10/09/74006.html</guid><wfw:comment>http://www.blogjava.net/yeiwei/comments/74006.html</wfw:comment><comments>http://www.blogjava.net/yeiwei/archive/2006/10/09/74006.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/yeiwei/comments/commentRss/74006.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/yeiwei/services/trackbacks/74006.html</trackback:ping><description><![CDATA[<span class="myp111">
				<font id="zoom">GSM系统是目前全球覆盖范围最广的第二代无线网络，它采用TDMA(时分多址)接入方式，即在一个载频信道内，按相同的时间间隔划分成每帧若干时隙的固定循环周期，每个时隙承载一个业务用户信息和必要的信令。这样，一个载频信道由若干个用户按时间顺序依次占用，以不同时隙作为区分不同用户的方式。　　 <br /><br /><b>GSM的特征</b>　 <br /><br />在GSM系统中，每个载频信道带宽为200KHz，每帧8个时隙，即理论上可同时为8个用户提供传输通道，时隙长度0.577ms，每帧时长4.615ms。WCDMA系统作为第三代无线网络的主要标准之一，将高速移动接入和基于互联网协议的服务结合起来，在提高无线频率利用效率的同时，为用户提供内容更丰富的无线通信服务。WCDMA的多址接入方式为CDMA，即码分多址接入方式，它是在扩频通信技术上发展起来的一种移动通信多址接入技术。 <br /><br />原理是基于扩频技术，将需传送的具有一定信号带宽的信息数据，用一个带宽远大于信息带宽的高速伪随机码进行调制，使原数据信号的带宽被扩展，再经载波调制并发送出去。利用不同伪随机码序列之间的自相关特性和互相关特性，接收端作相关处理，把宽带信号还原成原信息数据的窄带信号即解扩。不同用户分配不同的扩频码作为区分标志，达到在同载频内多用户互不干扰且同时通信的目的。在WCDMA网络中，一个载频的带宽是5MHz。由于CDMA接入方式具有很好的抗干扰能力，它的各个小区使用相同的载频。 <br /><br />WCDMA系统是基于CDMA接入方式的网络，其技术特点更接近CDMA，因而与GSM存在诸多不同。 <br /><br /><b>WCDMA的独特优势</b><br /><br />WCDMA系统能提供比GSM质量高的语音服务，同时具有高速率业务、很好的频谱利用率和非常强的移动能力(软和更软切换)。　　 <br /><br />同时，由于3G网络的综合数据业务的特点，对网络设计提出了更高的要求。北电网络作为全球为数不多的拥有5种无线接入技术(TDMA，GSM，IS-95，WCDMA，CDMA2000)及提供其产品的厂商之一，在全球已为客户建立了300多个移动网络，其中包括分布在9个国家的30多个CDMA运营商建设的CDMA网络，18个国家59个TDMA运营商建设的TDMA网络以及31个国家60多个GSM运营商的GSM网络。　　 <br /><br />同时，北电网络还在给6大泛欧运营商及北美运营商建设WCDMA网络。从这些网络建设中，北电网络已积累了十分丰富的网络建设经验和专长，更深刻地体会到WCDMA、GSM接入技术不同的内涵，本文将从无线网络的设计规划角度来阐述这些不同点及其对无线网络性能的影响。　　 <br /><br /><b>链路预算与上行覆盖</b>　　 <br /><br />链路预算是无线网络规划的基本工具，链路预算的结果决定小区的覆盖半径。我们首先来分析WCDMA和GSM在链路预算方面的差别。　　 <br /><br />GSM系统中，上行链路和下行链路是基本平衡的，小区半径可以由基站下行信号电平高于某一设计要求的门限值决定。WCDMA系统中，上行链路和下行链路的平衡并非网络设计目标。基站功率在下行由小区所有用户及信令共享，因而不会成为覆盖受限链路。相反，手机发射功率是在规范中加以定义的。　　 <br /><br />由于手机发射功率有限，上行链路则成为WCDMA系统覆盖的受限链路。也就是说，小区的最大半径取决于功率上限最小的一类手机。所以WCDMA系统的链路预算通常是指上行链路预算，即从最大允许的上行损耗中除掉路径损耗以外的其他损耗和增益，从而得到最大允许的路径损耗，再将最大允许的路径损耗值带入传播模型中，得到预期的小区覆盖半径和覆盖面积。应该注意，这样得出的小区半径是在无负载情况下的最大小区半径，即空载孤立小区的覆盖半径。由于WCDMA的覆盖区域不像GSM那样由信号电平的绝对值来决定，它的覆盖与系统的负载或干扰水平相关。加入负载和邻近小区干扰后，小区半径会作相应的收缩。在WCDMA的链路预算中，要引入一个参数称之为负载因子，北电网络建议取50%来作为覆盖设计的负载余量。在网络设计中给所有小区均匀加入负载余量，使得系统在实际上非均匀的负载运行状态下仍然能通过小区呼吸调整维持平衡。这是北电网络多年CDMA网络设计、运维、优化过程中的经验总结。这在GSM网络设计中是无须考虑的。</font>
		</span><img src ="http://www.blogjava.net/yeiwei/aggbug/74006.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/yeiwei/" target="_blank">圣域飞侠</a> 2006-10-09 10:56 <a href="http://www.blogjava.net/yeiwei/archive/2006/10/09/74006.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>XML在系统日志设计中的运用</title><link>http://www.blogjava.net/yeiwei/archive/2006/10/09/73963.html</link><dc:creator>圣域飞侠</dc:creator><author>圣域飞侠</author><pubDate>Mon, 09 Oct 2006 01:33:00 GMT</pubDate><guid>http://www.blogjava.net/yeiwei/archive/2006/10/09/73963.html</guid><wfw:comment>http://www.blogjava.net/yeiwei/comments/73963.html</wfw:comment><comments>http://www.blogjava.net/yeiwei/archive/2006/10/09/73963.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/yeiwei/comments/commentRss/73963.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/yeiwei/services/trackbacks/73963.html</trackback:ping><description><![CDATA[存放日志信息的LogMessage.xml文件,放在和执行文件一个目录下<br /><br /><br /><br />&lt;?xml version="1.0" encoding="gb2312"?&gt;<br /><br /><br /><br />&lt;log-File fileName="ObtGcom.log"/&gt;<br /><br /><br /><br />&lt;log-Driver logDriverName="ObtGcomLogDriver"/&gt;<br /><br /><br /><br />&lt;log-Mappings&gt;<br /><br /><br /><br />       &lt;log-Mapping code="VPR1001" logType="warning" logMessage="not printer"/&gt;<br /><br /><br /><br />       &lt;log-Mapping code="VPR1002" logType="warning" logMessage="122System error"/&gt;<br /><br /><br /><br />&lt;/log-Mappings&gt;<br /><br /><br /><br />在程序中首先请include “ObtGcomCommonLog.h”，然后在需要时行日志处理的地方调用<br /><br /><br /><br />ObtGcomCommonLog:: writeMesLog(CString code)方法，code对应于LogMessage.xml中的code<br /><br /><br /><br />在你需要的地方调用ObtGcomCommonLog:: writeMesLog(CString code)方法就OK了。而对于多语言。你只需要改变<br /><br /><br /><br />&lt;?xml version="1.0" encoding="gb2312"?&gt;<br /><br /><br /><br />&lt;log-File fileName="ObtGcom.log"/&gt;<br /><br /><br /><br />&lt;log-Driver logDriverName="ObtGcomLogDriver"/&gt;<br /><br /><br /><br />&lt;log-Mappings&gt;<br /><br /><br /><br />       &lt;log-Mapping code="VPR1001" logType="warning" logMessage="打印要不对"/&gt;<br /><br /><br /><br />       &lt;log-Mapping code="VPR1002" logType="warning" logMessage="系统错误"/&gt;<br /><br /><br /><br />&lt;/log-Mappings&gt;<br /><img src ="http://www.blogjava.net/yeiwei/aggbug/73963.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/yeiwei/" target="_blank">圣域飞侠</a> 2006-10-09 09:33 <a href="http://www.blogjava.net/yeiwei/archive/2006/10/09/73963.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>java 实现pop3 server  源码</title><link>http://www.blogjava.net/yeiwei/archive/2006/09/29/72802.html</link><dc:creator>圣域飞侠</dc:creator><author>圣域飞侠</author><pubDate>Fri, 29 Sep 2006 06:35:00 GMT</pubDate><guid>http://www.blogjava.net/yeiwei/archive/2006/09/29/72802.html</guid><wfw:comment>http://www.blogjava.net/yeiwei/comments/72802.html</wfw:comment><comments>http://www.blogjava.net/yeiwei/archive/2006/09/29/72802.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/yeiwei/comments/commentRss/72802.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/yeiwei/services/trackbacks/72802.html</trackback:ping><description><![CDATA[<font size="1">import java.net.*;   <br /><br />import java.util.*;   <br /><br /><br /><br />public class pop3server{   <br /><br />private static final int SERVER_PORT=110;   <br /><br />private static final int MAX_CLIENT=500;   <br /><br />private ServerSocket listenSocket=null;   <br /><br />private boolean keeprunning=true;   <br /><br />private InetAddress ip;   <br /><br />public static void main(String[] args){   <br /><br />pop3server server=new pop3server();   <br /><br />server.impserver();   <br /><br />}   <br /><br />public void impserver(){   <br /><br />Socket clientSocket=null;   <br /><br />try{   <br /><br />while(keeprunning){   <br /><br />clientSocket=listenSocket.accept();   <br /><br />int numThreads=Thread.activeCount();   <br /><br />System.out.println(numThreads);   <br /><br />manageconnection newhandle=new manageconnection(clientSocket);   <br /><br />Thread newhandlethread=new Thread(newhandle);   <br /><br />newhandlethread.start();   <br /><br />System.out.println("hello");   <br /><br /><br /><br />}   <br /><br />}   <br /><br />catch(IOException excpt){   <br /><br />System.err.println("Sorry ,Failed I/O:"+excpt);   <br /><br />}   <br /><br /><br /><br />}   <br /><br /><br /><br />public pop3server()   <br /><br />{   <br /><br />try{   <br /><br />listenSocket=new ServerSocket(SERVER_PORT,MAX_CLIENT);   <br /><br />}catch(IOException excpt){   <br /><br />System.err.println("SOrry to open port "+SERVER_PORT+":"+excpt);   <br /><br />System.exit(1);   <br /><br />}   <br /><br />}   <br /><br />}   <br /><br /><br /><br />/*follow is manage and process command class*/   <br /><br /><br /><br />class manageconnection implements Runnable{   <br /><br />private static final boolean AUTOFLUSH=true;   <br /><br />private Socket mySocket=null;   <br /><br />private PrintWriter out=null;   <br /><br />private BufferedReader in=null;   <br /><br />private boolean checkedpass=false;   <br /><br />private int msgnum=0;   <br /><br />private long[] msgsize=new long[100];   <br /><br />private long totalsize=0;   <br /><br />private String username=null;   <br /><br />public manageconnection(Socket newSocket){   <br /><br />mySocket=newSocket;   <br /><br />}   <br /><br />public void run(){   <br /><br />String nextline=null;   <br /><br />String password;   <br /><br />int check=0;   <br /><br />int strlen;   <br /><br />String content="Subject:hello";   <br /><br />String command=null;   <br /><br />String auth_user="user";   <br /><br />String arg1;   <br /><br />int arg2=0;   <br /><br />String arg3;   <br /><br />int i=0;   <br /><br />int count=0;   <br /><br />int time=0;   <br /><br />try{Thread.currentThread().sleep(10);   <br /><br />}catch(Exception e){   <br /><br />System.out.println(e);   <br /><br />}   <br /><br />try{   <br /><br />mySocket.setTcpNoDelay(true);   <br /><br />time=mySocket.getSoTimeout();   <br /><br />}catch(SocketException excpt){   <br /><br />System.out.println(excpt);   <br /><br />}   <br /><br />try{   <br /><br />out=new PrintWriter(mySocket.getOutputStream(),AUTOFLUSH);   <br /><br />in=new BufferedReader(new InputStreamReader(mySocket.getInputStream()) <br /><br />   <br /><br />);   <br /><br />/*System.out.println("hello thread1");*/   <br /><br />out.println("+OK"+" TianHua's pop3 server");   <br /><br />try{   <br /><br />while(true){   <br /><br />if(check!=3){   <br /><br />try{   <br /><br />nextline=in.readLine();}catch(Exception excpt){   <br /><br />System.out.println("sorry:"+excpt);   <br /><br />break;   <br /><br />}   <br /><br />System.out.println(count+" "+nextline);   <br /><br /><br /><br />if(nextline.length()&lt;4){ <br /><br />out.println("-ERR"); <br /><br />}else{ <br /><br />command=nextline.substring(0,4); <br /><br />if(command.equalsIgnoreCase("user")){ <br /><br />i=1; <br /><br />} <br /><br />if(command.equalsIgnoreCase("pass")){ <br /><br />i=2; <br /><br />} <br /><br />if(command.equalsIgnoreCase("stat")){ <br /><br />i=3; <br /><br />} <br /><br />if(command.equalsIgnoreCase("quit")){ <br /><br />i=4; <br /><br />} <br /><br />if(command.equalsIgnoreCase("list")){ <br /><br />i=5; <br /><br />} <br /><br />if(command.equalsIgnoreCase("retr")){ <br /><br />i=6; <br /><br />} <br /><br />if(command.equalsIgnoreCase("dele")){ <br /><br />i=7; <br /><br />} <br /><br /><br /><br />switch(i){ <br /><br />case 1:if(check==0){ <br /><br />check=1; <br /><br />if(nextline.length()&lt;5){ <br /><br />out.println("-ERR"); <br /><br />}else{arg1=nextline.substring(5); <br /><br />username=arg1; <br /><br />out.println("+OK"); <br /><br />} <br /><br />}else{out.println("-ERR");} <br /><br />i=0; <br /><br />break; <br /><br />case 2:if(check==1){ <br /><br />if(nextline.length()&lt;5){ <br /><br />out.println("-ERR"); <br /><br />}else{ <br /><br />arg1=nextline.substring(5); <br /><br />password=arg1; <br /><br />if(check(username,password)=='1'){ <br /><br />check=2; <br /><br />/*msgnum=readmail(username);*/ <br /><br />out.println("+OK");}else{ <br /><br />out.println("-ERR"+" sorry auth failed"); <br /><br />check=0;} <br /><br />} <br /><br />}else{out.println("-ERR");} <br /><br />i=0; <br /><br />break; <br /><br />case 3:if(check==2){ <br /><br />msgnum=readmail(username); <br /><br />out.println("+OK"+" "+msgnum+" "+totalsize); <br /><br />}else{ <br /><br />out.println("-ERR"); <br /><br />} <br /><br />i=0; <br /><br />break; <br /><br />case 4:out.println("+OK BYE BYE welcome to TianHua's Mail System next <br /><br /><br /><br />time"); <br /><br />check=3; <br /><br />i=0; <br /><br />break; <br /><br />case 5:if(check==2){ <br /><br />out.println("+OK"); <br /><br />out.println(msgnum+" "+totalsize); <br /><br />int ii,iii=0; <br /><br />for(ii=1;ii&lt;=msgnum;ii++){ <br /><br />out.println(ii+" "+msgsize[iii]); <br /><br />iii++; <br /><br />} <br /><br />out.println("."); <br /><br />}else{ <br /><br />out.println("-ERR"); <br /><br />} <br /><br />i=0; <br /><br />break; <br /><br />case 6:if(check==2){ <br /><br />if(nextline.length()&lt;5){ <br /><br />out.println("-ERR"); <br /><br />}else{ <br /><br />arg1=nextline.substring(5); <br /><br />out.println("+OK"); <br /><br />System.out.println(arg1); <br /><br />printmail(Integer.parseInt(arg1),username); <br /><br />out.print("\r\n"); <br /><br />out.print("."); <br /><br />out.print("\r\n"); <br /><br />boolean st=out.checkError(); <br /><br />System.out.println(st); <br /><br />/*if(nextline.length()&lt;6){ <br /><br />out.println("-ERR"); <br /><br />}else{ <br /><br />try{ <br /><br />arg2=Integer.parseInt(nextline.substring(5)); <br /><br />}catch(NumberFormatException except) <br /><br />{ <br /><br />out.println("-ERR"); <br /><br />break; <br /><br />} <br /><br />if(msgnum==0){ <br /><br />out.println("-ERR no msg retrived"); <br /><br />} <br /><br />if(arg2&lt;=msgnum){ <br /><br />out.println("+OK"); <br /><br />out.println(content); <br /><br />out.println(""); <br /><br />out.print("."); <br /><br />out.println(); <br /><br />out.println("."); <br /><br />System.out.println("msg finished"); <br /><br />}else{ <br /><br />out.println("no such msg"); <br /><br />} <br /><br />}*/ <br /><br />} <br /><br />}else{out.println("-ERR"); <br /><br />} <br /><br />i=0; <br /><br />System.out.println("retr finished"); <br /><br />break; <br /><br />case 7:if(check==2){ <br /><br />out.println("+OK"); <br /><br />}else{ <br /><br />out.println("-ERR"); <br /><br />} <br /><br />i=0; <br /><br />break; <br /><br />default:out.println("-ERR"); <br /><br />i=0; <br /><br />break; <br /><br /><br /><br /><br /><br />} <br /><br />} <br /><br />}else{ <br /><br />out.close(); <br /><br />in.close(); <br /><br />mySocket.close(); <br /><br />break; <br /><br />} <br /><br /><br /><br />} <br /><br />}catch(NullPointerException excpt){ <br /><br />System.out.println("sorry "+excpt); <br /><br />in.close(); <br /><br />out.close(); <br /><br />mySocket.close(); <br /><br />} <br /><br /><br /><br />}catch(IOException excpt){ <br /><br />System.err.println("Failed I/O:"+excpt); <br /><br />} <br /><br /><br /><br />System.out.println("bye"); <br /><br /><br /><br />} <br /><br />private void printmail(int msgnumber,String uname){ <br /><br />String msgdir="/webmail/userinfo/"; <br /><br />String msgfile=msgdir+uname+"/"+Integer.toString(msgnumber); <br /><br />System.out.println(msgfile); <br /><br />long filepoint=0; <br /><br />try{ <br /><br />RandomAccessFile file=new RandomAccessFile(msgfile,"r"); <br /><br />long msglength=file.length(); <br /><br />while(filepoint&lt;msglength){ <br /><br />String s=file.readLine(); <br /><br />out.println(s); <br /><br />try{ <br /><br />Thread.currentThread().sleep(5); <br /><br />}catch(Exception e){ <br /><br />System.out.println(e); <br /><br />} <br /><br />filepoint=file.getFilePointer(); <br /><br />} <br /><br />}catch(Exception e){ <br /><br />System.out.println(e); <br /><br />} <br /><br /><br /><br />} <br /><br /><br /><br /><br /><br />/*check your username and password*/ <br /><br />private char check(String user,String pass){ <br /><br />String[] arg=new String[2]; <br /><br />int c=0; <br /><br />char value='0'; <br /><br />arg[0]="uname="+user; <br /><br />arg[1]="pass="+pass; <br /><br /><br /><br />try{ <br /><br /><br /><br />Process child=Runtime.getRuntime().exec("/disk2/ftp/pub/login" <br /><br /><br /><br />,arg); <br /><br />InputStream inn =child.getInputStream(); <br /><br />while((c=inn.read())!=-1){ <br /><br />value=(char)c; <br /><br />} <br /><br />inn.close(); <br /><br /><br /><br />try{child.waitFor();}catch(InterruptedException e){ <br /><br /><br /><br />e.printStackTrace(); <br /><br />} <br /><br /><br /><br />}catch(IOException e){ <br /><br />System.err.println(e); <br /><br />} <br /><br />return value; <br /><br /><br /><br />} <br /><br /><br /><br /><br /><br />private int readmail(String uname){ <br /><br />String[] arg=new String[1]; <br /><br />arg[0]="username="+uname; <br /><br />int[] msg=new int[3]; <br /><br />int i=0,j=0; <br /><br />int msgnum=0; <br /><br />int c; <br /><br />try{ <br /><br />Process child=Runtime.getRuntime().exec("/disk2/ftp/pub/readmail", <br /><br /><br /><br />arg); <br /><br />InputStream inn =child.getInputStream(); <br /><br />while((c=inn.read())!=-1){ <br /><br />msg</font>
		<i>
				<font size="1">=c-48; <br /><br />i++; <br /><br />} <br /><br />inn.close(); <br /><br />try{child.waitFor();}catch(InterruptedException e){ <br /><br />e.printStackTrace(); <br /><br />} <br /><br />}catch(IOException e){ <br /><br />System.err.println(e); <br /><br />} <br /><br />for(j=0;j&lt;=i;j++){ <br /><br />msgnum=msgnum+msg[j]; <br /><br />} <br /><br />System.out.println(msgnum); <br /><br />int k=0; <br /><br />try{ <br /><br />for(j=1;j&lt;=msgnum;j++){ <br /><br />RandomAccessFile file=new RandomAccessFile("/webmail/userinfo/"+uname+ <br /><br /><br /><br />"/"+Integer.toString(j),"r"); <br /><br />msgsize[k]=file.length(); <br /><br />totalsize=msgsize[k]+totalsize; <br /><br />System.out.println(msgsize[k]); <br /><br />k++; <br /><br />} <br /><br />}catch(Exception e){ <br /><br />System.out.println(e); <br /><br />} <br /><br />System.out.println(totalsize); <br /><br />return msgnum; <br /><br />} <br /><br /><br /><br />}  </font>
		</i><img src ="http://www.blogjava.net/yeiwei/aggbug/72802.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/yeiwei/" target="_blank">圣域飞侠</a> 2006-09-29 14:35 <a href="http://www.blogjava.net/yeiwei/archive/2006/09/29/72802.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>男人最帅的41个瞬间</title><link>http://www.blogjava.net/yeiwei/archive/2006/09/26/71958.html</link><dc:creator>圣域飞侠</dc:creator><author>圣域飞侠</author><pubDate>Tue, 26 Sep 2006 05:36:00 GMT</pubDate><guid>http://www.blogjava.net/yeiwei/archive/2006/09/26/71958.html</guid><wfw:comment>http://www.blogjava.net/yeiwei/comments/71958.html</wfw:comment><comments>http://www.blogjava.net/yeiwei/archive/2006/09/26/71958.html#Feedback</comments><slash:comments>1</slash:comments><wfw:commentRss>http://www.blogjava.net/yeiwei/comments/commentRss/71958.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/yeiwei/services/trackbacks/71958.html</trackback:ping><description><![CDATA[<p>1.不说话的时候。 <br />沉默但目光专注地看你说话的男人，一定内心丰富，这一刻的男人，因为他身上似乎有一种至命的磁场，让你觉得他酷极了。 </p>
		<p>2.含着半口饮料微笑。 <br />为了回应你，他哪怕嘴里含着咖啡或者美酒，也不急着咽下，先反馈给你一个积极友好的笑容，这样的绅士举止，当然会让你心头顿生暖意与好感。 </p>
		<p>3.果决而内疚地摁灭烟火头。 <br />只是因为你的出现，正在抽烟的他，立即用这一动作欢迎你，无声，但那动作非常男性化，这比为你脱外套拉椅子，更贴心也更有说服力。 </p>
		<p>4.“我干, 你随意”。 <br />酒桌上说这话的男人，豪爽，但不乏柔情，非常善解人意，仿佛可以为你赴汤蹈火，但背影一点也不冰冷。 </p>
		<p>5.“不要在风口接电话”。 <br />他在街头用手机给远方的女友打电话时说了这么一句话，风吹着他的脸，他眯着的眼，很迷人吧！ </p>
		<p>6.一下子强有力地把你拽到怀里。 <br />一切不容置疑，男人的霸气通过一种温暖的手段淋淳尽臻地表现出来，你绝对拒绝不了。 </p>
		<p>7.镜子前拉一下领带。 <br />这时的男人很认真，而且有种片刻的孩子气，这很会激发温存欲望。 </p>
		<p>8.下楼时吹了口哨。 <br />那是一小节美妙但已成他记忆一部分的旋律，女性喜欢考究男人的唇齿，而那一刻，他会满足你的。 </p>
		<p>9.无辜地耸耸肩膀。 <br />喜欢看男人这时的身体语言，每一个细节都令你怜惜疼爱。 </p>
		<p>10.嚼口香糖的男人，有些玩世不恭，特别是NBA的球星，总是忙里偷闲地嚼着口香糖，一种无所谓的感觉，带点男人的“痞”。 </p>
		<p>11.在海滩上躺着晒太阳的男人。 <br />古胴色皮肤，迷离的双眼，你是不是有种“活埋”他的冲动？ </p>
		<p>12.突然把车开到你身边，摇下车窗对你笑，这是许多浪漫故事的开头。 </p>
		<p>13.在寒风中不停跳着等人，双手插在口袋里，领子高高竖起。这一刻，你是否希望你就是他要等的人。 </p>
		<p>14.弯腰轻抚一只摇尾巴的狗。 <br />有爱心的男人，看起来特别舒服。 </p>
		<p>15.掏钱买单的男人，并且说：“不用找了！” </p>
		<p>16.双手从背后变出一朵玫瑰的时候，你一定会认为他是最好的魔术师。也许他改变不了风向，但可以改变你的心情。 </p>
		<p>17.他顽皮地跑，因为他手里拿着你吃剩的蛋糕，他总喜欢分享你的剩菜。 </p>
		<p>18.他做俯卧撑的时候，脸上都是性感的汗珠。很有男人味。 </p>
		<p>19.抱着篮球向你走来。 <br />活力龙，总会给你带去兴奋。 </p>
		<p>20.就职演说前的停顿，目光扫视全场。 <br />大气的男人，很有慑服力。 </p>
		<p>21.坏坏地注视着你，光明正大地暖昧。 <br />这种目光恭维，是种深刻的激光式的抚摸。 </p>
		<p>22.灿烂地笑，关键是露出两排洁白清新的牙齿。 <br />女人的唇，男人的齿，都是性感利器。 </p>
		<p>23.额纹，这是思考或疑问时的皱纹，35岁以上男人，如果没有额纹，那就是如同外婆没有白发。眉宇处如果有个昂扬的“川”字，那就更有内容了。 </p>
		<p>24.奔跑或大步流星。 <br />因为豪迈，也是自信。 </p>
		<p>25.男人刮胡子时。 <br />白色泡沫，非常有遐想空间，青亮的下巴，如果还有美人沟的话，那是种会让女人发出尖叫的性感。 </p>
		<p>26.正在换灯泡或钉钉子的男人。 <br />动手能力强的男人，有种让踏实的感觉。 </p>
		<p>27.教孩子读书弹琴的时候（正式教师除外）。 <br />所以许多贵夫人会与其孩子的钢琴教师发生不伦之恋，原因就在此。 </p>
		<p>28.摘下手套与你握手，热情，但手心不湿。 </p>
		<p>29.愉快地答应你去摘星或赴汤蹈火的时候。 </p>
		<p>30.男人快速做出决定的时候。 <br />最怕男人拖泥带水，当然，床上活动除外。 </p>
		<p>31.男人戴安全帽的时候。一种奇怪的俊朗。 </p>
		<p>32.接吻的男人。 <br />那一刻有种贪婪的魅力，仿佛要一手遮天，独吞天下。 </p>
		<p>33.单手持枪射击的男人。 <br />如果他是光头，效果会更好。 </p>
		<p>34.自嘲，而且会让你一笑。 </p>
		<p>35.穿着一条不用皮带的牛仔裤，当然，腹肌要发达。 </p>
		<p>36.咬紧牙着的时候，那是一张充满张力的刚毅的脸。 <br />“用力”是男人的“第三”性征。 </p>
		<p>37.美好的地勾引你的时候。 <br />不会勾引的男人是残缺的。 </p>
		<p>38.扔掉自己外套，几乎是扑向你的时候。 </p>
		<p>39.兴奋得发抖到缺氧的男人。 <br />这时，你一定会产生一种崇高理想：为他灭火！ </p>
		<p>40.和他打赌，他又输了，这一刻，他非常可爱，他是你胜利成果。 </p>
		<p>41.他说，他并不爱你的时候，这份魅力，最具毒性，小心为是。</p><img src ="http://www.blogjava.net/yeiwei/aggbug/71958.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/yeiwei/" target="_blank">圣域飞侠</a> 2006-09-26 13:36 <a href="http://www.blogjava.net/yeiwei/archive/2006/09/26/71958.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item></channel></rss>