JavaRush /Java Blogu /Random-AZ /Java EE inkişafı üçün yerli mühitin qurulması
zor07
Səviyyə
Санкт-Петербург

Java EE inkişafı üçün yerli mühitin qurulması

Qrupda dərc edilmişdir
Bu yazıda biz Java EE proqramlarını işə salmaq üçün iş mühiti quracağıq. Xatırladım: əvvəlki materialda Java EE- nin əsaslarını əhatə etdik . Java EE inkişafı üçün yerli mühitin qurulması - 1Ətraf mühit dedikdə, müxtəlif proqram komponentləri toplusunu nəzərdə tuturuq:
  • Java EE SDK;
  • Java EE Tətbiq Serveri GlassFish;
  • IntelliJ IDEA-nın qurulması.
Bu materialın əsas məqsədləri:
  1. Java EE proqramları ilə işləmək üçün iş mühitini necə hazırlaya biləcəyinizi göstərin.
  2. GlassFish serverində IntelliJ IDEA-dan Java EE proqramlarını necə yerləşdirə və işə sala biləcəyinizi göstərin.
Bunun üçün nə edəcəyik:
  1. Java EE 7 SDK yükləyin və quraşdırın.
  2. Gəlin Java EE Tətbiq Serveri GlassFish-i qaldıraq.
  3. Komanda xətti vasitəsilə serveri necə işə salmağı və dayandırmağı öyrənək.
  4. Gəlin IntelliJ IDEA-nı proqramları bu serverə yerləşdirmək üçün konfiqurasiya edək.
  5. GlassFish proqram serveri ilə birlikdə Java EE 7 SDK-ya daxil olan demo proqramı yerləşdirək və işə salaq.
Bu məqalə Java-da Enterprise inkişafı ilə tanış olan təcrübəsiz Java tərtibatçıları üçün faydalı olacaqdır. Bunu gələcək təcrübə üçün bir az zəmin hazırlığı hesab edin. Əsas Windows əmr xətti (PowerShell) bacarıqları ilə tanış olsanız, materialı başa düşəcəksiniz. Bu məqalədə istifadə olunan proqram komponentlərinin versiyaları:
  • 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.
  1. Ə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.

  2. 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”

  3. 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):

    Java EE inkişafı üçün yerli mühitin qurulması - 2

    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:

    Java EE inkişafı üçün yerli mühitin qurulması - 3
  4. Ə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.

  5. 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ü:

    Java EE inkişafı üçün yerli mühitin qurulması - 4

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).
Domain1 ona təyin edilmiş standart dəyərlərə malikdir. Java EE inkişafı üçün yerli mühitin qurulması - 5Serveri işə salmaq və dayandırmaq üçün GlassFish paylanması bir neçə skripti ehtiva edir, onlar standart olaraq aşağıdakı kataloqda yerləşir: C:\glassfish4\glassfish\bin GlassFish serverini komanda xətti ilə işə salmaq və dayandırmaq üçün siz asadmin skriptindən istifadə edə bilərsiniz. və onun əmrləri:
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) : Java EE inkişafı üçün yerli mühitin qurulması - 6Server dayandırılıb. İndi onu işə salaq: Java EE inkişafı üçün yerli mühitin qurulması - 7

İ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: Java EE inkişafı üçün yerli mühitin qurulması - 8Duke-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: Java EE inkişafı üçün yerli mühitin qurulması - 9Aşağıdakı struktura malik proqram açılacaq: Java EE inkişafı üçün yerli mühitin qurulması - 10Gəlin sinif koduna nəzər salaq DukesAgeResource:
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.
  1. 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.
  2. Metodun üstündəki annotasiya @GETbizə bu metodun GET sorğularını emal etdiyini bildirir.
  3. 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.
Gəlin web.xml konfiqurasiya faylına da nəzər salaq:
<?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-mappingteq 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ı
  1. Bunun üçün Run -> Edit Configurations menyusuna keçin.
  2. Run/Debug Configurations paneli açılacaq: Java EE inkişafı üçün yerli mühitin qurulması - 11
  3. 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: Java EE inkişafı üçün yerli mühitin qurulması - 12
  4. Açılan pəncərədə konfiqurasiyanı qurmağa başlayaq: Java EE inkişafı üçün yerli mühitin qurulması - 13
  5. 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. Java EE inkişafı üçün yerli mühitin qurulması - 14
  6. Dukes-age:war seçin və OK düyməsini basın: Java EE inkişafı üçün yerli mühitin qurulması - 15
  7. Sonra, Tətbiq et və sonra OK düyməsini basaraq konfiqurasiyamızı qeyd edin.
Konfiqurasiya yaradıldı!

Tətbiqin işə salınması

İndi tətbiqi işə salmağa çalışaq.
  1. 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:

    Java EE inkişafı üçün yerli mühitin qurulması - 16

  2. Bundan sonra Xidmətlər panelində başlanğıc qeydlərini görürük:

    Java EE inkişafı üçün yerli mühitin qurulması - 17
  3. 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:

    Java EE inkişafı üçün yerli mühitin qurulması - 18
İT dünyası belədir. Hər şey düzgün aparılsa da, bir şey işləməyə bilər. Ancaq narahat olmayın: bunu necə düzgün edəcəyinizi dərhal təsvir edə bilərsiniz, amma sonra bəzi nüanslar daha az aydın olacaq. Məsələn, tətbiqi işə salarkən IDEA-nın bizi yönləndirdiyi url necə yaradılır? Gəlin buna diqqət edək. Biz http://localhost:8080/dukes-age-7.0.1/ ünvanına yönləndirildik . Bunun haradan gəldiyini anlamaq üçün (/dukes-age-7.0.1/) GlassFish serverinin admin panelinə keçək. Sol menyuda Proqramlar üzərinə klikləyin. Sonra duke-age daxil olmaqla, yerləşdirilmiş proqramları görəcəksiniz. Dukes-age proqramını seçdiyiniz zaman onun bəzi xüsusiyyətlərini, o cümlədən Context-Root elementini görə bilərsiniz: Java EE inkişafı üçün yerli mühitin qurulması - 19dukes-age-7.0.1 proqramın adı və versiyasıdır. Kök nöqtəsi. Dues-age-nin işləyəcəyi bütün sorğular /dukes-age-7.0.1/ prefiksi ilə başlamalıdır. Beləliklə, bizim kök nöqtəmiz var: /dukes-age-7.0.1. Bundan əlavə, əvvəllər tətbiqimizin /webapi/dukesAge-ə müraciətləri idarə edəcəyini müzakirə etdik. Gəlin bu iki şeyi birləşdirək və konfiqurasiyamızı yeniləyək.
  1. Bunun üçün IntelliJ IDEA-ya, sonra menyuya qayıdaq: Run -> Edit Configurations...

  2. Ə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:

    Java EE inkişafı üçün yerli mühitin qurulması - 20
  3. 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:

    Java EE inkişafı üçün yerli mühitin qurulması - 21
  4. Yenidən başladıqdan sonra, hər şey düzgün aparılıbsa, Dyukun yaşını görəcəyik:

    Настройка локального окружения для Java EE разработки - 22
Əla. Nəhayət Duke-nin 24 yaşında olduğunu bildik. Əgər 2020-ci ilin aprelindən başlayaraq növbəti bir neçə ay ərzində yuxarıda təsvir edilən bütün addımları təkrarlamasanız, Duke çox güman ki, bir az qocalacaq.

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

  1. Bütün təsvir olunan addımları özünüz təkrarlayın.
  2. Oracle-dan başlayan Java EE tərtibatçıları üçün Java EE üzrə giriş kursunu keçin .
  3. 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:
    1. GlassFish server daxilində verilənlər bazasını necə aktivləşdirmək olar;
    2. İ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);
    3. İ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);
    4. Bəlkə bir çox başqa suallar)
P.S. Giriş maneəsi yüksəkdir, amma sizi motivasiya edən bu deyilmi?
Şərhlər
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION