อะแพชี เวโลซิตี
หน้าตา
นักพัฒนา | มูลนิธิซอฟต์แวร์อะแพชี |
---|---|
รุ่นเสถียร | |
ที่เก็บข้อมูล | |
ระบบปฏิบัติการ | หลายระบบปฏิบัติการ |
ประเภท | เอนจินแม่แบบ |
สัญญาอนุญาต | สัญญาอนุญาตอะแพชี 2.0 |
เว็บไซต์ | http://velocity.apache.org/ |
อะแพชี เวโลซิตี (Apache Velocity) เป็นแพ็กเกจโอเพนซอร์สที่สร้างและกำกับดูแลโดยมูลนิธิซอฟต์แวร์อะแพชี เวโลซิตีเป็นเอนจินแม่แบบบนพื้นฐานของภาษาจาวา ซึ่งช่วยผูกภาษาแม่แบบกับอ็อบเจกต์ที่อ้างถึงในโค้ดจาวา โดยจุดประสงค์เพื่อทำให้เกิดความชัดเจนในการแบ่งแยกระหว่างระดับชั้นการนำเสนอกับระดับชั้นธุรกิจบนเว็บแอปพลิเคชัน (ดูเพิ่มที่ Model-view-controller) แอปพลิเคชันที่มักใช้เวโลซิตีเช่น
- เว็บแอปพลิเคชันที่ใช้การแทรกข้อมูลจากอ็อบเจกต์ เช่น จาวาบีนส์ ลงในเพจของ HTML โดยตรง การทำงานนี้คล้ายการแทรกตัวแปรบนเพจของเจเอสพีและพีเอชพี เวโลซิตีนั้นยังมีคลาสเซิร์ฟเลตเป็นของตัวเอง ซึ่งสามารถนำไปผนวกใช้บน อะแพชี ทอมแคต (Apache Tomcat) ได้ทันที
- เวโลซิตีสามารถผลิตซอร์สโค้ดของภาษาจาวา เอสคิวแอล โพสต์สคริปต์ ฯลฯ แล้วนำซอร์สโค้ดที่ผลิตได้ไปใช้งานต่อไป ซึ่งขึ้นอยู่กับแม่แบบที่ใช้ผลิตด้วย
- ข้อความในอีเมลอัตโนมัติที่ส่งจากการสร้างบัญชีผู้ใช้ การส่งรหัสผ่าน หรือการแจ้งเตือนรายงานทางอีเมล โดยใช้แม่แบบที่สร้างขึ้นจากแฟ้มข้อความที่แยกไว้ต่างหาก แทนที่จะฝังข้อความทั้งหมดลงในโค้ดจาวา
- การแปลงแฟ้มเอกซ์เอ็มแอลจากรูปแบบหนึ่งไปสู่อีกรูปแบบหนึ่ง เวโลซิตีจะประมวลผลแฟ้มต้นฉบับให้เป็นอ็อบเจกต์ที่สามารถเข้าถึงได้ตามลำดับชั้น และต้องมีแฟ้มเอกซ์เอ็มแอลอีกแฟ้มเป็นแม่แบบปลายทางรอรับ
อะแพชี เวโลซิตี เคยเป็นโครงการย่อยของโครงการจาการ์ตา แต่ปัจจุบันได้แยกตัวออกมาเป็นโครงการหลักของมูลนิธิซอฟต์แวร์อะแพชี
ตัวอย่างโค้ด
[แก้]ส่วนนี้คือแฟ้มแม่แบบ
## Velocity Hello World <html> <body> #set( $foo = "Velocity" ) ## followed by Hello $foo World! </body> </html>
หลังจากประมวลผลผ่านเวโลซิตีแล้วจะได้ผลลัพธ์ดังนี้
<html> <body> Hello Velocity World! </body> </html>
ซึ่งรูปแบบของไวยากรณ์และแนวความคิดแม่แบบทั้งหมดในเวโลซิตี นำมาจากเอนจินแม่แบบของเว็บแมโคร (WebMacro) ซึ่งเป็นโครงการเก่าและขณะนี้ก็เป็นโครงการโอเพนซอร์สเหมือนกัน
ดูเพิ่ม
[แก้]- เจเอสพี
- ฟรีมาร์เกอร์ (FreeMarker)