JAR vs WAR
JAR და WAR არის ფაილების არქივის ორი ტიპი. უფრო სწორად, WAR ფაილი ასევე არის JAR ფაილი, მაგრამ ისინი გამოიყენება სხვადასხვა მიზნებისთვის. JAR ფაილები ჰგავს ცნობილ ZIP ფაილებს. ისინი შეიძლება გამოყენებულ იქნას ნებისმიერი ზოგადი დანიშნულების არქივირებისთვის, მაგრამ JAR ფაილების ყველაზე პოპულარული გამოყენებაა მათი გამოყენება კონტეინერებად Java კლასის ფაილებისთვის და რესურსების ფაილებისთვის, რომლებიც ქმნიან java აპლიკაციას. WAR ფაილები გამოიყენება სპეციალურად ვებ აპლიკაციების დასაყენებლად.
რა არის JAR?
JAR (Java ARchive) არის ფაილების არქივი, რომელიც შეიცავს ბევრ სხვა ფაილს. JAR ფაილები ჩვეულებრივ გამოიყენება Java დეველოპერების მიერ Java აპლიკაციების ან Java ბიბლიოთეკების გასავრცელებლად JAR ფაილების გამოყენებით, როგორც კონტეინერები Java კლასის ფაილებისთვის და შესაბამისი რესურსის ფაილებისთვის (მაგ.ე. ტექსტი, აუდიო, ვიდეო და ა.შ.). ფაილის არქივის ცნობილი ფორმატი ZIP არის საფუძველი, რომელზედაც აგებულია JAR ფაილი. მომხმარებლებს შეუძლიათ გამოიყენონ JDK (Java Development Kit) jar ბრძანება ან ჩვეულებრივი ZIP პროგრამული უზრუნველყოფა JAR ფაილების შინაარსის ამოსაღებად. JAR ფაილები არის ძალიან მოსახერხებელი გზა მთელი ვებ აპლიკაციის ერთ ფაილში ჩამოსატვირთად, ყველა იმ ფაილის ცალ-ცალკე ჩამოტვირთვის გარეშე. JAR ფაილების წაკითხვის/ჩაწერის მიზნით, ჯავის დეველოპერები იყენებენ java.util.zip პაკეტში მოცემულ კლასებს. თუ JAR ფაილი უნდა შესრულდეს როგორც დამოუკიდებელი აპლიკაცია, მაშინ ერთ-ერთი კლასი მითითებული იქნება, როგორც "მთავარი" კლასი მანიფესტის ფაილის ჩანაწერებში. შესრულებადი JAR ფაილების გაშვება შესაძლებელია java ბრძანების გამოყენებით jar ატრიბუტით (ანუ java -jar foo.jar).
რა არის ომი?
WAR (ვებ აპლიკაციის არქივი) არის JAR ფაილი, რომელიც გამოიყენება როგორც კონტეინერი ვებ აპლიკაციის რესურსების ფაილების ჯგუფისთვის (რომლებიც ქმნიან ვებ აპლიკაციას), როგორიცაა JSP (Java სერვერის გვერდები), სერლეტები, კლასის ფაილები, XML. ფაილები და ვებ (HTML) გვერდები. WAR ფაილები იდენტიფიცირებულია მათი.war ფაილის გაფართოებით. ისინი შეიმუშავეს Sun Microsystems-მა (ჯავა პროგრამირების ენის ორიგინალური დეველოპერები). JAR ფაილებზე გამოყენებული ციფრული ხელმოწერები (კოდის მინდობა) შეიძლება გამოყენებულ იქნას WAR ფაილებზეც.
WAR ფაილი შინაგანად არის ორგანიზებული სპეციალური დირექტორიების იერარქიაში. WAR ფაილში შემავალი ვებ აპლიკაციის სტრუქტურა განისაზღვრება web.xml ფაილში (რომელიც მდებარეობს /WEB-INF დირექტორიაში). Web.xml ასევე აღწერს რომელი URL რომელ სერვლეტთან არის დაკავშირებული. ისინი ასევე განსაზღვრავენ ცვლადებს, რომლებიც ხელმისაწვდომია სერვერის შიგნით და დამოკიდებულებებს, რომლებიც უნდა შეიქმნას. თუმცა, თუ WAR ფაილი შეიცავს მხოლოდ JSP ფაილებს, მაშინ web.xml ფაილი არჩევითია.
რა განსხვავებაა JAR-სა და WAR-ს შორის?
JAR ფაილებს აქვთ.jar ფაილის გაფართოება, ხოლო WAR ფაილებს აქვთ.war გაფართოება. მაგრამ, WAR ფაილი არის JAR ფაილის კონკრეტული ტიპი. JAR ფაილები შეიცავს კლასის ფაილებს, ბიბლიოთეკებს, რესურსებს და ქონების ფაილებს.ომის ფაილები შეიცავს სერლეტებს, JSP გვერდებს, HTML გვერდებს, JavaScript კოდირებას. JAR ფაილები გამოიყენება მთელი Java (Desktop) აპლიკაციის არქივისთვის, ხოლო WAR ფაილები გამოიყენება ვებ აპლიკაციების დასაყენებლად.