java projektams apache įrankiai - wordpress.com · integruotas su „spring mvc 4.0“ karkasu...

Post on 07-Jul-2020

3 Views

Category:

Documents

0 Downloads

Preview:

Click to see full reader

TRANSCRIPT

Apache įrankiai Java projektamsModestas Kažinauskas

Apžvalga● Kas yra „Apache Software Foundation“● Populiariausi įrankiai skirti Java projektams

○ Tomcat○ Subversion○ Struts○ Wicket○ Maven

● Papildomi įrankiai○ Lucene○ Tiles

● Išvados

Kas yra „Apache Software Foundation“● 1999 metais Amerikoje įkurta ne pelno siekianti

korporacija● ASF - decentralizuota 2663 savanorių kūrėjų

bendruomenė ● Projektai yra valdomi narių, kurie aktyviai dalyvauja

juose● Pajamos iš dotacijų ir rengiamų konferencijų (539

410 dol.)

Populiariausi įrankiai skirti Java projektams

Tomcat● Pirmoji versija 1999 metais● Java aplikacijų serveris palaikantis Java

servlet ir JavaServer Pages technologijas● Naujausia 8 versija palaiko Java Servlet 3.1

specifikaciją

Kas naujo „Servlet 3.0“ specifikacijoje?

● Lengvas kūrimas● Plečiamumas● Asinchroniškumo palaikymas● Saugumo patobulinimai● Kiti smulkūs pakeitimai

Lengvas kūrimas● Naudojamos 175 anotacijos

○ Kuriant naują servlet’ą ar filtravimo klasę, tereikia nurodyti atitinkamą anotaciją

○ Nebereikalingas „web.xml“ diegimo deskriptorius○ Visas anotacijas galima rasti „javax.servlet.http.

annotation“

Servlet 3.0

Servlet 2.5 API prieš 3.0

Servlet 3.0

Plečiamumas● Web aplikacijai yra lengva pritaikyti naujus

karkasus: Struts, JSF ar Spring● Nereikalingas papildomas „web.xml“

konfigūravimas

Servlet 3.0

Asinchroniškumo palaikymas

● Dėl nebegaunamų resursų sustabdžius užklausą, ją aptarnaujanti gija grįžta į gijų baseiną. Atsilaisvinus resursams, užklausa vėl tęsiama

● Gaunant duomenis iš kliento, nėra užsiblokuojama dėl lėto ryšio

● Siunčiant duomenis klientui, taip pat nėra užsiblokuojama dėl lėto ryšio

● ir kiti... Servlet 3.0

Saugumo patobulinimai● Galimybė programai ar karkasui prisijungimo

metu priversitinai vykdyti tarpininkaujančio konteinerio aptarnaujamą autentifikaciją

● Galimybė programai reguliuoti autentifikacijos būseną atsijungimo metu

Servlet 3.0

Kiti smulkūs pakeitimai● „HttpOnly“ sausainai, kurie nėra

atskleidžiami klientui (funkcija palaikoma naujausių naršyklių)

● Failų iš daugelio dalių palaikymas („multipart/form-data MIME“)

● Programiškai pridedami filtraiServlet 3.0

Aplikacijų serverių populiarumas

Subversion● Pirmoji įrankio versija 2000 metais● Programinio kodo ar dokumentų versijų

kūrimas ir peržiūra (versijavimas)● Multiplatforminė● Galima valdyti tiek iš komandų eilutės, tiek

įrankiuose, kuriuose yra integruota

Versijavimo sistemų populiarumas

Struts● Sukurta 2005 metais● Skirta Java EE Web aplikacijų kūrimui● Naudoja MVC architektūrą

Struts pavyzdys (1)

Struts pavyzdys (2)

Struts pavyzdys (3)

Struts pavyzdys (4)

Struts pavyzdys (5)

Wicket● Pirmoji versija išleista 2005 metais● Šablonams kurti naudojama XHML

technologija

Wicket pavyzdys (1)

Wicket pavyzdys (2)

Wicket pavyzdys (3)

Wicket pavyzdys (4)

Wicket pavyzdys (5)

Web karkasų populiarumas

2004 metai

2005 metai

2000 metai

Maven● Valdyti konstrukcijas (angl. „build“), sudaryti

ataskaitas ir dokumentaciją● Valdyti projektų priklausomybes (angl.

„dependencies“)● Integruojama su kitais įrankiais („Jenkins“,

„Eclipse“ ar „NetBeans“)

Maven ataskaitos (1)

Maven ataskaitos (2)● Patikriname ar

yra „tools.jar” biblioteka

(Window->Preferences->...)

Maven ataskaitos (3)● Run As… -> ● 6 Maven

Build…->

compile site

Maven ataskaitos (4)

Maven ataskaitos (5)Projekto_vieta/target/site

Maven ataskaitos (6)Projekto_vieta/target/site

Maven ataskaitos (7)

Maven ataskaitos (8)

Konstrukcijų įrankių populiarumas

Papildomi įrankiai

Lucene● Sukurta 1999 metais● Teksto indeksavimo ir paieškos biblioteka● Naudojama:

○ AOL○ Twitter rends○ Eclipse○ LinkedIn○ ...

Lucene privalumai● Greitas indeksavimas● Indeksas užima iki 30% indeksuojamo teksto● Nedideli atminties reikalavimai● Galima ieškoti per kelis indeksus

Tiles● Pradėtas 2001 metais● Tinklapių šablonų kūrimo karkasas● Dažnai naudojamas kuriant projektus su

MVC technologijomis paremtais karkasais

Tiles pavyzdys (1)● Integruotas su „Spring MVC 4.0“ karkasu● Spring MVC 4.0 palaiko „Servlet 3.0�“● Tiles buvo konfiguruojami naudojant „Java

config“, ne „web.xml“

Tiles pavyzdys (2)

Tiles pavyzdys (3)

Tiles pavyzdys (4)

Tiles pavyzdys (5)

Išvados● Apache įrankiai Java projektams yra vieni

populiariausi pasaulyje● Jų sėkmę lėmė lengvas išmokstamumas, bei

korporacijos novatoriškumas

KLAUSIMAI?

top related