แผนภูมิเปรียบเทียบ
พื้นฐานสำหรับการเปรียบเทียบ | Applet | servlet |
---|---|---|
การกระทำ | Applet จะถูกดำเนินการในฝั่งไคลเอ็นต์เสมอ | Servlet จะถูกดำเนินการบนฝั่งเซิร์ฟเวอร์เสมอ |
แพคเกจ | นำเข้า java.applet. *; นำเข้า java.awt. *; | นำเข้า javax.servlet. *; นำเข้า java.servlet.http. *; |
วิธีการวงจรชีวิต | init (), stop (), paint (), start (), destroy () | init (), service () และ destroy () |
หน้าจอผู้ใช้ | Applets ใช้คลาสส่วนต่อประสานผู้ใช้เช่น AWT และ Swing | ไม่จำเป็นต้องมีส่วนต่อประสานกับผู้ใช้ |
ความต้องการ | ต้องใช้เบราว์เซอร์ที่สามารถใช้งานร่วมกับจาวา | มันประมวลผลอินพุตจากฝั่งไคลเอ็นต์และสร้างการตอบสนองในแง่ของหน้า HTML, Javascript, Applets |
ทรัพยากร | เมื่อมาถึงลูกค้าจะใช้ทรัพยากรของลูกค้าในการผลิตส่วนต่อประสานกราฟิกและเรียกใช้การคำนวณที่ซับซ้อน | มันใช้ทรัพยากรของเซิร์ฟเวอร์ในการประมวลผลคำขอและการตอบสนองของลูกค้า |
การใช้แบนด์วิดท์ | Applets ใช้แบนด์วิดท์เครือข่ายมากขึ้นในขณะที่ทำงานบนเครื่องไคลเอนต์ | Servlets ถูกดำเนินการบนเซิร์ฟเวอร์และด้วยเหตุนี้จึงต้องใช้แบนด์วิดท์น้อย |
ความปลอดภัย | มีแนวโน้มที่จะเสี่ยงมากขึ้นเนื่องจากอยู่บนเครื่องไคลเอนต์ | มันอยู่ภายใต้ความปลอดภัยของเซิร์ฟเวอร์ |
คำจำกัดความของแอปเพล็
Applet เป็นโปรแกรม Java ขนาดเล็กที่ฝังอยู่ในโค้ด HTML สำหรับการดำเนินการและถูกเรียกใช้งานบนเครื่องฝั่งไคลเอ็นต์ ไลบรารี API ของ Java มีแพ็คเกจที่เรียกว่า "แอปเพล็ต" ซึ่งมีคลาสที่ชื่อว่า "Applet" แอปเพล็ตใด ๆ ที่คุณสร้างควรเป็นคลาสย่อยของคลาสแอปเพล็ตและคลาสย่อยนั้นจะต้องประกาศว่า "สาธารณะ" เนื่องจากรหัสจะถูกเข้าถึงได้โดยรหัสที่อยู่นอกโปรแกรม ตอนนี้ให้เราเข้าใจการสร้างแอปเพล็ด้วยความช่วยเหลือของตัวอย่างง่ายๆ
นำเข้า java.awt. *; นำเข้า java.applet. *; สวัสดีประชาชนขยาย Applet {สีโมฆะสาธารณะ (กราฟิก g) {g.drawString ("Hello Applet", 20, 20); }}
ในโค้ดข้างต้นคำสั่งการนำเข้าสองรายการคือแพ็คเกจ“ awt” และแพ็คเกจ“ applet” ซึ่งจำเป็นในการสร้างแอปเพล็ตใด ๆ วิธีการ paint () ในรหัสถูกกำหนดใน package awt ซึ่งถูกแทนที่โดยแอปเพล็ตที่สร้างขึ้น ในขณะที่คุณสามารถดูคลาส Hello ได้ขยายคลาสแอปเพล็ตซึ่งกำหนดไว้ในแอปเพล็ตแพ็คเกจ ตอนนี้คุณต้องบันทึกไฟล์นี้ด้วยชื่อคลาสเช่น Hello.java มีสองวิธีในการเรียกใช้แอปเพล็ตที่:
- เรียกใช้แอปเพล็ตในเว็บเบราว์เซอร์ที่ทำงานร่วมกับ Java ได้
- ดำเนินการโดยใช้ appletviewer ซึ่งเป็นวิธีที่เร็วที่สุดในการเรียกใช้งานแอพเพล็ต
วิธีแรกของการเรียกใช้งานแอปเพล็ตในเว็บเบราว์เซอร์ที่ทำงานร่วมกับจาวาได้นั้นจำเป็นต้องสร้างโปรแกรม HTML ที่ฝังแอปเพล็ตที่สร้างขึ้นในไฟล์ Hello.java
// รหัส html
ที่นี่รหัสแอปเพล็ต“ Hello” คือชื่อของไฟล์ที่คุณสร้างแอปเพล็ต ตอนนี้ให้บันทึกไฟล์นี้ว่า, hello.html สิ่งที่คุณต้องใช้ในการเรียกใช้ไฟล์นี้ในเว็บเบราว์เซอร์คือการโหลดไฟล์ HTML นี้ในเว็บเบราว์เซอร์และแอปเพล็ตจะถูกดำเนินการ
วิธีที่สองสำหรับการเรียกใช้งานแอปเพล็ตใน appletviewer คือคำสั่งที่คุณต้องการใช้ในการเรียกใช้แอปเพล็ตใน appletviewer มีดังนี้
> appletviewer hello.html
นอกจากนี้ยังมีวิธีที่สะดวกอีกวิธีหนึ่งในการเพิ่มความเร็วในการประมวลผล ฝังรหัส HTML เป็นความคิดเห็นในจุดเริ่มต้นของไฟล์ต้นฉบับ Hello.java
นำเข้า java.awt. *; นำเข้า java.applet. *; / * * / คลาสสาธารณะ Hello ขยาย Applet {สีโมฆะสาธารณะ (กราฟิก g) {g.drawString ("Hello Applet", 20, 20); }}
ในการรันแอปเพล็ตคุณจะต้องผ่านคำสั่ง:
> javac Hello.java> appletviewer Hello.java
วิธีวงจรชีวิตในคลาส Applet คือ, init (), service () และ destroy () เมธอด init () ถูกเรียกใช้เมื่อเริ่มต้นแอปเพล็ต เมธอด start () ถูกเรียกใช้เมื่อแอปเพล็ตเริ่มต้นหรือรีสตาร์ท เมธอด stop () ถูกเรียกใช้เมื่อแอปเพล็ตถูกยกเลิก วิธีการทาสี (กราฟิก) จะถูกเรียกใช้เมื่อต้องมีการทาสีใหม่ของแอปเพล็ต เมธอด destroy () ถูกเรียกใช้เมื่อแอปเพล็ตกำลังถูกทำลาย
บันทึก:
คุณสามารถสังเกตเห็นว่าคลาสแอปเพล็ตไม่มี main () วิธีการแทนการดำเนินการของแอปเพล็เริ่มต้นเมื่อชื่อของแอปเพล็ถูกส่งผ่านไปยัง appletviewer หรือไฟล์ HTML ที่มีชื่อแอปเพล็ตถูกโหลดในเว็บเบราว์เซอร์
ความหมายของ Servlet
เช่นเดียวกับ Applets Servlets ยังเป็นโปรแกรม Java ขนาดเล็กที่ทำงานบนฝั่งเซิร์ฟเวอร์ ปัญหาประสิทธิภาพการทำงานในโปรแกรม CGI ขึ้นอยู่กับแพลตฟอร์มให้เปิดตัว Servlets Servlets เป็นอิสระจากแพลตฟอร์ม วัตถุประสงค์หลักของ servlet คือการรวบรวมคำขอจากลูกค้าและสร้างหน้าเว็บที่ร้องขอแบบไดนามิกสำหรับคำขอที่สอดคล้องกันและส่งกลับไปยังลูกค้า
สามารถสร้าง Servlets โดยใช้แพ็คเกจ javax.servlet และ java.servlet.http วิธีการวงจรชีวิตของ servlets คือ init (), service () และ destroy () เมธอดเหล่านี้ถูกเรียกใช้โดยเซิร์ฟเวอร์เมื่อจำเป็น
init () : เมธอดนี้ถูกเรียกใช้โดยเซิร์ฟเวอร์เมื่อเริ่มโหลดเซิร์ฟเล็ตลงในหน่วยความจำ
บริการ () : วิธีนี้ถูกเรียกเพื่อประมวลผลการร้องขอ HHTP t ซึ่งถูกส่งโดยลูกค้า
ทำลาย () : วิธีนี้ถูกเรียกใช้เพื่อปล่อยทรัพยากรที่จัดสรรให้กับเซิร์ฟเล็ต
ความแตกต่างหลักระหว่าง Applet และ Servlet ใน Java
- แอปเพล็ตคือแอปพลิเคชันที่ทำงานบนเครื่องไคลเอนต์ส่วน servlet เป็นแอปพลิเคชั่นที่ทำงานบนเครื่องเซิร์ฟเวอร์
- แพ็คเกจที่ใช้สร้างแอปเพล็ตคือ import java.applet. *; และนำเข้า java.awt. *; ในขณะที่แพ็กเกจที่ใช้สร้าง servlet คือ import javax.servlet. *; และนำเข้า java.servlet.http. *;
- วิธีวงจรชีวิตของ Applet Class คือ init (), stop (), paint (), start (), destroy () ในทางกลับกันวิธีวงจรชีวิตคือ init (), service () และ destroy ()
- Applets ใช้คลาสส่วนต่อประสานผู้ใช้ AWT และ Swing เพื่อสร้างส่วนติดต่อผู้ใช้ส่วน servlet ไม่ต้องการคลาสส่วนต่อประสานผู้ใช้
- ในการรับแอปเพล็ตที่ดำเนินการบนเครื่องไคลเอ็นต์จำเป็นต้องใช้เว็บเบราว์เซอร์ที่ใช้งานร่วมกับ Java ได้ ในทางกลับกันเซิร์ฟเล็ตต้องการ Java ที่เปิดใช้งานเว็บเซิร์ฟเวอร์เพื่อประมวลผลการร้องขอและการตอบกลับของไคลเอ็นต์
- Applet ใช้ประโยชน์จากทรัพยากรของเครื่องไคลเอนต์ในขณะที่ดำเนินการในฝั่งไคลเอ็นต์ Servlets ใช้ทรัพยากรของเซิร์ฟเวอร์ตามที่ดำเนินการทางฝั่งเซิร์ฟเวอร์
- Applets ประสบปัญหาด้านความปลอดภัยมากกว่าเมื่อเทียบกับ servlets
สรุป:
Applet และ servlet ทั้งสองเป็นโปรแกรม java ขนาดเล็กที่ servlet อาจสร้างแอปเพล็ตเพื่อตอบสนองต่อคำขอของลูกค้า