13 December 2011

Background Process with Servlet

ที่ใส่ with servlet ไว้ด้วยในหัวเพื่อบอกว่าผมยังจะ extends HttpServlet เหมือนเดิมในคลาสผม แต่ว่าจะทำให้มันทำงานอยู่แม้จะไม่ได้มีรีเควสเข้าไปที่ Servlet ตัวนั้นก็ตาม โดยสิ่งที่ผมจะทำคือการ implement Runnable เข้ามา ตามข้างล่าง
import java.io.IOException;
import java.io.PrintWriter;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
@WebServlet(
 name="TestRunnable",
 urlPatterns={"/TestRunnable"},
 loadOnStartup=1
 )
public class TestRunnable extends HttpServlet implements Runnable {

}

09 December 2011

Abstract Class VS Interface

Abstract Class
abstract class เป็นคลาสที่จะมี abstract method อยู่ด้วยหรือไม่ก็ได้

abstract class Test{
 public String a(){
  return "hello";
 }
 public abstract String b();
}

06 December 2011

GenericServlet VS HttpServlet

javax.servlet.GenericServlet
Signature : public abstract class GenericServlet extends java.lang.Object implements Servlet, ServletConfig, java.io.Serializable

- GenericServlet จะประกอบไปด้วย protocal พื้นฐานใน Servlet
- GenericServlet จะมีต้นแบบ(พิมพ์เขียว) สำหรับการใช้งาน Servlet
- Lifecycle ของ GenericServlet จะอยู่กับ init และ destroy และ method ใน ServletContext interface
- GenericServlet สามารถทำงานผ่านการ Override service method

javax.servlet.http.HttpServlet
Signature : public abstract class HttpServlet extends GenericServlet implements java.io.Serializable

- HttpServlet จะประกอบด้วย protocal Http เท่านั้น
- HttpServlet จะมีต้นแบบ(พิมพ์เขียว) สำหรับการใช้งาน Http
- HttpServlet extend มาจาก GenericServlet
- HttpServlet สามารถใช้ session และ cookie ได้
- HttpServlet ทำงานผ่าน doGet() doPost() doXXX()

01 December 2011

เรื่องของ Path

path คือการอ้างถึงตำแหน่งเส้นทางโดยในการเขียนโปรแกรมนั้น path คือการเรียกตำแหน่งต่างๆของโปรแกรม หรือ sub folder โดยจะมี

Relative path เป็นการเรียก path แบบมีความสัมพันธ์กัน เช่น
เรามีโปรแกรมอยู่ c:\myapp\app.exe แล้ว app.exe ทำการเรียก path ./data/data.txt นั้นก็หมายความว่าโปรแกรมเรียกไปที่ c:\myapp\data\data.txt

Absolute path คือการกำหนดชื่อ path แบบเต็มโดยจะบอกตั้งแต่ root เช่น
c:\myapp\data\data.txt