<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:georss='http://www.georss.org/georss' xmlns:gd='http://schemas.google.com/g/2005' xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-4455001994762963770</id><updated>2011-11-27T16:04:56.221-08:00</updated><category term='mmap nopage'/><title type='text'>Case</title><subtitle type='html'>test..</subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://winmanwang.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4455001994762963770/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://winmanwang.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>winman</name><uri>http://www.blogger.com/profile/09980289156415807849</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>14</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-4455001994762963770.post-4517374728539755372</id><published>2009-07-29T01:07:00.000-07:00</published><updated>2009-07-29T01:39:12.790-07:00</updated><title type='text'>Web Dev</title><content type='html'>&lt;!--[if gte mso 9]&gt;&lt;xml&gt;  &lt;w:worddocument&gt;   &lt;w:view&gt;Normal&lt;/w:View&gt;   &lt;w:zoom&gt;0&lt;/w:Zoom&gt;   &lt;w:punctuationkerning/&gt;   &lt;w:drawinggridverticalspacing&gt;7.8 pt&lt;/w:DrawingGridVerticalSpacing&gt;   &lt;w:displayhorizontaldrawinggridevery&gt;0&lt;/w:DisplayHorizontalDrawingGridEvery&gt;   &lt;w:displayverticaldrawinggridevery&gt;2&lt;/w:DisplayVerticalDrawingGridEvery&gt;   &lt;w:validateagainstschemas/&gt;   &lt;w:saveifxmlinvalid&gt;false&lt;/w:SaveIfXMLInvalid&gt;   &lt;w:ignoremixedcontent&gt;false&lt;/w:IgnoreMixedContent&gt;   &lt;w:alwaysshowplaceholdertext&gt;false&lt;/w:AlwaysShowPlaceholderText&gt;   &lt;w:compatibility&gt;    &lt;w:spaceforul/&gt;    &lt;w:balancesinglebytedoublebytewidth/&gt;    &lt;w:donotleavebackslashalone/&gt;    &lt;w:ultrailspace/&gt;    &lt;w:donotexpandshiftreturn/&gt;    &lt;w:adjustlineheightintable/&gt;    &lt;w:breakwrappedtables/&gt;    &lt;w:snaptogridincell/&gt;    &lt;w:wraptextwithpunct/&gt;    &lt;w:useasianbreakrules/&gt;    &lt;w:dontgrowautofit/&gt;    &lt;w:usefelayout/&gt;   &lt;/w:Compatibility&gt;   &lt;w:browserlevel&gt;MicrosoftInternetExplorer4&lt;/w:BrowserLevel&gt;  &lt;/w:WordDocument&gt; &lt;/xml&gt;&lt;![endif]--&gt;&lt;!--[if gte mso 9]&gt;&lt;xml&gt;  &lt;w:latentstyles deflockedstate="false" latentstylecount="156"&gt;  &lt;/w:LatentStyles&gt; &lt;/xml&gt;&lt;![endif]--&gt;&lt;style&gt; &lt;!--  /* Font Definitions */  @font-face  {font-family:宋体;  panose-1:2 1 6 0 3 1 1 1 1 1;  mso-font-alt:SimSun;  mso-font-charset:134;  mso-generic-font-family:auto;  mso-font-pitch:variable;  mso-font-signature:3 135135232 16 0 262145 0;} @font-face  {font-family:"\@宋体";  panose-1:2 1 6 0 3 1 1 1 1 1;  mso-font-charset:134;  mso-generic-font-family:auto;  mso-font-pitch:variable;  mso-font-signature:3 135135232 16 0 262145 0;}  /* Style Definitions */  p.MsoNormal, li.MsoNormal, div.MsoNormal  {mso-style-parent:"";  margin:0cm;  margin-bottom:.0001pt;  mso-pagination:widow-orphan;  font-size:12.0pt;  font-family:"Times New Roman";  mso-fareast-font-family:宋体;  color:windowtext;} h1  {mso-style-next:Normal;  margin-top:12.0pt;  margin-right:0cm;  margin-bottom:3.0pt;  margin-left:0cm;  mso-pagination:widow-orphan;  page-break-after:avoid;  mso-outline-level:1;  font-size:16.0pt;  font-family:Arial;  color:windowtext;  mso-font-kerning:16.0pt;  font-weight:bold;} h2  {mso-style-next:Normal;  margin-top:12.0pt;  margin-right:0cm;  margin-bottom:3.0pt;  margin-left:0cm;  mso-pagination:widow-orphan;  page-break-after:avoid;  mso-outline-level:2;  font-size:14.0pt;  font-family:Arial;  color:windowtext;  font-weight:bold;  font-style:italic;} h3  {mso-style-next:Normal;  margin-top:12.0pt;  margin-right:0cm;  margin-bottom:3.0pt;  margin-left:0cm;  mso-pagination:widow-orphan;  page-break-after:avoid;  mso-outline-level:3;  font-size:13.0pt;  font-family:Arial;  color:windowtext;  font-weight:bold;} a:link, span.MsoHyperlink  {color:blue;  text-decoration:underline;  text-underline:single;} a:visited, span.MsoHyperlinkFollowed  {color:purple;  text-decoration:underline;  text-underline:single;} p.MsoPlainText, li.MsoPlainText, div.MsoPlainText  {margin:0cm;  margin-bottom:.0001pt;  mso-pagination:widow-orphan;  font-size:10.0pt;  font-family:"Courier New";  mso-fareast-font-family:宋体;  color:windowtext;} p  {margin-top:2.25pt;  margin-right:0cm;  margin-bottom:12.75pt;  margin-left:0cm;  mso-pagination:widow-orphan;  font-size:9.0pt;  font-family:Arial;  mso-fareast-font-family:宋体;  color:black;} code  {mso-ansi-font-size:9.0pt;  mso-bidi-font-size:9.0pt;  font-family:"Courier New";  mso-ascii-font-family:"Courier New";  mso-fareast-font-family:宋体;  mso-hansi-font-family:"Courier New";  mso-bidi-font-family:"Courier New";  color:#666666;}  /* Page Definitions */  @page  {mso-page-border-surround-header:no;  mso-page-border-surround-footer:no;} @page Section1  {size:612.0pt 792.0pt;  margin:72.0pt 65.95pt 72.0pt 65.95pt;  mso-header-margin:36.0pt;  mso-footer-margin:36.0pt;  mso-paper-source:0;} div.Section1  {page:Section1;} --&gt; &lt;/style&gt;&lt;!--[if gte mso 10]&gt; &lt;style&gt;  /* Style Definitions */  table.MsoNormalTable  {mso-style-name:"Table Normal";  mso-tstyle-rowband-size:0;  mso-tstyle-colband-size:0;  mso-style-noshow:yes;  mso-style-parent:"";  mso-padding-alt:0cm 5.4pt 0cm 5.4pt;  mso-para-margin:0cm;  mso-para-margin-bottom:.0001pt;  mso-pagination:widow-orphan;  font-size:10.0pt;  font-family:"Times New Roman";  mso-fareast-font-family:"Times New Roman";  mso-ansi-language:#0400;  mso-fareast-language:#0400;  mso-bidi-language:#0400;} &lt;/style&gt; &lt;![endif]--&gt;  &lt;p class="MsoPlainText"&gt;&lt;span  lang="EN-US" style="font-family:宋体;"&gt;c15c0 cafe&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoPlainText"&gt;&lt;span  lang="EN-US" style="font-family:宋体;"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoPlainText"&gt;&lt;span  lang="EN-US" style="font-family:宋体;"&gt;==========================================================&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;h1&gt;&lt;span lang="EN-US"&gt;What is JSP?&lt;/span&gt;&lt;/h1&gt;  &lt;p class="MsoPlainText"&gt;&lt;span  lang="EN-US" style="font-family:宋体;"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoPlainText"&gt;&lt;span  lang="EN-US" style="font-family:宋体;"&gt;In its basic form, a JSP page is simply an HTML web page that contains additional bits of code that execute application logic to generate dynamic content. This application logic may involve JavaBeans, JDBC objects, Enterprise Java Beans (EJB), and Remote Method Invocation (RMI) objects, all of which can be easily accessed from a JSP page.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoPlainText"&gt;&lt;span  lang="EN-US" style="font-family:宋体;"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;h2&gt;&lt;span lang="EN-US"&gt;Features&lt;/span&gt;&lt;/h2&gt;  &lt;p class="MsoPlainText"&gt;&lt;span  lang="EN-US" style="font-family:宋体;"&gt;Because JSP pages are automatically compiled as needed, web authors can make changes to presentation code without recompiling application logic. This makes JSP a more flexible method of generating dynamic web content than Java servlets, whose functionality JavaServer Pages extend.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoPlainText"&gt;&lt;span  lang="EN-US" style="font-family:宋体;"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;h2&gt;&lt;span lang="EN-US"&gt;Relation JSP - Servlet&lt;/span&gt;&lt;/h2&gt;  &lt;p class="MsoPlainText"&gt;&lt;span  lang="EN-US" style="font-family:宋体;"&gt;Enter JavaServer Pages, which are an extension of the Servlet API. In fact, JSP pages are compiled into servlets before they are used, so they have all of the benefits of servlets, including access to Java APIs. Because JSP pages are generally presentation code with application logic embedded in them, they can be thought of as "inside-out" servlets.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoPlainText"&gt;&lt;span  lang="EN-US" style="font-family:宋体;"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;h2&gt;&lt;span lang="EN-US"&gt;Content&lt;/span&gt;&lt;/h2&gt;  &lt;p class="MsoPlainText"&gt;&lt;span  lang="EN-US" style="font-family:宋体;"&gt;HTML tags are processed by a user's web browser to display the page;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoPlainText"&gt;&lt;span  lang="EN-US" style="font-family:宋体;"&gt;JSP tags are used by the web server to generate dynamic content. &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoPlainText"&gt;&lt;span  lang="EN-US" style="font-family:宋体;"&gt;Sample:&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;div  style="border-style: none none none solid; padding: 0cm 0cm 0cm 4pt;color:-moz-use-text-color -moz-use-text-color -moz-use-text-color windowtext;"&gt;  &lt;p style="border: medium none ; padding: 0cm;"&gt;&lt;code&gt;&lt;span lang="EN-US"&gt;&amp;lt;HTML&gt; &lt;/span&gt;&lt;/code&gt;&lt;span style=";font-family:&amp;quot;;"  lang="EN-US"&gt;&lt;br /&gt;&lt;code&gt;&lt;b&gt;&amp;lt;%@ page language="java" imports="java.util.*" %&gt;&lt;/b&gt; &lt;/code&gt;&lt;br /&gt;&lt;br /&gt;&lt;code&gt;&amp;lt;H1&gt;Welcome&amp;lt;/H1&gt; &lt;/code&gt;&lt;br /&gt;&lt;br /&gt;&lt;code&gt;&amp;lt;P&gt;Today is &amp;lt;/P&gt; &lt;/code&gt;&lt;br /&gt;&lt;code&gt;&lt;b&gt;&amp;lt;jsp:useBean id="clock" class="jspCalendar" /&gt;&lt;/b&gt; &lt;/code&gt;&lt;br /&gt;&lt;code&gt;&amp;lt;UL&gt; &lt;/code&gt;&lt;br /&gt;&lt;code&gt;&amp;lt;LI&gt;Day: &lt;b&gt;&amp;lt;%= clock.getDayOfMonth() %&gt;&lt;/b&gt; &lt;/code&gt;&lt;br /&gt;&lt;code&gt;&amp;lt;LI&gt;Year: &lt;b&gt;&amp;lt;%= clock.getYear() %&gt;&lt;/b&gt; &lt;/code&gt;&lt;br /&gt;&lt;code&gt;&amp;lt;/UL&gt; &lt;/code&gt;&lt;br /&gt;&lt;code&gt;&lt;b&gt;&amp;lt;%-- Check for AM or PM --%&gt; &lt;/b&gt;&lt;/code&gt;&lt;/span&gt;&lt;b&gt;&lt;span style="color: rgb(102, 102, 102);" lang="EN-US"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/b&gt;&lt;code&gt;&lt;b&gt;&lt;span lang="EN-US"&gt;&amp;lt;%! int time = Calendar.getInstance().get(Calendar.AM_PM); %&gt;&lt;/span&gt;&lt;/b&gt;&lt;span lang="EN-US"&gt; &lt;/span&gt;&lt;/code&gt;&lt;span style=";font-family:&amp;quot;;"  lang="EN-US"&gt;&lt;br /&gt;&lt;code&gt;&lt;b&gt;&amp;lt;% &lt;/b&gt;&lt;/code&gt;&lt;/span&gt;&lt;b&gt;&lt;span style="color: rgb(102, 102, 102);" lang="EN-US"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/b&gt;&lt;code&gt;&lt;b&gt;&lt;span lang="EN-US"&gt;if (time == Calendar.AM) { &lt;/span&gt;&lt;/b&gt;&lt;/code&gt;&lt;b&gt;&lt;span style="color: rgb(102, 102, 102);" lang="EN-US"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/b&gt;&lt;code&gt;&lt;b&gt;&lt;span lang="EN-US"&gt;%&gt;&lt;/span&gt;&lt;/b&gt;&lt;span lang="EN-US"&gt; &lt;/span&gt;&lt;/code&gt;&lt;span style=";font-family:&amp;quot;;"  lang="EN-US"&gt;&lt;br /&gt;&lt;code&gt;Good Morning &lt;/code&gt;&lt;br /&gt;&lt;code&gt;&lt;b&gt;&amp;lt;%&lt;/b&gt;&lt;/code&gt;&lt;/span&gt;&lt;b&gt;&lt;span style="color: rgb(102, 102, 102);" lang="EN-US"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/b&gt;&lt;code&gt;&lt;b&gt;&lt;span lang="EN-US"&gt;} &lt;/span&gt;&lt;/b&gt;&lt;/code&gt;&lt;b&gt;&lt;span style="color: rgb(102, 102, 102);" lang="EN-US"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/b&gt;&lt;code&gt;&lt;b&gt;&lt;span lang="EN-US"&gt;else { &lt;/span&gt;&lt;/b&gt;&lt;/code&gt;&lt;b&gt;&lt;span style="color: rgb(102, 102, 102);" lang="EN-US"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/b&gt;&lt;code&gt;&lt;b&gt;&lt;span lang="EN-US"&gt;%&gt;&lt;/span&gt;&lt;/b&gt;&lt;span lang="EN-US"&gt; &lt;/span&gt;&lt;/code&gt;&lt;span style=";font-family:&amp;quot;;"  lang="EN-US"&gt;&lt;br /&gt;&lt;code&gt;Good Afternoon &lt;/code&gt;&lt;br /&gt;&lt;code&gt;&lt;b&gt;&amp;lt;%&lt;/b&gt;&lt;/code&gt;&lt;/span&gt;&lt;b&gt;&lt;span style="color: rgb(102, 102, 102);" lang="EN-US"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/b&gt;&lt;code&gt;&lt;b&gt;&lt;span lang="EN-US"&gt;} &lt;/span&gt;&lt;/b&gt;&lt;/code&gt;&lt;b&gt;&lt;span style="color: rgb(102, 102, 102);" lang="EN-US"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/b&gt;&lt;code&gt;&lt;b&gt;&lt;span lang="EN-US"&gt;%&gt;&lt;/span&gt;&lt;/b&gt;&lt;span lang="EN-US"&gt; &lt;/span&gt;&lt;/code&gt;&lt;span style=";font-family:&amp;quot;;"  lang="EN-US"&gt;&lt;br /&gt;&lt;code&gt;&lt;b&gt;&amp;lt;%@ include file="copyright.html" %&gt; &lt;/b&gt;&lt;/code&gt;&lt;br /&gt;&lt;code&gt;&amp;lt;/HTML&gt; &lt;/code&gt;&lt;/span&gt;&lt;/p&gt;  &lt;/div&gt;  &lt;p class="MsoPlainText"&gt;&lt;span  lang="EN-US" style="font-family:宋体;"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;h2&gt;&lt;span lang="EN-US"&gt;Format description&lt;/span&gt;&lt;/h2&gt;  &lt;h3&gt;&lt;span lang="EN-US"&gt;JSP actions (or JSP tags)&lt;/span&gt;&lt;/h3&gt;  &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:宋体;font-size:10pt;"   lang="EN-US"&gt;perform a variety of functions and extend the capabilities of JSP. JSP actions use XML-like syntax, and are used to (among other things) manage JavaBean components. In the sample page, a jsp:useBean action initializes a JavaBean that is used in subsequent portions of the page: &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p&gt;&lt;span style=";font-family:宋体;font-size:10pt;color:#000000;"    lang="EN-US"&gt;&amp;lt;jsp:useBean id=="clock" class=="jspCalendar" /&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p&gt;&lt;span style=";font-family:宋体;font-size:10pt;color:#000000;"    lang="EN-US"&gt;If the sample page had needed to get or set properties of this bean, other JSP actions would have been given, using the following syntax:&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p&gt;&lt;span style=";font-family:宋体;font-size:10pt;color:#000000;"    lang="EN-US"&gt;&amp;lt;jsp:getProperty name="bean" property="property" /&gt;&lt;br /&gt;&amp;lt;jsp:setProperty name="bean" property="property" value="value" /&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;h3&gt;&lt;span lang="EN-US"&gt;Directives&lt;/span&gt;&lt;/h3&gt;  &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:宋体;font-size:10pt;"   lang="EN-US"&gt;instructions that are processed by the JSP engine when the page is compiled to a servlet. Directives are used to set page-level instructions, insert data from external files, and specify custom tag libraries. Directives are defined between &amp;lt;%@ and %&gt;. In the above example, directives define the language of the page (Java), import the Java classes needed by the embedded code, and specify that the contents of an HTML file should be inserted at the bottom of the page: &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p&gt;&lt;span style=";font-family:宋体;font-size:10pt;color:#000000;"    lang="EN-US"&gt;&amp;lt;%@ page language=="java" imports=="java.util.*" %&gt;&lt;br /&gt;&amp;lt;%@ include file=="copyright.html" %&gt; &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;h3&gt;&lt;span lang="EN-US"&gt;Declarations&lt;/span&gt;&lt;/h3&gt;  &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:宋体;font-size:10pt;"   lang="EN-US"&gt;similar to variable declarations in Java, and define variables for subsequent use in expressions or scriptlets. Declarations are defined between &amp;lt;%! and %&gt;. In the above sample page an int is declared and given a value corresponding to the time of day (AM or PM): &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p&gt;&lt;span style=";font-family:宋体;font-size:10pt;color:#000000;"    lang="EN-US"&gt;&amp;lt;%! int time = Calendar.getInstance().get(Calendar.AM_PM); %&gt; &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;h3&gt;&lt;span lang="EN-US"&gt;Expressions&lt;/span&gt;&lt;/h3&gt;  &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:宋体;font-size:10pt;"   lang="EN-US"&gt;variables or constants that are inserted into the data returned by the web server, and are defined with the &amp;lt;%= and %&gt;. In the sample page, expressions make calls on a JavaBean component and insert the resulting data into the page: &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p&gt;&lt;span style=";font-family:宋体;font-size:10pt;color:#000000;"    lang="EN-US"&gt;&amp;lt;%= clock.getDayOfMonth() %&gt;&lt;br /&gt;&amp;lt;%= clock.getYear() %&gt; &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;h3&gt;&lt;span lang="EN-US"&gt;Scriptlets&lt;/span&gt;&lt;/h3&gt;  &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:宋体;font-size:10pt;"   lang="EN-US"&gt;blocks of Java code embedded within a JSP page. Scriptlet code is inserted verbatim into the servlet generated from the page, and is defined between &amp;lt;% and %&gt;. A scriptlet in the above sample determines the time of day and greets the user accordingly: &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p&gt;&lt;span style=";font-family:宋体;font-size:10pt;color:#000000;"    lang="EN-US"&gt;&amp;lt;%&lt;br /&gt;if (time == Calendar.AM) {&lt;br /&gt;%&gt;&lt;br /&gt;Good Morning&lt;br /&gt;&amp;lt;%&lt;br /&gt;}&lt;br /&gt;else {&lt;br /&gt;%&gt;&lt;br /&gt;Good Afternoon&lt;br /&gt;&amp;lt;%&lt;br /&gt;}&lt;br /&gt;%&gt; &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;h3&gt;&lt;span lang="EN-US"&gt;Comments&lt;/span&gt;&lt;/h3&gt;  &lt;p class="MsoNormal"&gt;&lt;span style=";font-family:宋体;font-size:10pt;"   lang="EN-US"&gt;similar to HTML comments, and are stripped from the page by the JSP engine when it is executed. This means that JSP comments are not returned to the user's browser. Unlike HTML comments, which are given between &amp;lt;!-- and --&gt; tags, JSP comments are given between &amp;lt;%-- and --%&gt;. For example: &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p&gt;&lt;span style=";font-family:宋体;font-size:10pt;color:#000000;"    lang="EN-US"&gt;&amp;lt;%-- Check for AM or PM --%&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;h2&gt;&lt;span lang="EN-US"&gt;Custom Tag&lt;/span&gt;&lt;/h2&gt;  &lt;p class="MsoPlainText"&gt;&lt;span  lang="EN-US" style="font-family:宋体;"&gt;Tag handler (implements javax.servlet.jsp.Tag) &amp;amp; tag library descriptor.&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoPlainText"&gt;&lt;span  lang="EN-US" style="font-family:宋体;"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoPlainText"&gt;&lt;span  lang="EN-US" style="font-family:宋体;"&gt;Sample of using custom tag:&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;div  style="border-style: none none none solid; padding: 0cm 0cm 0cm 4pt;color:-moz-use-text-color -moz-use-text-color -moz-use-text-color windowtext;"&gt;  &lt;p class="MsoPlainText" style="border: medium none ; padding: 0cm;"&gt;&lt;code&gt;&lt;span  lang="EN-US" style="font-size:9pt;"&gt;&amp;lt;HTML&gt; &lt;/span&gt;&lt;/code&gt;&lt;span style="color: rgb(102, 102, 102);" lang="EN-US"&gt;&lt;br /&gt;&lt;/span&gt;&lt;code&gt;&lt;b&gt;&lt;span style=";font-family:Arial;font-size:9pt;"   lang="EN-US"&gt;&amp;lt;%@ taglib uri="/tlds/menuDB.tld" prefix="menu" %&gt;&lt;/span&gt;&lt;/b&gt;&lt;/code&gt;&lt;code&gt;&lt;span  lang="EN-US" style="font-size:9pt;"&gt; &lt;/span&gt;&lt;/code&gt;&lt;span style="color: rgb(102, 102, 102);" lang="EN-US"&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;code&gt;&lt;span  lang="EN-US" style="font-size:9pt;"&gt;&amp;lt;H1&gt;Today's Menu&amp;lt;/H1&gt; &lt;/span&gt;&lt;/code&gt;&lt;span style="color: rgb(102, 102, 102);" lang="EN-US"&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;code&gt;&lt;span  lang="EN-US" style="font-size:9pt;"&gt;&amp;lt;P&gt;Lunch&amp;lt;/P&gt; &lt;/span&gt;&lt;/code&gt;&lt;span style="color: rgb(102, 102, 102);" lang="EN-US"&gt;&lt;br /&gt;&lt;/span&gt;&lt;code&gt;&lt;b&gt;&lt;span style=";font-family:Arial;font-size:9pt;"   lang="EN-US"&gt;&amp;lt;%@ include file="&lt;/span&gt;&lt;/b&gt;&lt;/code&gt;&lt;code&gt;&lt;span  lang="EN-US" style="font-size:9pt;"&gt;lunch_menu&lt;/span&gt;&lt;/code&gt;&lt;code&gt;&lt;b&gt;&lt;span style=";font-family:Arial;font-size:9pt;"   lang="EN-US"&gt;.html" %&gt; &lt;/span&gt;&lt;/b&gt;&lt;/code&gt;&lt;span style="color: rgb(102, 102, 102);" lang="EN-US"&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;code&gt;&lt;span  lang="EN-US" style="font-size:9pt;"&gt;&amp;lt;P&gt;Our Special of the Day&amp;lt;/P&gt; &lt;/span&gt;&lt;/code&gt;&lt;span style="color: rgb(102, 102, 102);" lang="EN-US"&gt;&lt;br /&gt;&lt;/span&gt;&lt;code&gt;&lt;b&gt;&lt;span style=";font-family:Arial;font-size:9pt;"   lang="EN-US"&gt;&amp;lt;menu: insertCatchOfDay meal="lunch" &gt; &lt;/span&gt;&lt;/b&gt;&lt;/code&gt;&lt;span style="color: rgb(102, 102, 102);" lang="EN-US"&gt;&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;code&gt;&lt;span  lang="EN-US" style="font-size:9pt;"&gt;&amp;lt;/HTML&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/code&gt;&lt;/p&gt;  &lt;/div&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;b&gt;&lt;span style=";font-family:Arial;font-size:16pt;"   lang="EN-US"&gt;&lt;br /&gt;&lt;/span&gt;&lt;/b&gt;  &lt;h1&gt;&lt;span lang="EN-US"&gt;Applet&lt;/span&gt;&lt;/h1&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;Used in HTML, as a tag “applet”. The Applet class should impl the interface &lt;a href="mk:@MSITStore:C:%5CDocuments%20and%20Settings%5Cweimwang%5CMy%20Documents%5CMy%20eBooks%5Cjava%5Cjdk142.chm::/jdk142/api/java/applet/Applet.html" title="class in java.applet"&gt;java.applet.Applet&lt;/a&gt;/javax.swing.JApplet,&lt;span style=""&gt;  &lt;/span&gt;depends on weather need Swing support.&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;div  style="border-style: none none none solid; padding: 0cm 0cm 0cm 4pt;color:-moz-use-text-color -moz-use-text-color -moz-use-text-color windowtext;"&gt;  &lt;p class="MsoNormal" style="border: medium none ; padding: 0cm;"&gt;&lt;span lang="EN-US"&gt;&amp;lt;html&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="border: medium none ; padding: 0cm;"&gt;&lt;span lang="EN-US"&gt;&lt;span style=""&gt;    &lt;/span&gt;&amp;lt;head&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="border: medium none ; padding: 0cm;"&gt;&lt;span lang="EN-US"&gt;&lt;span style=""&gt;        &lt;/span&gt;&amp;lt;title&gt;Title&amp;lt;/title&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="border: medium none ; padding: 0cm;"&gt;&lt;span lang="EN-US"&gt;&lt;span style=""&gt;    &lt;/span&gt;&amp;lt;/head&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="border: medium none ; padding: 0cm;"&gt;&lt;span lang="EN-US"&gt;&amp;lt;body onload="load()"&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="border: medium none ; padding: 0cm;"&gt;&lt;span  lang="EN-US" style="color:blue;"&gt;&amp;lt;applet code="HelloWorld.class" codebase="./" archive="helloWorld.jar" width="150" height="30"&gt;&amp;lt;/applet&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="border: medium none ; padding: 0cm;"&gt;&lt;span lang="EN-US"&gt;&amp;lt;/body&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal" style="border: medium none ; padding: 0cm;"&gt;&lt;span lang="EN-US"&gt;&amp;lt;/html&gt;&lt;/span&gt;&lt;/p&gt;  &lt;/div&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;h1&gt;&lt;span lang="EN-US"&gt;JavaScript&lt;/span&gt;&lt;/h1&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;No relation to Java, owned by Netscape but not Sun.&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;  &lt;p class="MsoNormal"&gt;&lt;span lang="EN-US"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4455001994762963770-4517374728539755372?l=winmanwang.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://winmanwang.blogspot.com/feeds/4517374728539755372/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4455001994762963770&amp;postID=4517374728539755372' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4455001994762963770/posts/default/4517374728539755372'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4455001994762963770/posts/default/4517374728539755372'/><link rel='alternate' type='text/html' href='http://winmanwang.blogspot.com/2009/07/web-dev.html' title='Web Dev'/><author><name>winman</name><uri>http://www.blogger.com/profile/09980289156415807849</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4455001994762963770.post-6862889101869258507</id><published>2009-04-09T10:45:00.000-07:00</published><updated>2009-04-09T10:47:32.358-07:00</updated><title type='text'>DOCSIS</title><content type='html'>&lt;a onblur="try {parent.deselectBloggerImageGracefully();} catch(e) {}" href="http://www.jlsnet.co.uk/images/projects/projects_docsis/projects_docsis_framelife.jpg"&gt;&lt;img style="float:left; margin:0 10px 10px 0;cursor:pointer; cursor:hand;width: 500px; height: 508px;" src="http://www.jlsnet.co.uk/images/projects/projects_docsis/projects_docsis_framelife.jpg" border="0" alt="" /&gt;&lt;/a&gt;&lt;br /&gt;&lt;a href="http://www.jlsnet.co.uk/index.php?page=projects_docsis_chap3c"&gt;JLSNet :: Projects : DOCSIS - 3. Architecture - Protocols&lt;/a&gt;: "Error Co"&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4455001994762963770-6862889101869258507?l=winmanwang.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://winmanwang.blogspot.com/feeds/6862889101869258507/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4455001994762963770&amp;postID=6862889101869258507' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4455001994762963770/posts/default/6862889101869258507'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4455001994762963770/posts/default/6862889101869258507'/><link rel='alternate' type='text/html' href='http://winmanwang.blogspot.com/2009/04/jlsnet-projects-docsis-3-architecture.html' title='DOCSIS'/><author><name>winman</name><uri>http://www.blogger.com/profile/09980289156415807849</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4455001994762963770.post-7180977821865632407</id><published>2009-04-03T07:38:00.001-07:00</published><updated>2009-04-03T07:38:39.171-07:00</updated><title type='text'></title><content type='html'>status from Ping.fm&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4455001994762963770-7180977821865632407?l=winmanwang.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://winmanwang.blogspot.com/feeds/7180977821865632407/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4455001994762963770&amp;postID=7180977821865632407' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4455001994762963770/posts/default/7180977821865632407'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4455001994762963770/posts/default/7180977821865632407'/><link rel='alternate' type='text/html' href='http://winmanwang.blogspot.com/2009/04/status-from-ping.html' title=''/><author><name>winman</name><uri>http://www.blogger.com/profile/09980289156415807849</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4455001994762963770.post-8403179327078032603</id><published>2009-04-03T07:37:00.001-07:00</published><updated>2009-04-03T07:37:05.447-07:00</updated><title type='text'></title><content type='html'>dummy micro-blogs from Ping.fm&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4455001994762963770-8403179327078032603?l=winmanwang.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://winmanwang.blogspot.com/feeds/8403179327078032603/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4455001994762963770&amp;postID=8403179327078032603' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4455001994762963770/posts/default/8403179327078032603'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4455001994762963770/posts/default/8403179327078032603'/><link rel='alternate' type='text/html' href='http://winmanwang.blogspot.com/2009/04/dummy-micro-blogs-from-ping.html' title=''/><author><name>winman</name><uri>http://www.blogger.com/profile/09980289156415807849</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4455001994762963770.post-1187557078715195456</id><published>2009-04-02T22:11:00.000-07:00</published><updated>2009-04-02T22:13:20.922-07:00</updated><title type='text'>recall Maths ...</title><content type='html'>&lt;div&gt;&lt;a href="http://en.wikipedia.org/wiki/E_%28mathematical_constant%29"&gt;e  (mathematical constant) - Wikipedia, the free encyclopedia&lt;/a&gt;:&lt;br /&gt;&lt;p&gt;The &lt;a title="Exponential function" href="http://en.wikipedia.org/wiki/Exponential_function"&gt;exponential  function&lt;/a&gt; &lt;i&gt;e&lt;/i&gt;&lt;sup&gt;&lt;i&gt;x&lt;/i&gt;&lt;/sup&gt; may be written as a &lt;a title="Taylor series" href="http://en.wikipedia.org/wiki/Taylor_series"&gt;Taylor  series&lt;/a&gt;&lt;/p&gt; &lt;dl&gt;&lt;dd&gt;&lt;img class="tex" alt=" e^{x} = 1 + {x \over 1!} + {x^{2} \over 2!} + {x^{3} \over 3!} + \cdots = \sum_{n=0}^{\infty} \frac{x^n}{n!}" src="http://upload.wikimedia.org/math/b/0/c/b0ce9086ab8ac6013da85f984306c4b3.png" /&gt;&lt;/dd&gt;&lt;/dl&gt;&lt;br /&gt;&lt;p&gt;Because this series keeps many important properties for  &lt;i&gt;e&lt;/i&gt;&lt;sup&gt;&lt;i&gt;x&lt;/i&gt;&lt;/sup&gt; even when &lt;i&gt;x&lt;/i&gt; is &lt;a title="Complex number" href="http://en.wikipedia.org/wiki/Complex_number"&gt;complex&lt;/a&gt;, it is commonly  used to extend the definition of &lt;i&gt;e&lt;/i&gt;&lt;sup&gt;&lt;i&gt;x&lt;/i&gt;&lt;/sup&gt; to the complex  numbers. This, with the Taylor series for &lt;a class="mw-redirect" title="Trigonometric function" href="http://en.wikipedia.org/wiki/Trigonometric_function"&gt;sin and cos  &lt;i&gt;x&lt;/i&gt;&lt;/a&gt;, allows one to derive &lt;a title="Euler's formula" href="http://en.wikipedia.org/wiki/Euler%27s_formula"&gt;Euler's formula&lt;/a&gt;:&lt;/p&gt; &lt;dl&gt;&lt;dd&gt;&lt;img class="tex" alt="e^{ix} = \cos x + i\sin x,\,\!" src="http://upload.wikimedia.org/math/4/0/d/40d9a3c31c4a52cb551dd4470b602d82.png" /&gt;&lt;/dd&gt;&lt;/dl&gt; &lt;p&gt;which holds for all &lt;i&gt;x&lt;/i&gt;. The special case with &lt;i&gt;x&lt;/i&gt; = &lt;a title="Pi" href="http://en.wikipedia.org/wiki/Pi"&gt;π&lt;/a&gt; is known as &lt;a title="Euler's identity" href="http://en.wikipedia.org/wiki/Euler%27s_identity"&gt;Euler's identity&lt;/a&gt;:&lt;/p&gt; &lt;dl&gt;&lt;dd&gt;&lt;img class="tex" alt="e^{i\pi}+1 =0 .\,\!" src="http://upload.wikimedia.org/math/9/b/0/9b0db59874cc7c1cc97abd52402520fe.png" /&gt;&lt;/dd&gt;&lt;/dl&gt; &lt;p&gt;Consequently,&lt;/p&gt; &lt;dl&gt;&lt;dd&gt;&lt;img class="tex" alt="e^{i\pi}=" src="http://upload.wikimedia.org/math/f/1/c/f1cd6e9c1e708549bf56fa80038cdd2f.png" /&gt;&lt;/dd&gt;&lt;/dl&gt; &lt;p&gt;from which it follows that, in the &lt;a title="Principal branch" href="http://en.wikipedia.org/wiki/Principal_branch"&gt;principal branch&lt;/a&gt; of the  logarithm,&lt;/p&gt; &lt;dl&gt;&lt;dd&gt;&lt;img class="tex" alt="\log_e (-1) = i\pi.\,\!" src="http://upload.wikimedia.org/math/5/a/a/5aa8212832e76b6b840d61f17f0b7488.png" /&gt;&lt;/dd&gt;&lt;/dl&gt; &lt;p&gt;Furthermore, using the laws for exponentiation,&lt;/p&gt; &lt;dl&gt;&lt;dd&gt;&lt;img class="tex" alt="(\cos x + i\sin x)^n = \left(e^{ix}\right)^n = e^{inx} = \cos (nx) + i \sin (nx)," src="http://upload.wikimedia.org/math/6/c/4/6c4475aab49c315e66022552f5826309.png" /&gt;&lt;/dd&gt;&lt;/dl&gt; &lt;p&gt;which is &lt;a title="De Moivre's formula" href="http://en.wikipedia.org/wiki/De_Moivre%27s_formula"&gt;de Moivre's  formula&lt;/a&gt;.&lt;/p&gt; &lt;p&gt;The case,&lt;/p&gt; &lt;dl&gt;&lt;dd&gt;&lt;img class="tex" alt="\cos (x) + i \sin (x)\,\!" src="http://upload.wikimedia.org/math/4/f/c/4fcfcb21b80536bf2da117a1b9dfc073.png" /&gt;&lt;/dd&gt;&lt;/dl&gt; &lt;p&gt;is commonly referred to as Cis(x).&lt;/p&gt;&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4455001994762963770-1187557078715195456?l=winmanwang.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://winmanwang.blogspot.com/feeds/1187557078715195456/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4455001994762963770&amp;postID=1187557078715195456' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4455001994762963770/posts/default/1187557078715195456'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4455001994762963770/posts/default/1187557078715195456'/><link rel='alternate' type='text/html' href='http://winmanwang.blogspot.com/2009/04/recall-maths.html' title='recall Maths ...'/><author><name>winman</name><uri>http://www.blogger.com/profile/09980289156415807849</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4455001994762963770.post-7463562748168177637</id><published>2009-04-02T20:36:00.000-07:00</published><updated>2009-04-02T20:37:03.315-07:00</updated><title type='text'>awk for multiple pattern</title><content type='html'>awk /"(CmMacAddr)|(ChSet)|(CmServiceType)"/&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4455001994762963770-7463562748168177637?l=winmanwang.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://winmanwang.blogspot.com/feeds/7463562748168177637/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4455001994762963770&amp;postID=7463562748168177637' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4455001994762963770/posts/default/7463562748168177637'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4455001994762963770/posts/default/7463562748168177637'/><link rel='alternate' type='text/html' href='http://winmanwang.blogspot.com/2009/04/awk-for-multiple-pattern.html' title='awk for multiple pattern'/><author><name>winman</name><uri>http://www.blogger.com/profile/09980289156415807849</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4455001994762963770.post-6097216078384053774</id><published>2009-02-11T07:49:00.000-08:00</published><updated>2009-02-11T07:49:01.439-08:00</updated><title type='text'>windows cheat sheet</title><content type='html'>&lt;a href="http://www.webmasterworld.com/forum39/3135.htm"&gt;nbstat: tracking IPs&lt;/a&gt;: "nbtstat –a "&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4455001994762963770-6097216078384053774?l=winmanwang.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='related' href='http://www.webmasterworld.com/forum39/3135.htm' title='windows cheat sheet'/><link rel='replies' type='application/atom+xml' href='http://winmanwang.blogspot.com/feeds/6097216078384053774/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4455001994762963770&amp;postID=6097216078384053774' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4455001994762963770/posts/default/6097216078384053774'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4455001994762963770/posts/default/6097216078384053774'/><link rel='alternate' type='text/html' href='http://winmanwang.blogspot.com/2009/02/windows-cheat-sheet.html' title='windows cheat sheet'/><author><name>winman</name><uri>http://www.blogger.com/profile/09980289156415807849</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4455001994762963770.post-5263694348601296939</id><published>2008-11-10T07:19:00.000-08:00</published><updated>2008-11-10T07:22:10.420-08:00</updated><title type='text'>[socket] shutdown vs close</title><content type='html'>for a tcp case,&lt;br /&gt;&lt;shutdown&gt; can used to close read-half, write-half, or both-halves of a connection;&lt;br /&gt;&lt;close&gt; will close the socket, and remove from process resource ...&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4455001994762963770-5263694348601296939?l=winmanwang.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://winmanwang.blogspot.com/feeds/5263694348601296939/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4455001994762963770&amp;postID=5263694348601296939' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4455001994762963770/posts/default/5263694348601296939'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4455001994762963770/posts/default/5263694348601296939'/><link rel='alternate' type='text/html' href='http://winmanwang.blogspot.com/2008/11/socket-shutdown-vs-close.html' title='[socket] shutdown vs close'/><author><name>winman</name><uri>http://www.blogger.com/profile/09980289156415807849</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4455001994762963770.post-7389691274613967326</id><published>2008-10-24T22:13:00.000-07:00</published><updated>2008-10-24T22:21:41.037-07:00</updated><title type='text'>球迷－孙／9第一次国内转播亮相</title><content type='html'>4：30左右的时间，防守可以，但之后一个空位三分偏差较大，突破分球挺没谱。剩下1分钟左右时间，心里那个不舒坦，有点看不下去。感慨一个后卫登录nba的艰辛，能否进入最终名单的担忧，挺复杂。&lt;br /&gt;然后，惊喜来了，右边3分线45度附近得球，面对外线变相运球，左边突破到罚球区右侧顶，面对多人防守，运球后转身晃动后仰跳投，干脆2分。一阵欣喜。&lt;br /&gt;看中国球员就是牵挂，当球迷不容易。&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4455001994762963770-7389691274613967326?l=winmanwang.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://winmanwang.blogspot.com/feeds/7389691274613967326/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4455001994762963770&amp;postID=7389691274613967326' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4455001994762963770/posts/default/7389691274613967326'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4455001994762963770/posts/default/7389691274613967326'/><link rel='alternate' type='text/html' href='http://winmanwang.blogspot.com/2008/10/9.html' title='球迷－孙／9第一次国内转播亮相'/><author><name>winman</name><uri>http://www.blogger.com/profile/09980289156415807849</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4455001994762963770.post-2114760774633422217</id><published>2008-10-08T09:34:00.000-07:00</published><updated>2008-10-08T09:36:35.229-07:00</updated><title type='text'>NBA new session...</title><content type='html'>Rudy/Oden@Blazer&lt;br /&gt;&lt;a href="mailto:YAO@Rocket"&gt;YAO@Rocket&lt;/a&gt;&lt;br /&gt;--&lt;br /&gt;Go go go!&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4455001994762963770-2114760774633422217?l=winmanwang.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://winmanwang.blogspot.com/feeds/2114760774633422217/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4455001994762963770&amp;postID=2114760774633422217' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4455001994762963770/posts/default/2114760774633422217'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4455001994762963770/posts/default/2114760774633422217'/><link rel='alternate' type='text/html' href='http://winmanwang.blogspot.com/2008/10/nba-new-session.html' title='NBA new session...'/><author><name>winman</name><uri>http://www.blogger.com/profile/09980289156415807849</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4455001994762963770.post-5451414813138302938</id><published>2008-10-06T10:32:00.000-07:00</published><updated>2008-10-06T10:42:55.945-07:00</updated><title type='text'>wakeup process from interrupt</title><content type='html'>a case of synchronize between process context and interrupt context, this is quite useful for driver code.&lt;br /&gt;e.g. block operation is executed in a user process, which then can be switch out, ISR will be responsible to wake it up, and resume the operation.&lt;br /&gt;&lt;br /&gt;in linux, the "WAIT QUEUE" is used to solve such a scenario, for convenience, add an url of this topic here. go back to this topic later.&lt;br /&gt;&lt;a href="http://hi.baidu.com/spiderjun/blog/item/d43de7c4bcd3c3ca39db493a.html"&gt;http://hi.baidu.com/spiderjun/blog/item/d43de7c4bcd3c3ca39db493a.html&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;while, some other managed object, such as boolean can also be a method, generally,&lt;br /&gt;1. create managed object,&lt;br /&gt;2. wait on it;&lt;br /&gt;3. ISR set the object value to notify the process.&lt;br /&gt;this should be a simple idea especially for the 1-on-1 mode, while queue can deal more complex mode.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4455001994762963770-5451414813138302938?l=winmanwang.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://winmanwang.blogspot.com/feeds/5451414813138302938/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4455001994762963770&amp;postID=5451414813138302938' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4455001994762963770/posts/default/5451414813138302938'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4455001994762963770/posts/default/5451414813138302938'/><link rel='alternate' type='text/html' href='http://winmanwang.blogspot.com/2008/10/wakeup-process-from-interrupt.html' title='wakeup process from interrupt'/><author><name>winman</name><uri>http://www.blogger.com/profile/09980289156415807849</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4455001994762963770.post-1546431260169025495</id><published>2008-09-03T09:20:00.000-07:00</published><updated>2008-09-03T09:23:47.786-07:00</updated><title type='text'>[灌水]摄像头之大发现</title><content type='html'>身边有个摄像头已经2年多了,今天的发现在于:&lt;br /&gt;1. 镜头有旋钮能调节焦距;&lt;br /&gt;2. 内置了麦克风.&lt;br /&gt;&lt;br /&gt;嘿嘿,加班后的惊喜,聊以振奋下,明儿下午打球...&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4455001994762963770-1546431260169025495?l=winmanwang.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://winmanwang.blogspot.com/feeds/1546431260169025495/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4455001994762963770&amp;postID=1546431260169025495' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4455001994762963770/posts/default/1546431260169025495'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4455001994762963770/posts/default/1546431260169025495'/><link rel='alternate' type='text/html' href='http://winmanwang.blogspot.com/2008/09/blog-post.html' title='[灌水]摄像头之大发现'/><author><name>winman</name><uri>http://www.blogger.com/profile/09980289156415807849</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4455001994762963770.post-7215740230586433833</id><published>2008-08-28T00:07:00.000-07:00</published><updated>2008-08-28T00:09:20.243-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='mmap nopage'/><title type='text'>linux mmap: vm_area_struct-&gt;vm_ops-&gt;nopage</title><content type='html'>in case impl mmap with nopage in device driver&lt;br /&gt;&lt;br /&gt;sys flow:&lt;br /&gt;&lt;br /&gt;page fault when looking at page table&lt;br /&gt;interrupt for the fault&lt;br /&gt;...&lt;br /&gt;&lt;br /&gt;--stack1&lt;br /&gt;asmlinkage void do_page_fault(struct pt_regs *regs, unsigned long error_code)&lt;br /&gt;@http://lxr.linux.no/linux-old+v2.4.31/arch/i386/mm/fault.c#L140&lt;br /&gt;{&lt;br /&gt;...&lt;br /&gt;switch (handle_mm_fault(mm, vma, address, write))&lt;br /&gt;...&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;--stack2&lt;br /&gt;int handle_mm_fault(struct mm_struct *mm, struct vm_area_struct * vma,&lt;br /&gt;        unsigned long address, int write_access)&lt;br /&gt;@http://lxr.linux.no/linux-old+v2.4.31/mm/memory.c#L1370&lt;br /&gt;{&lt;br /&gt;...&lt;br /&gt;return handle_pte_fault(mm, vma, address, write_access, pte);&lt;br /&gt;...&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;--stack3&lt;br /&gt;static inline int handle_pte_fault(struct mm_struct *mm,&lt;br /&gt;        struct vm_area_struct * vma, unsigned long address,&lt;br /&gt;        int write_access, pte_t * pte)&lt;br /&gt;@http://lxr.linux.no/linux-old+v2.4.31/mm/memory.c#L1337&lt;br /&gt;{&lt;br /&gt;...&lt;br /&gt;return do_no_page(mm, vma, address, write_access, pte);&lt;br /&gt;...&lt;br /&gt;}&lt;br /&gt;&lt;br /&gt;--stack4&lt;br /&gt;static int do_no_page(struct mm_struct * mm, struct vm_area_struct * vma,&lt;br /&gt;        unsigned long address, int write_access, pte_t *page_table)&lt;br /&gt;@http://lxr.linux.no/linux-old+v2.4.31/mm/memory.c#L1249&lt;br /&gt;{&lt;br /&gt;..&lt;br /&gt;vma-&gt;vm_ops-&gt;nopage(vma, address &amp;amp; PAGE_MASK, 0);&lt;br /&gt;..&lt;br /&gt;}&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4455001994762963770-7215740230586433833?l=winmanwang.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://winmanwang.blogspot.com/feeds/7215740230586433833/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4455001994762963770&amp;postID=7215740230586433833' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4455001994762963770/posts/default/7215740230586433833'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4455001994762963770/posts/default/7215740230586433833'/><link rel='alternate' type='text/html' href='http://winmanwang.blogspot.com/2008/08/linux-mmap-vmareastruct-vmops-nopage.html' title='linux mmap: vm_area_struct-&gt;vm_ops-&gt;nopage'/><author><name>winman</name><uri>http://www.blogger.com/profile/09980289156415807849</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-4455001994762963770.post-5498402048087535065</id><published>2008-02-09T05:55:00.000-08:00</published><updated>2008-02-09T05:56:11.641-08:00</updated><title type='text'>yet another hello world~</title><content type='html'>place holder~~&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/4455001994762963770-5498402048087535065?l=winmanwang.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://winmanwang.blogspot.com/feeds/5498402048087535065/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=4455001994762963770&amp;postID=5498402048087535065' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/4455001994762963770/posts/default/5498402048087535065'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/4455001994762963770/posts/default/5498402048087535065'/><link rel='alternate' type='text/html' href='http://winmanwang.blogspot.com/2008/02/yet-another-hello-world.html' title='yet another hello world~'/><author><name>winman</name><uri>http://www.blogger.com/profile/09980289156415807849</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry></feed>
