ข้อมูลองค์ความรู้โดย
ณัฐพล วัฒนวิภัทรเจริญ
ตำแหน่ง IT

Java ตอนที่ 13 จาร์

ประเภททางด้าน IT หลัก :   Development & Integration
ประเภททางด้าน IT ย่อย :   Java
  ลงข้อมูลเมื่อ 11:03:39 20/03/2013
  Page View (3905) แบ่งปัน

The JavaTM Archive (JAR) file format enables you to bundle multiple files into a single archive file. Typically a JAR file contains the class files and auxiliary resources associated with applets and applications.

Short Sample

DOS>javac x.java

DOS>java x

DOS>dir x.class

DOS>edit manifest.mf

DOS>jar cfm x.jar manifest.mf x.class

DOS>java -jar x.jar

 

13.1 องค์ประกอบของ JAR

                Jar (ava Archieve) หมายถึง ที่เก็บเอกสาร เป็นแฟ้มที่มีสกุลเป็น .jar สามารถเก็บแฟ้มต่าง ๆ ได้เหมือนกับแฟ้ม .zip แต่ผู้พัฒนาสามารถเรียกใช้โปรแกรมภายในแฟ้ม .jar ได้ทันที โดยไม่ต้องแตกแฟ้มออกมาก่อน แล้วจึงเรียกใช้เหมือนกับแฟ้ม .zip

                Manifest หมายถึง บัญชีแสดง ซึ่งการเรียกใช้แฟ้ม .jar จะค้นหาแฟ้ม manifest.mf ที่ผู้พัฒนาสร้างขึ้น และกำหนดให้แฟ้มใดเป็นแฟ้มแรกที่จะถูกประมวลผล

                ตัวอย่างแฟ้ม manifest.mf

Manifest-Version: 1.0

Main-Class: x

13.2 การสร้างและใช้งาน JAR

ประโยชน์ของแฟ้ม JAR

- มีความปลอดภัย

- ลดเวลาดาวน์โหลดแฟ้ม

- ลดขนาดแฟ้ม

- รวมเป็นห่อเพื่อขยับขยายภายหลัง

- กำหนดรุ่น และตีตราชัดเจน

- พกพาสะดวก

1. สร้าง manifest.mf (Manifest คือ บัญชีแสดง)

 Warning :  The text file from which you are creating the manifest must end with a new line or carriage return. The last line will not be parsed properly if it does not end with a new line or carriage return. When you create a JAR file, it automatically receives a default manifest file. There can be only one manifest file in an archive, and it always has the pathname META-INF/MANIFEST.MF

พบ 2 บรรทัดนี้ใน MANIFEST.MF

Manifest-Version: 1.0

Main-Class: x

2. ตัวอย่างการสร้าง .jar

DOS>jar cfm x.jar manifest.mf x.class

DOS>jar cfm x.jar manifest.mf x.class y.class z.class

DOS>jar cfm x.jar manifest.mf v1/*.class

3. ดูแฟ้มใน .jar

DOS>jar tf x.jar

META-INF/

META-INF/MANIFEST.MF

x.class

4. แตกแฟ้ม .jar

DOS>jar xf x.jar

5. ปรับปรุงหรือแทนที่แฟ้มเดิม

DOS>jar uf x.jar x.class

6. ประมวลผล application

DOS>java -jar x.jar

7. ประมวลผล applet ในแฟ้ม x.htm

< applet code=x.class archive=x.jar width=120 height=120>

</applet>

 

 กรณีตัวอย่าง checker01.jar พบเกมหมากฮอสใน http://www.thaibg.com โดย อ.ทศพล ธนะทิพานนท์

จึงเป็นแนวคิดในการเขียนตาราง เพื่อใช้สอนนักศึกษาใช้ applet และ .jar

Download : checker01.zip (Only .jar Executed)Download : checker02.zip (Simulation : test) 

DOS>jar cfm checker01.jar manifest.mf checker01.class checker01b.gif checker01w.gif

// http://www.particle.kth.se

import java.awt.*;

import java.applet.*;

import java.net.*; // Class URL

public class checker01 extends Applet {

  Image imgb,imgw;

  URL url;

  int w = 42;

  public void init() {

    setBackground(new Color(192,192,192));

    url = this.getClass().getResource("checker01w.gif");

    imgw = Toolkit.getDefaultToolkit().getImage(url);   

    url = this.getClass().getResource("checker01b.gif");

    imgb = Toolkit.getDefaultToolkit().getImage(url);

    // imgw = getImage(getCodeBase(),"x.gif"); outside .jar

  }

  public void paint(Graphics g) {

    g.setColor(Color.white);

    for (int i=0;i<4;i++)

      for (int j=0;j<4;j++) {

        g.fillRect(i*w*2,j*w*2,w,w);

        g.fillRect(i*w*2 + w,j*w*2 + w,w,w);

      }

    for (int i=0;i<4;i++) {

      g.drawImage(imgw,i*w*2 + w,0,this);

      g.drawImage(imgw,i*w*2,w,this);

      g.drawImage(imgb,i*w*2 + w,w * 6,this);

      g.drawImage(imgb,i*w*2,w * 7,this);

    }

  }

}

 

 

ต.ย.ใน appletviewer

checker01

- ทำงานได้ในแฟ้ม .jar แฟ้มเดียว

- วาดตารางด้วย fillRect

- load ภาพมา drawImage checker02

- ยังไม่ทดสอบใน .jar ให้ฝึกสร้างเอง

- แสดงการเดินหมาก ใช้ข้อมูลจากอาร์เรย์

- ถ้าอ่านหมากจากแฟ้มจะยืดหยุ่นกว่านี้ 

คำสั่งเรียก Applet ใน checker01.htm

<applet code=checker01.class

archive=checker01.jar width=336 height=336>

</applet>

แฟ้ม checker01.jar ทำหน้าที่เก็บทั้ง .class และ image หากเรียก .jar เข้า archive ก็จะเรียนสิ่งที่อยู่ในนั้นได้  

ที่มาจาก www.thaiall.com



องค์ความรู้ที่มีผู้อ่านมากสุด
Java ตอนที่ 3 รับข้อมูลทางแป้นพิมพ์ และแสดงผล
การติดต่อกับผู้ใช้เป็นความสามารถของภาษาคอมพิวเตอร์ที่จะเปิดให้ผู้ใช้เข้าควบคุมการทำงานของเครื่องคอมพิวเตอร์ ซึ่งการติดต่อของอุปกรณ์อิเล็กทรอนิกส์หรือฮาร์ดแวร์กับผู้ใช้นั้นสามารถกระทำได้หลายวิธี เช่น แป้นพิมพ์ (Keyboard) เมาส์ (Mouse) หรือเซนเซอร์ต่าง ๆ แต่ที่นิยมใช้และมีประสิทธิภาพสำหรับงานทั่วไปคือการรับคำสั่งจากผู้ใช้ผ่านแป้นพิมพ์ ส่วนการตอบสนองของเครื่องคอมพิวเตอร์ให้ผู้ใช้ได้ทราบถึงผลของการประมวลผลคำสั่งที่ได้รับจากผู้ใช้ก็คือจอภาพ (Screen) และเครื่องพิมพ์ (Printer) เป็นต้น ในบทนี้จะกล่าวถึงการเชื่อมต่อกับผู้ใช้ที่รับข้อมูลผ่านแป้นพิมพ์ และการแสดงผลให้ผู้ใช้ทราบทางจอภาพเป็นหลัก

โดย... ณัฐพล วัฒนวิภัทรเจริญ

่Java ตอนที่ 10 แอพเพลท
เมื่อสร้าง Applet ซึ่งเป็นแฟ้ม .class แล้ว จะต้องสร้างแฟ้ม .htm เพื่อเรียกใช้ Applet แสดงผล ซึ่งมีหลักการเช่นเดียวกับการสร้าง Application ที่ประมวลผลใน console คือได้โปรแกรม .class ก็ต้องสั่งประมวลผลผ่านโปรแกรม java แต่ Applet มีวิธีเรียกใช้ที่ต่างออกไป ซึ่งทำได้ 2 วิธี หลังสร้างแฟ้ม .htm แล้ว

โดย... ณัฐพล วัฒนวิภัทรเจริญ

ลำดับการทำงาน 3D Animation
โครงการสร้าง 3D Animation ขนาดใหญ่จะเป็นไปตามลำดับการทำงานที่เฉพาะเจาะจง แม้แต่โครงการเล็กๆ ที่มีศิลปินเพียง 1 – 2 คนก็ยังใช้ประโยชน์จากการทำงานตามลำดับขั้นที่โครงงานใหญ่ๆ ที่มีความพร้อมสูงใช้กัน โดยอาจจะนำมาใช้เป็นบางส่วนหรือทั้งหมดเลยก็มี

โดย... ณัฐพล วัฒนวิภัทรเจริญ

Java ตอนที่ 1 ความรู้เบื้องต้นเกี่ยวกับจาวา
ภาษาจาวา (Java Language) คือ ภาษาคอมพิวเตอร์ที่ถูกพัฒนาขึ้นโดยบริษัท ซันไมโครซิสเต็มส์ เป็นภาษาสำหรับเขียนโปรแกรมที่สนับสนุนการเขียนโปรแกรมเชิงวัตถุ (OOP : Object-Oriented Programming) โปรแกรมที่เขียนขึ้นถูกสร้างภายในคลาส ดังนั้นคลาส (Class) คือที่เก็บเมทธอด (Method) หรือพฤติกรรม (Behavior) ซึ่งมีสถานะ (State) และรูปพรรณ (Identity) ประจำพฤติกรรม

โดย... ณัฐพล วัฒนวิภัทรเจริญ

Java ตอนที่ 14 เจเอสพี
ภาษาเจเอสพี (JSP = Java Server Pages) คือ ภาษาสคริปต์ที่ทำงานบนเครื่องบริการ เช่นเดียวกับภาษา perl, php หรือ asp มีโครงสร้างภาษาแบบจาวา หรือภาษาซี โดยมีตัวแปลภาษาที่ถูกพัฒนาโดยบริษัทซันไมโครซิสเต็ม ซึ่งเป็นเทคโนโลยีของจาวา สำหรับสร้างรหัสเอชทีเอ็มแอล (HTML)

โดย... ณัฐพล วัฒนวิภัทรเจริญ

มารู้จักกราฟฟิคการ์ด (VGA Card)
กราฟฟิคกา่ร์ดหรือที่ภาษาทั่วไปเขาเรียกกันว่าการ์ดจอนั่นเอง คุณสมบัติของมันคือจะมีหน้าที่ช่วย CPU ในการประมวลผล คำสั่งเกี่ยวกับกราฟฟิค อาทิเช่น การทำงานด้านรูปภาำำพ การเล่นเกมส์ เป็นต้น เป็นหัวใจสำคัญในการทำงานด้านกราฟฟิค เลยทีเดียว หากคุณมีกราฟฟิคการ์ดที่มีความสามารถไม่สูงพอ ณ ขณะที่คุณทำการประมวลผลด้านกราฟฟิคที่มี ความซับซ้อนสูงก็จะทำให้เครื่องคอมพิวเตอร์ของคุณเสียเวลาไปกับมันอย่า่งมากและคุณก็จะรู้สึกว่าเครื่องคอมพิวเตอร์ ของคุณนั้นทำงานช้าเกินไป

โดย... ณัฐพล วัฒนวิภัทรเจริญ

การประยุกต์ใช้งานอินทราเน็ตและเอ็กทราเน็ตเพื่อสนับสนุนการค้าบนเวบ (Intranet/Extranet)
ตามความหมายแล้ว ทั้งสองระบบนี้ หมายถึง ระบบเครือข่ายที่สร้างขึ้นจากการนำหลักการหรือระบบการทำงานของอินเทอร์เนตมาใช้งานภายในองค์กร (Intranet) และระหว่างองค์กรเฉพาะกลุ่ม (Extranet) ซึ่งหน้าที่ต่างๆในการใช้งานไม่ว่าจะเป็นเรื่องเว็บบราวเซอร์ การรับ-ส่งอีเมล์ การทำการโอนย้ายแฟ้มข้อมูล (FTP) จะเหมือนกันกับที่ใช้อยู่บนระบบอินเทอร์เน็ตปกติ ซึ่งระบบนี้ทำงานด้วยการตั้งอินทราเน็ตเซิร์ฟเวอร์ขึ้นมาภายในองค์กรหรือศูนย์กลางของกลุ่มองค์กรของเรา เช่น ระหว่างบริษัทของเรากับกับกลุ่มตัวแทนจำหน่าย

โดย... ณัฐพล วัฒนวิภัทรเจริญ

Java ตอนที่ 12 แพ็คเกจ
ในอนาคต หากมี .class หลายร้อยแฟ้ม และเก็บแยก directory อย่างเป็นระเบียบ เช่น ห้อง c:\java\bin\aaa เก็บ .class 100 แฟ้ม และ c:\java\bin\burin เก็บ . class 150 แฟ้ม การเรียกใช้จากแต่ละห้อง สามารถทำได้ด้วยการใช้คำสั่ง import แต่ class ที่อยู่ในแต่ละห้องจะประกาศด้วยคำสั่ง package และมีข้อมูลว่าแต่ละห้อง จะต้องมีชื่อ class ที่ไม่ซ้ำกัน

โดย... ณัฐพล วัฒนวิภัทรเจริญ

ระบบ SAN (Storage Area Network)
ยุคการจัดการความรอบรู้ได้เริ่มต้นขึ้นแล้ว อิเล็กทรอนิกส์ทำให้ระบบการเรียนรู้ต่าง ๆ เปลี่ยนแปลงไปมาก เรามีระบบการเรียนรู้แบบใหม่ที่ชื่อ eLearning ใช้สื่อข้อมูลเป็นแหล่งการเรียนรู้ใหญ่ มีระบบ eLibrary เก็บข้อมูลหนังสือที่เป็นแบบ eBook รวมทั้งสิ่งพิมพ์ประเภท eMagazine eJournal และ eProceeding ระบบ e ยังทำให้เกิดการเรียนรู้แบบ eEducation on Demand หรือ eEOD

โดย... ณัฐพล วัฒนวิภัทรเจริญ

Java ตอนที่ 11 แอพพลิเคชั่น
การสั่งและเลิกประมวลผล 1. สั่งประมวลผล Application ด้วย DOS> java x 2. การปิด Application ที่ไม่มีคำสั่ง exit ในตัวโปรแกรมให้กดปุ่ม CTRL-C ใน DOS

โดย... ณัฐพล วัฒนวิภัทรเจริญ