- Java EE SDK;
- Java EE Tətbiq Serveri GlassFish;
- IntelliJ IDEA-nın qurulması.
- Java EE proqramları ilə işləmək üçün iş mühitini necə hazırlaya biləcəyinizi göstərin.
- GlassFish serverində IntelliJ IDEA-dan Java EE proqramlarını necə yerləşdirə və işə sala biləcəyinizi göstərin.
- Java EE 7 SDK yükləyin və quraşdırın.
- Gəlin Java EE Tətbiq Serveri GlassFish-i qaldıraq.
- Komanda xətti vasitəsilə serveri necə işə salmağı və dayandırmağı öyrənək.
- Gəlin IntelliJ IDEA-nı proqramları bu serverə yerləşdirmək üçün konfiqurasiya edək.
- GlassFish proqram serveri ilə birlikdə Java EE 7 SDK-ya daxil olan demo proqramı yerləşdirək və işə salaq.
- GlassFish 4.0;
- IntelliJ IDEA 2019.3.1 (Ultimate);
- Java EE SDK 7.
Java EE SDK quraşdırılması
Əhəmiyyətli şərt. Java EE SDK-nı quraşdırmadan əvvəl Java SE SDK-nın əvvəlcədən quraşdırıldığından əmin olmalısınız.-
Əvvəlcə SDK-nı endirməliyik. Bunu etmək üçün axtarış sistemində "Java EE SDK 7" yaza və ya birbaşa Oracle veb saytından sdk yükləmə səhifəsinə keçə bilərsiniz.
-
Təqdim olunan SDK siyahısından platformanıza uyğun olanı seçməlisiniz. Məqalə paylamanın quraşdırılmasını təsvir edir: “java_ee_sdk-7-jdk7-windows-x64-ml.exe”
-
Quraşdırma faylını işə salın. Başlanğıc zamanı aşağıdakı səhv baş verə bilər (əgər bu baş vermirsə, sadəcə quraşdırmaya davam edə bilərsiniz):
Bu o deməkdir ki, quraşdırıcı əvvəlcədən quraşdırılmış Java Runtime Environment-ə gedən yolu tapa bilmədi. Səhv əmr satırından istifadə edərək JRE-yə yolu əl ilə ötürməklə düzəldilə bilər. Bunun üçün quraşdırma faylını PowerShell vasitəsilə işə salmalı və -j parametri vasitəsilə əvvəlcədən quraşdırılmış JRE-yə yolu ötürməlisiniz.
Məsələn, bu kimi:
-
Əlavə quraşdırma proseduru əksər proqramlar üçün olduqca xarakterikdir. Sizə lazım olan tək şey Next və Install düymələrini sıxmaqdır.
Proqram Java EE SDK-nı, eləcə də quraşdırma başa çatdıqdan sonra işə düşəcək və istifadəyə hazır olan GlassFish serverini quraşdıracaq. -
GlassFish serverinin işlədiyinə əmin olmaq üçün quraşdırma tamamlandıqdan sonra siz serverin idarəetmə panelini aça bilərsiniz, bu da http://localhost:4848/ ünvanında mövcuddur.
Aşağıdakı ekran görüntüsü:
GlassFish əmr xətti ilə işə salınır və dayandırılır
Beləliklə, server işləyir və işləyir, lakin serverin işə salınması quraşdırma proqramı tərəfindən başlanıb. Aşağıda serveri özünüz necə işə salıb dayandıracağınızı anlamağa çalışacağıq. Əvvəlcə domen kimi bir varlığı ortaya çıxaraq. Domen bir administrasiya serveri tərəfindən idarə olunan bir və ya daha çox GlassFish server nümunələri toplusudur. GlassFish serverini quraşdırarkən standart domen yaradılır - domain1. Aşağıdakı komponentlər onunla əlaqələndirilir:- Server portu (standart 8080);
- İdarəetmə server portu (standart 4848);
- Administrator istifadəçi adı və parol (defolt olaraq admindir və standart olaraq parol tələb olunmur).
asadmin start-domain domain_name
asadmin stop-domain domain_name
C:\glassfish4\glassfish\bin alt qovluğundan PowerShell-i işə salmaqla serveri dayandırmağa çalışaq (quraşdırıldıqdan sonra artıq işləyir) : Server dayandırılıb. İndi onu işə salaq:
İlk Java EE tətbiqini, dukes-age-i təhlil edirik
Sonra Java EE demo tətbiqinə baxacağıq: dukes-age. Bu proqram birinci kubok tətbiqi ilə birlikdə Java EE SDK-ya daxildir. Bu proqramların təsvirləri Oracle-ın rəsmi sənədləşmə saytında yeni başlayan Java EE tərtibatçıları üçün Java EE üzrə giriş kursunun 3 və 4-cü bölmələrində təqdim olunur . Bu yazıda biz duke-age proqramına qısaca nəzər salacağıq və bu tətbiqin IntelliJ IDEA inkişaf mühitindən GlassFish serverində işə salınması prosesini daha ətraflı nəzərdən keçirəcəyik. Tətbiq glassfish server kataloqunun daxilində yerləşir. Java EE SDK-nı quraşdırarkən glassfish serveri üçün standart yolu dəyişməmisinizsə, bu proqramı qovluqda tapa bilərsiniz: C:\glassfish4\docs\firstcup\example\dukes-age . Yəqin ki, hər bir Java proqramçısı, yeni başlayan və təcrübəli, ən azı bir dəfə Java proqramlaşdırma dilinin talismanını görmüşdür - Duke: Duke-nin ad günü olduğunu az adam bilir. O, 1995-ci il mayın 23-də Java texnologiyasının ilk demo versiyası nəşr olunanda anadan olub. Dukes-age proqramı, adından da göründüyü kimi, Dyukun yaşı haqqında məlumat verir. Gəlin bu proqramı IntelliJ IDEA-da açaq: Fayl -> Yeni -> Mövcud Mənbələrdən Layihə... Sonra standart olaraq C:\glassfish4\docs\firstcup\example\dukes- ünvanında yerləşən dukes-age tətbiqinin olduğu qovluğa keçin. age , pom.xml faylını seçin və OK düyməsini basın: Aşağıdakı struktura malik proqram açılacaq: Gəlin sinif koduna nəzər salaqDukesAgeResource
:
package firstcup.dukesage.resource;
import java.util.Calendar;
import java.util.GregorianCalendar;
import javax.ws.rs.GET;
import javax.ws.rs.Path;
import javax.ws.rs.Produces;
/**
* REST Web Service
*
*/
@Path("dukesAge")
public class DukesAgeResource {
/** Creates a new instance of DukesAgeResource */
public DukesAgeResource() {
}
/**
* Retrieves representation of an instance of DukesAgeResource
* @return an instance of java.lang.String
*/
@GET
@Produces("text/plain")
public String getText() {
// Create a new Calendar for Duke's birthday
Calendar dukesBirthday = new GregorianCalendar(1995, Calendar.MAY, 23);
// Create a new Calendar for today
Calendar now = GregorianCalendar.getInstance();
// Subtract today's year from Duke's birth year, 1995
int dukesAge = now.get(Calendar.YEAR) - dukesBirthday.get(Calendar.YEAR);
dukesBirthday.add(Calendar.YEAR, dukesAge);
// If today's date is before May 23, subtract a year from Duke's age
if (now.before(dukesBirthday)) {
dukesAge--;
}
// Return a String representation of Duke's age
return "" + dukesAge;
}
}
Bu, bir metodu olan JAX-RS RESTful veb xidmətidir - getText()
. Bu metodun kodunu tədqiq etsəniz, məlum olur ki, metod Dukenin doğulmasından keçən illərin sayını qaytarır. Yəni üsul Duke yaşını qaytarır. Sinif REST kontekstində resursdur.
- Sinfin üstündəki annotasiya
@Path("dukesAge")
bu sinif tərəfindən zənglərin işlənəcəyi URI yolunu müəyyən edir. - Metodun üstündəki annotasiya
@GET
bizə bu metodun GET sorğularını emal etdiyini bildirir. - Annotasiya
@Produces("text/plain")
sorğuya cavabın media növünü müəyyən edir.getText()
Metodun media növü ilə cavablar yaradacağını təxmin etmək çətin deyil : mətn/düz.
<?xml version="1.0" encoding="UTF-8"?>
<web-app version="3.0" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd">
<servlet>
<servlet-name>javax.ws.rs.core.Application</servlet-name>
</servlet>
<servlet-mapping>
<servlet-name>javax.ws.rs.core.Application</servlet-name>
<url-pattern>/webapi/*</url-pattern>
</servlet-mapping>
</web-app>
Bu faylda teq daxilində dəyəri olan servlet-mapping
teq müəyyən edilir . Burada müəyyən bir kök nöqtəsi müəyyən edilir, zənglər xidmət tərəfindən daha sonra işlənəcəkdir. Annotasiya ilə birləşdirilərsə , məlum olur ki, Dyukun yaşı haqqında məlumat almaq üçün /webapi/dukesAge ünvanı ilə əlaqə saxlamalısınız. url-pattern
/webapi/*
@Path("dukesAge")
GlassFish serverində Java EE proqramını işə salmaq üçün IntelliJ IDEA-nın qurulması
Dukes-age proqramı haqqında çox ümumi təsəvvürümüz var (bu barədə Oracle saytında daha çox oxuyun ), gəlin IntelliJ IDEA-nı konfiqurasiya edək ki, bu proqramı IDE-dən işə salaq. IntelliJ IDEA-nın qurulması- Bunun üçün Run -> Edit Configurations menyusuna keçin.
- Run/Debug Configurations paneli açılacaq:
- Yeni konfiqurasiya əlavə etməliyik. Bunu etmək üçün artı işarəsini vurun və ya Alt+Insert isti düymələrindən istifadə edin. Açılan siyahıda GlassFish Server -> Local seçin:
- Açılan pəncərədə konfiqurasiyanı qurmağa başlayaq:
- Növbəti addım serverə yerləşdirilməli olan artefaktları göstərməkdir. Bu, Yerləşdirmə nişanı vasitəsilə artı -> Artifakt... üzərinə klikləməklə edilə bilər.
- Dukes-age:war seçin və OK düyməsini basın:
- Sonra, Tətbiq et və sonra OK düyməsini basaraq konfiqurasiyamızı qeyd edin.
Tətbiqin işə salınması
İndi tətbiqi işə salmağa çalışaq.-
Bunun üçün Alt+Shift+F10 isti düymələrindən və ya Run -> Run... menyusu vasitəsilə istifadə edə bilərsiniz.
Və yaratdığımız duke-age konfiqurasiyasını seçin:
-
Bundan sonra Xidmətlər panelində başlanğıc qeydlərini görürük:
-
Sonra, hər şey təlimatlara uyğun aparılırsa, brauzer açılacaq və heç bir şeyin işləmədiyi aydın olacaq:
-
Bunun üçün IntelliJ IDEA-ya, sonra menyuya qayıdaq: Run -> Edit Configurations...
-
Əvvəllər saxlanmış konfiqurasiyanı seçək və aşağıdakı ekran görüntüsünə uyğun olaraq URL-i yeniləyək:
-
Gəlin konfiqurasiyanı saxlayaq və Ctrl+Shift+F10 isti düyməsindən və ya Xidmətlər panelindəki xüsusi düymədən istifadə edərək tətbiqimizi yenidən başladın:
-
Yenidən başladıqdan sonra, hər şey düzgün aparılıbsa, Dyukun yaşını görəcəyik:
Nəticə
Bu yazıda biz GlassFish 4.0 serveri, IntelliJ IDEA 2019.3.1 (Ultimate) inkişaf mühiti, həmçinin Java EE SDK versiyası 7 nümunəsindən istifadə edərək, Java EE proqramları ilə işləmək üçün yerli mühitinizi necə konfiqurasiya edə biləcəyinizi nəzərdən keçirdik. Necə edə biləcəyinizə baxdıq:- Java EE SDK, həmçinin GlassFish serverini yükləyin və quraşdırın;
- PowerShell vasitəsilə GlassFish serverini dayandırın və işə salın;
- IntelliJ IDEA-nı konfiqurasiya edin ki, Java EE proqramlarını IDE-dən GlassFish serverinə yerləşdirə və dərhal işə salın.
Bonus vəzifəsi
- Bütün təsvir olunan addımları özünüz təkrarlayın.
- Oracle-dan başlayan Java EE tərtibatçıları üçün Java EE üzrə giriş kursunu keçin .
- Ulduz işarəsi olan element. İkinci birinci kubok demo tətbiqini özünüz yerləşdirməyə çalışın. Bu proqram daha interaktivdir və həmçinin duke-age proqramı ilə qarşılıqlı əlaqədədir. Bu addımı tamamlamaq üçün müstəqil olaraq aşağıdakı sualları başa düşməlisiniz:
- GlassFish server daxilində verilənlər bazasını necə aktivləşdirmək olar;
- İki tətbiqi bir-biri ilə necə inteqrasiya etmək olar (birinci kubokun içərisində bu məqalədə müzakirə etdiyimiz hersoq yaşının son nöqtəsinə gedən yolu göstərir);
- İlk kubokun yerləşdirilməsi üçün Intellij IDEA-da yeni konfiqurasiyanı necə yaratmaq olar (bu məqalədə göstərilənlərə bənzər);
- Bəlkə bir çox başqa suallar)
GO TO FULL VERSION