<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Li Guoliang</title>
	<atom:link href="http://liguoliang.com/feed/" rel="self" type="application/rss+xml" />
	<link>http://liguoliang.com</link>
	<description>ActionScript Flex Java JEE PHP...</description>
	<lastBuildDate>Wed, 16 May 2012 14:39:30 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.2</generator>
		<item>
		<title>Overloading and overriding method call</title>
		<link>http://liguoliang.com/2012/overloading-and-overriding-method-call/</link>
		<comments>http://liguoliang.com/2012/overloading-and-overriding-method-call/#comments</comments>
		<pubDate>Tue, 15 May 2012 13:11:42 +0000</pubDate>
		<dc:creator>Guoliang</dc:creator>
				<category><![CDATA[Java]]></category>
		<category><![CDATA[overload]]></category>
		<category><![CDATA[override]]></category>

		<guid isPermaLink="false">http://liguoliang.com/?p=2432</guid>
		<description><![CDATA[Overloading method will be determined by reference type, but override method will be determined by the actual object tyep.  property is determined by <p class='read-more'><a href='http://liguoliang.com/2012/overloading-and-overriding-method-call/'>More...</a></p><p><p>

----------Post from: <a href="http://liguoliang.com">@LiGuoliang.com, 欢迎回来~</a>----------</p></p>
]]></description>
			<content:encoded><![CDATA[<p>Overloading method will be determined by reference type, but override method will be determined by the actual object tyep. <br /> property is determined by reference type too. </p>
<pre class="code" name="java">
package newjob.guoliang.corejava;

public class ReferenceTypeTest {
	public static void main(String[] args) {
		AClass a = new BClass();
		new ReferenceTypeTest().printClassDesc(a);
	}

	protected void printClassDesc(AClass a) {
		System.out.println("A_" + a.desc);
	}

	protected void printClassDesc(BClass b) {
		System.out.println("B_" + b.desc);
	}

}

class AClass {
	String desc = "ClassA";
}

class BClass extends AClass{
	String desc = "ClassB";
}
</pre>
<p>Output is:</p>
<p><code>A_ClassA<br />
MethodClassB_ClassB<br /></code/></p>
<p><p>

----------Post from: <a href="http://liguoliang.com">@LiGuoliang.com, 欢迎回来~</a>----------</p></p>
]]></content:encoded>
			<wfw:commentRss>http://liguoliang.com/2012/overloading-and-overriding-method-call/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Java method invoked sequence</title>
		<link>http://liguoliang.com/2012/java-method-invoked-sequence/</link>
		<comments>http://liguoliang.com/2012/java-method-invoked-sequence/#comments</comments>
		<pubDate>Tue, 15 May 2012 12:51:07 +0000</pubDate>
		<dc:creator>Guoliang</dc:creator>
				<category><![CDATA[Java]]></category>
		<category><![CDATA[ClassLoad]]></category>

		<guid isPermaLink="false">http://liguoliang.com/?p=2430</guid>
		<description><![CDATA[Static block / variable;
Instance block / variable;
Constructor;
public class StaticTest {
	public static void main(String[] args) {
		// System.out.p<p class='read-more'><a href='http://liguoliang.com/2012/java-method-invoked-sequence/'>More...</a></p><p><p>

----------Post from: <a href="http://liguoliang.com">@LiGuoliang.com, 欢迎回来~</a>----------</p></p>
]]></description>
			<content:encoded><![CDATA[<p>Static block / variable;</p>
<p>Instance block / variable;</p>
<p>Constructor;</p>
<pre class="java" name="code">public class StaticTest {
	public static void main(String[] args) {
		// System.out.println(B.a);
		// System.out.println(C.c);
		StaticTest staticTest = new StaticTest();
		staticTest.printName();
	}

	static {
		System.out.println("Static_block_Main");
	}

	public StaticTest() {
		System.out.println("Consturctor_Main");
	}

	private void printName() {
		System.out.println("InstanceMethod");
	}
	{
		System.out.println("Instance_block_Main");
	}

}
</pre>
<p>Output is:</p>
<p><code>Static_block_Main<br />Instance_block_Main<br />Consturctor_Main<br />InstanceMethod</code></p>
<p><p>

----------Post from: <a href="http://liguoliang.com">@LiGuoliang.com, 欢迎回来~</a>----------</p></p>
]]></content:encoded>
			<wfw:commentRss>http://liguoliang.com/2012/java-method-invoked-sequence/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>养老保险、医疗保险、失业保险，住房公积金翻译</title>
		<link>http://liguoliang.com/2012/pension-unemployment-insurance-medical-insurance-housing-fund/</link>
		<comments>http://liguoliang.com/2012/pension-unemployment-insurance-medical-insurance-housing-fund/#comments</comments>
		<pubDate>Tue, 15 May 2012 12:34:39 +0000</pubDate>
		<dc:creator>Guoliang</dc:creator>
				<category><![CDATA[哥是个爱分享的人]]></category>

		<guid isPermaLink="false">http://liguoliang.com/?p=2427</guid>
		<description><![CDATA[Pension &#8211; 养老保险
Unemployment Insurance 失业保险
Medical Insurance医疗保险
Housing Fund 住房公积金
&#160;


----------Post from: <a href="http://liguoliang.com">@LiGuoliang.com, 欢迎回来~</a>------<p class='read-more'><a href='http://liguoliang.com/2012/pension-unemployment-insurance-medical-insurance-housing-fund/'>More...</a></p><p><p>

----------Post from: <a href="http://liguoliang.com">@LiGuoliang.com, 欢迎回来~</a>----------</p></p>
]]></description>
			<content:encoded><![CDATA[<p>Pension &#8211; 养老保险<br />
Unemployment Insurance 失业保险<br />
Medical Insurance医疗保险<br />
Housing Fund 住房公积金</p>
<p>&nbsp;</p>
<p><p>

----------Post from: <a href="http://liguoliang.com">@LiGuoliang.com, 欢迎回来~</a>----------</p></p>
]]></content:encoded>
			<wfw:commentRss>http://liguoliang.com/2012/pension-unemployment-insurance-medical-insurance-housing-fund/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>About Java static block</title>
		<link>http://liguoliang.com/2012/about-java-static-block/</link>
		<comments>http://liguoliang.com/2012/about-java-static-block/#comments</comments>
		<pubDate>Mon, 14 May 2012 16:06:35 +0000</pubDate>
		<dc:creator>Guoliang</dc:creator>
				<category><![CDATA[Java]]></category>
		<category><![CDATA[Static block]]></category>

		<guid isPermaLink="false">http://liguoliang.com/?p=2424</guid>
		<description><![CDATA[package scjp.liguoliang.com;

/**
 * I'm try to see the static block run rules,
 * B extends A, A has a static a, when we use B.a, class B did not loa<p class='read-more'><a href='http://liguoliang.com/2012/about-java-static-block/'>More...</a></p><p><p>

----------Post from: <a href="http://liguoliang.com">@LiGuoliang.com, 欢迎回来~</a>----------</p></p>
]]></description>
			<content:encoded><![CDATA[<pre class="code" name="java">package scjp.liguoliang.com;

/**
 * I'm try to see the static block run rules,
 * B extends A, A has a static a, when we use B.a, class B did not loaed, just Class A loaded.
 * If B also has a static a, A and B will be loaded.
 * If a is finle, A and B will not be loaded both.
 * @author Li Guoliang
 *
 */
public class TestClassLoading {
	public static void main(String[] args) {
		System.out.println(B.a);
		System.out.println(C.c);
	}
}

class A {
	static String a = "A.a"; // how about if this is final
	static {
		System.out.println("Static_A_Class");
	}

	{
		System.out.println("Instance_A");
	}
}

class B extends A{
	// static String a = "B.a";
	static {
		System.out.println("Static_B_Class");
	}
}

/**
 * This class is designed for test the squence of static variable and block.
 * They run by the sequence of the code.
 * @author Li Guoliang
 *
 */
class C {

	static {
		System.out.println("Static_C");
	}
	static C c = new C();

	public C() {
		System.out.println("Constructor_C");
	}
}
</pre>
<p>Output</p>
<p><code></p>
<p>Static_A_Class<br />A.a<br />Static_C<br />Constructor_C<br />scjp.liguoliang.com.C@161f10f</p>
<p></code></p>
<p><p>

----------Post from: <a href="http://liguoliang.com">@LiGuoliang.com, 欢迎回来~</a>----------</p></p>
]]></content:encoded>
			<wfw:commentRss>http://liguoliang.com/2012/about-java-static-block/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Which method will be called? about Overriding and Overloading in Java</title>
		<link>http://liguoliang.com/2012/which-method-will-be-called-about-overriding-and-overloading-in-java/</link>
		<comments>http://liguoliang.com/2012/which-method-will-be-called-about-overriding-and-overloading-in-java/#comments</comments>
		<pubDate>Sun, 13 May 2012 07:02:08 +0000</pubDate>
		<dc:creator>Guoliang</dc:creator>
				<category><![CDATA[Java]]></category>
		<category><![CDATA[Overloading]]></category>
		<category><![CDATA[Overriding]]></category>
		<category><![CDATA[Polymorphism]]></category>

		<guid isPermaLink="false">http://liguoliang.com/?p=2421</guid>
		<description><![CDATA[Here are two class: Animal and Dog, Dog extends from Animal:
package scjp.liguoliang.com;

public class Animal {

	private String type = "Dog";
	publi<p class='read-more'><a href='http://liguoliang.com/2012/which-method-will-be-called-about-overriding-and-overloading-in-java/'>More...</a></p><p><p>

----------Post from: <a href="http://liguoliang.com">@LiGuoliang.com, 欢迎回来~</a>----------</p></p>
]]></description>
			<content:encoded><![CDATA[<p>Here are two class: Animal and Dog, Dog extends from Animal:</p>
<pre class="code" name="java">package scjp.liguoliang.com;

public class Animal {

	private String type = "Dog";
	public String name = "Animal";

	public String getType() {
		return type;
	}

	public void eat() {
		System.out.println(name + ", Animal eat...");
	}
}
</pre>
<pre class="code" name="java">package scjp.liguoliang.com;

public class Dog extends Animal {

	private String type = "Dog";
	public String name = "Dog";

	public String getType() {
		return type;
	}

	public void eat() {
		System.out.println(name + ", Dog eat...");
	}
}
</pre>
<p>And here is the test codes:</p>
<pre class="code" name="java">	public static void main(String[] args) {
		Dog dog = new Dog();
		Animal animalDog = new Dog(); // New dog, but type is Animal.

		System.out.println(dog.name);
		System.out.println(dog.getType());
		dog.eat();

		System.out.println(animalDog.name);
		System.out.println(animalDog.getType());
		animalDog.eat();

		System.out.println("\nWe are going to test overloading:");
		OverLoadingTest overLoadingTest = new OverLoadingTest();
		overLoadingTest.testEat(animalDog);
		overLoadingTest.testEat(dog);
	}

	public void testEat(Animal animal) {
		System.out.println("Test Animal eat");
	}

	public void testEat(Dog dog) {
		System.out.println("Test Dog eat");
	}
</pre>
<p>Here is the output: </p>
<p><code></p>
<p>Dog<br />Dog<br />Dog, Dog eat...<br />Animal // Get the property by reference Type, so print the name of ‘Animal’<br />Dog // Polymorphism, call the method of the instance in run time;<br />Dog, Dog eat...</p>
<p>We are going to test overloading:<br />Test Animal eat // Compiler will decide which method will be called by reference type when compiling.&nbsp; <br />Test Dog eat</p>
<p></code></p>
<p>In summary:</p>
<p>1. overriding: Polymorphism is for instance method, so&nbsp; an animal type reference to a dog Object will call dog’s method; but for properties, will use animals.</p>
<p>2. overloading: which method will be called has been determined when compiling by the reference type.</p>
<p><p>

----------Post from: <a href="http://liguoliang.com">@LiGuoliang.com, 欢迎回来~</a>----------</p></p>
]]></content:encoded>
			<wfw:commentRss>http://liguoliang.com/2012/which-method-will-be-called-about-overriding-and-overloading-in-java/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Twitter Weekly Updates @2012-05-12</title>
		<link>http://liguoliang.com/2012/twitter-weekly-updates-2012-05-12/</link>
		<comments>http://liguoliang.com/2012/twitter-weekly-updates-2012-05-12/#comments</comments>
		<pubDate>Sat, 12 May 2012 13:30:00 +0000</pubDate>
		<dc:creator>T</dc:creator>
				<category><![CDATA[哼哼唧唧]]></category>
		<category><![CDATA[Twitter]]></category>

		<guid isPermaLink="false">http://liguoliang.com/2012/twitter-weekly-updates-2012-05-12/</guid>
		<description><![CDATA[<ul class="aktt_tweet_digest">
<li>五一后第一天上班 班车上多了很多人 「老头子」又没来坐班车，大家在一起的时间越来越少了，五月过去一周了，时间过的太快了。  <a href="http://twitter.com/LiGuoliang/statuses/199272889688662016" class="aktt_tweet_time">#</a></li>
</ul>
<p><p>

----------Post from: <a href="http://liguoliang.com">@LiGuoliang.com, 欢迎回来~</a>----------</p></p><p><p>

----------Post from: <a href="http://liguoliang.com">@LiGuoliang.com, 欢迎回来~</a>----------</p></p>
]]></description>
			<content:encoded><![CDATA[<ul class="aktt_tweet_digest">
<li>五一后第一天上班 班车上多了很多人 「老头子」又没来坐班车，大家在一起的时间越来越少了，五月过去一周了，时间过的太快了。  <a href="http://twitter.com/LiGuoliang/statuses/199272889688662016" class="aktt_tweet_time">#</a></li>
</ul>
<p><p>

----------Post from: <a href="http://liguoliang.com">@LiGuoliang.com, 欢迎回来~</a>----------</p></p>
]]></content:encoded>
			<wfw:commentRss>http://liguoliang.com/2012/twitter-weekly-updates-2012-05-12/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>毕业旅行 绍兴、诸暨、奉化</title>
		<link>http://liguoliang.com/2012/apr_hs_outing/</link>
		<comments>http://liguoliang.com/2012/apr_hs_outing/#comments</comments>
		<pubDate>Sat, 05 May 2012 09:16:51 +0000</pubDate>
		<dc:creator>Guoliang</dc:creator>
				<category><![CDATA[哼哼唧唧]]></category>
		<category><![CDATA[奉化溪口]]></category>
		<category><![CDATA[旅游]]></category>
		<category><![CDATA[毕业旅行]]></category>
		<category><![CDATA[绍兴]]></category>
		<category><![CDATA[诸暨五泄]]></category>
		<category><![CDATA[鲁迅故居]]></category>

		<guid isPermaLink="false">http://liguoliang.com/?p=2407</guid>
		<description><![CDATA[D1: 世纪大道/周浦 –&#62; 绍兴 乔波滑雪场  绍兴乔波会议国际中心；
<a href="http://liguoliang.com/wp-content/uploads/2012/05/IMGP0903.jpg"><img style="display: inline; border: 0px;" title="IMGP0903" src="http://liguoliang.com/wp-content/uploads/2012/05/IMGP0903_thumb.jpg" alt="IMGP0903" width="244" height="163" border="0" /></a>
&#160;
D2: 鲁迅故居、百草园、三味书屋 -&#62; 诸暨 五泄 –&#62; 宿 奉化 溪口银风旅游度假村；
<a href="http://liguoliang.com/wp-content/uploads/2012/05/IMGP0993.jpg"><img style="display: inline; border: 0px;" title="IMGP0993" src="http://liguoliang.com/wp-content/uploads/2012/05/IMGP0993_thumb.jpg" alt="IMGP0993" width="163" height="244" border="0" /></a><a href="http://liguoliang.com/wp-content/uploads/2012/05/IMGP0981.jpg"><img style="display: inline; border: 0px;" title="IMGP0981" src="http://liguoliang.com/wp-content/uploads/2012/05/IMGP0981_thumb.jpg" alt="IMGP0981" width="163" height="244" border="0" /></a><a href="http://liguoliang.com/wp-content/uploads/2012/05/IMGP1064.jpg"><img style="display: inline; border: 0px;" title="IMGP1064" src="http://liguoliang.com/wp-content/uploads/2012/05/IMGP1064_thumb.jpg" alt="IMGP1064" width="244" height="163" border="0" /></a><a href="http://liguoliang.com/wp-content/uploads/2012/05/IMGP1084.jpg"><img style="display: inline; border: 0px;" title="IMGP1084" src="http://liguoliang.com/wp-content/uploads/2012/05/IMGP1084_thumb.jpg" alt="IMGP1084" width="244" height="164" border="0" /></a>
D3: 奉化溪口 千丈岩、雪窦寺、弥勒佛、小洋房 奉化博物馆 -&#62;七莘路坐公车回家。
<a href="http://liguoliang.com/wp-content/uploads/2012/05/IMGP1497.jpg"><img style="display: inline; border: 0px;" title="IMGP1497" src="http://liguoliang.com/wp-content/uploads/2012/05/IMGP1497_thumb.jpg" alt="IMGP1497" width="164" height="244" border="0" /></a> <a href="http://liguoliang.com/wp-content/uploads/2012/05/IMGP1459.jpg"><img style="display: inline; border: 0px;" title="IMGP1459" src="http://liguoliang.com/wp-content/uploads/2012/05/IMGP1459_thumb.jpg" alt="IMGP1459" width="244" height="163" border="0" /></a> <a href="http://liguoliang.com/wp-content/uploads/2012/05/IMGP1702.jpg"><img style="display: inline; border: 0px;" title="IMGP1702" src="http://liguoliang.com/wp-content/uploads/2012/05/IMGP1702_thumb.jpg" alt="IMGP1702" width="244" height="163" border="0" /></a>
<p class='read-more'><a href='http://liguoliang.com/2012/apr_hs_outing/'>More...</a></p><p><p>

----------Post from: <a href="http://liguoliang.com">@LiGuoliang.com, 欢迎回来~</a>----------</p></p>
]]></description>
			<content:encoded><![CDATA[<p>D1: 世纪大道/周浦 –&gt; 绍兴 乔波滑雪场  绍兴乔波会议国际中心；</p>
<p><a href="http://liguoliang.com/wp-content/uploads/2012/05/IMGP0903.jpg"><img style="display: inline; border: 0px;" title="IMGP0903" src="http://liguoliang.com/wp-content/uploads/2012/05/IMGP0903_thumb.jpg" alt="IMGP0903" width="244" height="163" border="0" /></a></p>
<p>&nbsp;</p>
<p>D2: 鲁迅故居、百草园、三味书屋 -&gt; 诸暨 五泄 –&gt; 宿 奉化 溪口银风旅游度假村；</p>
<p><a href="http://liguoliang.com/wp-content/uploads/2012/05/IMGP0993.jpg"><img style="display: inline; border: 0px;" title="IMGP0993" src="http://liguoliang.com/wp-content/uploads/2012/05/IMGP0993_thumb.jpg" alt="IMGP0993" width="163" height="244" border="0" /></a><a href="http://liguoliang.com/wp-content/uploads/2012/05/IMGP0981.jpg"><img style="display: inline; border: 0px;" title="IMGP0981" src="http://liguoliang.com/wp-content/uploads/2012/05/IMGP0981_thumb.jpg" alt="IMGP0981" width="163" height="244" border="0" /></a><a href="http://liguoliang.com/wp-content/uploads/2012/05/IMGP1064.jpg"><img style="display: inline; border: 0px;" title="IMGP1064" src="http://liguoliang.com/wp-content/uploads/2012/05/IMGP1064_thumb.jpg" alt="IMGP1064" width="244" height="163" border="0" /></a><a href="http://liguoliang.com/wp-content/uploads/2012/05/IMGP1084.jpg"><img style="display: inline; border: 0px;" title="IMGP1084" src="http://liguoliang.com/wp-content/uploads/2012/05/IMGP1084_thumb.jpg" alt="IMGP1084" width="244" height="164" border="0" /></a></p>
<p>D3: 奉化溪口 千丈岩、雪窦寺、弥勒佛、小洋房 奉化博物馆 -&gt;七莘路坐公车回家。</p>
<p><a href="http://liguoliang.com/wp-content/uploads/2012/05/IMGP1497.jpg"><img style="display: inline; border: 0px;" title="IMGP1497" src="http://liguoliang.com/wp-content/uploads/2012/05/IMGP1497_thumb.jpg" alt="IMGP1497" width="164" height="244" border="0" /></a> <a href="http://liguoliang.com/wp-content/uploads/2012/05/IMGP1459.jpg"><img style="display: inline; border: 0px;" title="IMGP1459" src="http://liguoliang.com/wp-content/uploads/2012/05/IMGP1459_thumb.jpg" alt="IMGP1459" width="244" height="163" border="0" /></a> <a href="http://liguoliang.com/wp-content/uploads/2012/05/IMGP1702.jpg"><img style="display: inline; border: 0px;" title="IMGP1702" src="http://liguoliang.com/wp-content/uploads/2012/05/IMGP1702_thumb.jpg" alt="IMGP1702" width="244" height="163" border="0" /></a></p>
<p><p>

----------Post from: <a href="http://liguoliang.com">@LiGuoliang.com, 欢迎回来~</a>----------</p></p>
]]></content:encoded>
			<wfw:commentRss>http://liguoliang.com/2012/apr_hs_outing/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Configuring the Apache Web Server to Run Perl 在Apache中运行Perl</title>
		<link>http://liguoliang.com/2012/configuring-the-apache-web-server-to-run-perl-%e5%9c%a8apache%e4%b8%ad%e8%bf%90%e8%a1%8cperl/</link>
		<comments>http://liguoliang.com/2012/configuring-the-apache-web-server-to-run-perl-%e5%9c%a8apache%e4%b8%ad%e8%bf%90%e8%a1%8cperl/#comments</comments>
		<pubDate>Sat, 05 May 2012 08:22:54 +0000</pubDate>
		<dc:creator>Guoliang</dc:creator>
				<category><![CDATA[Perl]]></category>
		<category><![CDATA[Apache]]></category>
		<category><![CDATA[CGI]]></category>
		<category><![CDATA[httpd]]></category>
		<category><![CDATA[Perl CGI]]></category>

		<guid isPermaLink="false">http://liguoliang.com/?p=2384</guid>
		<description><![CDATA[1. Install Perl
2. Install Apache &#38; config httpd：
Options Indexes FollowSymLinksAdd ExecCGI to this line. The line should now look like the follow<p class='read-more'><a href='http://liguoliang.com/2012/configuring-the-apache-web-server-to-run-perl-%e5%9c%a8apache%e4%b8%ad%e8%bf%90%e8%a1%8cperl/'>More...</a></p><p><p>

----------Post from: <a href="http://liguoliang.com">@LiGuoliang.com, 欢迎回来~</a>----------</p></p>
]]></description>
			<content:encoded><![CDATA[<p>1. Install Perl</p>
<p>2. Install Apache &amp; config httpd：</p>
<p>Options Indexes FollowSymLinks<br />Add ExecCGI to this line. The line should now look like the following:<br />Options Indexes FollowSymLinks ExecCGI<br />Next, search for the following:<br />#AddHandler cgi-script .cgi<br />Uncomment this line by removing the # in front of the line, and add a .pl to the end of the line. The new line should look like this:<br />AddHandler cgi-script .cgi .pl
<p>3. Start the server, and check the server environment:
<p><a href="http://localhost:8080/cgi-bin/printenv.pl">http://localhost:8080/cgi-bin/printenv.pl</a>
<p>There should be some&nbsp; environment variables like&nbsp; DOCUMENT_ROOT/PATH/SCRIPT_FILENAME….
<p>4. Drop a Perl(hello.pl) into the server：</p>
<p><code>
<p>#!D:/perl/bin/perl.exe<br />print "Content-type: text/html; charset=utf-8\n\n";<br />print "&lt;phtml&gt;&lt;head&gt;&lt;title&gt;Learning Perl&lt;/title&gt;&lt;/head&gt;&lt;body&gt;";<br />print "&lt;h1&gt;PerlPage&lt;/h1&gt;";<br />print "&lt;form action='upload.pl' method='post'&gt;";<br />print "&lt;input type=file name=='file'&gt;";<br />print "&lt;input type=text name='comment' size=20 value=''&gt;";<br />print "&lt;input type=submit name=enter value='Upload'&gt;";<br />print "&lt;form&gt;";<br />print "&lt;/body&gt;&lt;/html&gt;";</code>
<p>you can just drop this file in your ApacheHome/cgi-bin or your site if you have configured the httpd.conf;
<p>5. check the Perl page:</p>
<p><a href="http://localhost:8080/cgi-bin/hello.pl">http://localhost:8080/cgi-bin/hello.pl</a></p>
<p>&nbsp;</p>
<p>Ref:<a href="http://www.editrocket.com/articles/perl_apache_windows.html">http://www.editrocket.com/articles/perl_apache_windows.html</a></p>
<p><p>

----------Post from: <a href="http://liguoliang.com">@LiGuoliang.com, 欢迎回来~</a>----------</p></p>
]]></content:encoded>
			<wfw:commentRss>http://liguoliang.com/2012/configuring-the-apache-web-server-to-run-perl-%e5%9c%a8apache%e4%b8%ad%e8%bf%90%e8%a1%8cperl/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Apache Flex: MXML or ActionScript ?</title>
		<link>http://liguoliang.com/2012/apache-flex-mxml-or-actionscript/</link>
		<comments>http://liguoliang.com/2012/apache-flex-mxml-or-actionscript/#comments</comments>
		<pubDate>Sun, 22 Apr 2012 13:59:08 +0000</pubDate>
		<dc:creator>Guoliang</dc:creator>
				<category><![CDATA[ActionScript]]></category>
		<category><![CDATA[Flex]]></category>
		<category><![CDATA[ApacheFlex]]></category>

		<guid isPermaLink="false">http://liguoliang.com/?p=2246</guid>
		<description><![CDATA[Deciding to create components in MXML or ActionScript
&#160;
One of the first decisions that you must make when creating custom components is deciding<p class='read-more'><a href='http://liguoliang.com/2012/apache-flex-mxml-or-actionscript/'>More...</a></p><p><p>

----------Post from: <a href="http://liguoliang.com">@LiGuoliang.com, 欢迎回来~</a>----------</p></p>
]]></description>
			<content:encoded><![CDATA[<h2>Deciding to create components in MXML or ActionScript</h2>
<p>&nbsp;</p>
<blockquote><p>One of the first decisions that you must make when creating custom components is deciding whether to write<br />
them in MXML or in ActionScript. Ultimately, it is the requirements of your application that determine how you<br />
develop your custom component.<br />
Some basic guidelines include the following:</p>
<p><em><span style="font-size: x-small;">•MXML components and ActionScript components both define new ActionScript classes.<br />
•Almost anything that you can do in a custom ActionScript custom component, you can also do in a custom MXML component. However, for simple components, such as components that modify the behavior of an existing component or add a basic feature to an existing component, it is simpler and faster to create them in MXML.<br />
•When your new component is a composite component that contains other components, and you can express the positions and sizes of those other components using one of the Flex layout containers, you should use MXML to define your component.<br />
•To modify the behavior of the component, such as the way a container lays out its children, use ActionScript.<br />
•To create a visual component by creating a subclass from UIComponent, use ActionScript.<br />
•To create a nonvisual component, such as a formatter, validator, or effect, use ActionScript.<br />
•To add logging support to your control, use ActionScript. For more information, see “Logging” on page 227 in Building and Deploying Adobe Flex 3 Applications.</span></em></p></blockquote>
<p>Flex3 官方文档中如上释疑. 2010年我参加Flex Developer Day时, 有开发者提问国内是否有大型企业应用实例? 未得到正面回答. 倒是群硕的团队还上台张扬了一把, 他们的项目大约是奥运时CCTV直播网站.</p>
<p>其实即便国内有大型的企业应用, 也不一定能获得足够价值的经验.</p>
<p>07年底开始做的教育应用, 大致有120W行代码, 其中有60%+的为AS代码, 除了入口文件及部分复杂UI使用MXML之外, 清一色都是AS代码, 所有的UI都小心谨慎的创建, 销毁. 在10年的DevDay时, 坐在我旁边的某研发他们也是纯AS.</p>
<p>几年过去了, Flex贡献给了Apache, Flex也已经4.6了, 接触的代码多了, 习惯了清纯的AS代码, 当满篇都是MXML标签时, 我不淡定了.</p>
<p>思想斗争良久, 到底孰优孰劣? 在多数common的情况下, 几乎不分上下. 我觉得AS代码更优雅更易读, 可人家说了: 我们可以Design, 不用代码, 一眼就看出来了&#8230;:(</p>
<p><a href="http://liguoliang.com/wp-content/uploads/2012/02/201226212008.png"><img style="display: inline; border: 0px;" title="2012-2-6 21-20-08" src="http://liguoliang.com/wp-content/uploads/2012/02/201226212008_thumb.png" alt="2012-2-6 21-20-08" width="644" height="402" border="0" /></a></p>
<p>如上View, 假如我们只用MXML或只用AS来实现, 似乎看不出明显差异来, 其实相比选择编程方式, 可能对<strong>组件/Class的划分可能更加重要.</strong></p>
<p>不论用MXML还是AS, Class设计好更加关键:</p>
<p>1.1.1 可以设计成一个Common的组件;</p>
<p>1.1 可以作为一个组合的UserList</p>
<p>2.1/2.2  作为显示用户基本信息的组件;</p>
<p>这样划分, 不论MXML还是AS都可以很好的降低耦合, 更可重用, 但不论如何, 我还是喜欢干净的AS代码.</p>
<p><p>

----------Post from: <a href="http://liguoliang.com">@LiGuoliang.com, 欢迎回来~</a>----------</p></p>
]]></content:encoded>
			<wfw:commentRss>http://liguoliang.com/2012/apache-flex-mxml-or-actionscript/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>&lt;&lt;失业旅行&gt;&gt; 镇江 扬州</title>
		<link>http://liguoliang.com/2012/apr78_zhenjiang_yangzhou/</link>
		<comments>http://liguoliang.com/2012/apr78_zhenjiang_yangzhou/#comments</comments>
		<pubDate>Thu, 12 Apr 2012 14:45:48 +0000</pubDate>
		<dc:creator>Guoliang</dc:creator>
				<category><![CDATA[哼哼唧唧]]></category>
		<category><![CDATA[失业率行]]></category>
		<category><![CDATA[扬州]]></category>
		<category><![CDATA[镇江]]></category>

		<guid isPermaLink="false">http://liguoliang.com/?p=2378</guid>
		<description><![CDATA[<p>1 – 镇江, 金山, 焦山;</p>
<p><a href="http://liguoliang.com/wp-content/uploads/2012/04/IMG_2581-001.jpg"><img style="background-image: none; padding-left: 0px; padding-right: 0px; display: inline; padding-top: 0px; border: 0px;" title="IMG_2581-001" src="http://liguoliang.com/wp-content/uploads/2012/04/IMG_2581-001_thumb.jpg" alt="IMG_2581-001" width="517" height="772" border="0" /></a></p>
<p>&#160;</p>
<p><a href="http://liguoliang.com/wp-content/uploads/2012/04/IMG_2590.jpg"><img style="background-image: none; padding-left: 0px; padding-right: 0px; display: inline; padding-top: 0px; border: 0px;" title="IMG_2590" src="http://liguoliang.com/wp-content/uploads/2012/04/IMG_2590_thumb.jpg" alt="IMG_2590" width="644" height="431" border="0" /></a></p>
<p><a href="http://liguoliang.com/wp-content/uploads/2012/04/IMG_2670.jpg"><img style="background-image: none; padding-left: 0px; padding-right: 0px; display: inline; padding-top: 0px; border: 0px;" title="IMG_2670" src="http://liguoliang.com/wp-content/uploads/2012/04/IMG_2670_thumb.jpg" alt="IMG_2670" width="644" height="455" border="0" /></a></p>
<p>2– 扬州, 瘦西湖;</p>
<p><a href="http://liguoliang.com/wp-content/uploads/2012/04/IMG_2713.jpg"><img style="background-image: none; padding-left: 0px; padding-right: 0px; display: inline; padding-top: 0px; border: 0px;" title="IMG_2713" src="http://liguoliang.com/wp-content/uploads/2012/04/IMG_2713_thumb.jpg" alt="IMG_2713" width="431" height="644" border="0" /></a></p>
<p><a href="http://liguoliang.com/wp-content/uploads/2012/04/IMG_2741.jpg"><img style="background-image: none; padding-left: 0px; padding-right: 0px; display: inline; padding-top: 0px; border-style: initial; border-color: initial; border-image: initial; border-width: 0px;" title="IMG_2741" src="http://liguoliang.com/wp-content/uploads/2012/04/IMG_2741_thumb.jpg" alt="IMG_2741" width="617" height="412" border="0" /></a></p>
<p><p>

----------Post from: <a href="http://liguoliang.com">@LiGuoliang.com, 欢迎回来~</a>----------</p></p><p><p>

----------Post from: <a href="http://liguoliang.com">@LiGuoliang.com, 欢迎回来~</a>----------</p></p>
]]></description>
			<content:encoded><![CDATA[<p>1 – 镇江, 金山, 焦山;</p>
<p><a href="http://liguoliang.com/wp-content/uploads/2012/04/IMG_2581-001.jpg"><img style="background-image: none; padding-left: 0px; padding-right: 0px; display: inline; padding-top: 0px; border: 0px;" title="IMG_2581-001" src="http://liguoliang.com/wp-content/uploads/2012/04/IMG_2581-001_thumb.jpg" alt="IMG_2581-001" width="517" height="772" border="0" /></a></p>
<p>&nbsp;</p>
<p><a href="http://liguoliang.com/wp-content/uploads/2012/04/IMG_2590.jpg"><img style="background-image: none; padding-left: 0px; padding-right: 0px; display: inline; padding-top: 0px; border: 0px;" title="IMG_2590" src="http://liguoliang.com/wp-content/uploads/2012/04/IMG_2590_thumb.jpg" alt="IMG_2590" width="644" height="431" border="0" /></a></p>
<p><a href="http://liguoliang.com/wp-content/uploads/2012/04/IMG_2670.jpg"><img style="background-image: none; padding-left: 0px; padding-right: 0px; display: inline; padding-top: 0px; border: 0px;" title="IMG_2670" src="http://liguoliang.com/wp-content/uploads/2012/04/IMG_2670_thumb.jpg" alt="IMG_2670" width="644" height="455" border="0" /></a></p>
<p>2– 扬州, 瘦西湖;</p>
<p><a href="http://liguoliang.com/wp-content/uploads/2012/04/IMG_2713.jpg"><img style="background-image: none; padding-left: 0px; padding-right: 0px; display: inline; padding-top: 0px; border: 0px;" title="IMG_2713" src="http://liguoliang.com/wp-content/uploads/2012/04/IMG_2713_thumb.jpg" alt="IMG_2713" width="431" height="644" border="0" /></a></p>
<p><a href="http://liguoliang.com/wp-content/uploads/2012/04/IMG_2741.jpg"><img style="background-image: none; padding-left: 0px; padding-right: 0px; display: inline; padding-top: 0px; border-style: initial; border-color: initial; border-image: initial; border-width: 0px;" title="IMG_2741" src="http://liguoliang.com/wp-content/uploads/2012/04/IMG_2741_thumb.jpg" alt="IMG_2741" width="617" height="412" border="0" /></a></p>
<p><p>

----------Post from: <a href="http://liguoliang.com">@LiGuoliang.com, 欢迎回来~</a>----------</p></p>
]]></content:encoded>
			<wfw:commentRss>http://liguoliang.com/2012/apr78_zhenjiang_yangzhou/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

