- Java EE SDK;
- Java EE dastur serveri GlassFish;
- IntelliJ IDEA sozlanmoqda.
- Java EE ilovalari bilan ishlash uchun ish muhitini qanday tayyorlashingiz mumkinligini ko'rsating.
- GlassFish serverida IntelliJ IDEA-dan Java EE ilovalarini qanday joylashtirishingiz va ishga tushirishingiz mumkinligini ko'rsating.
- Java EE 7 SDK ni yuklab oling va o'rnating.
- Keling, Java EE Application Server GlassFishni ko'taraylik.
- Keling, buyruq satri orqali serverni ishga tushirish va to'xtatishni o'rganamiz.
- IntelliJ IDEA ni ushbu serverga ilovalarni joylashtirish uchun sozlaymiz.
- Keling, GlassFish dastur serveri bilan birga Java EE 7 SDK tarkibiga kiritilgan demo ilovani ishga tushiramiz va ishga tushiramiz.
- GlassFish 4.0;
- IntelliJ IDEA 2019.3.1 (Ultimate);
- Java EE SDK 7.
Java EE SDK o'rnatilmoqda
Muhim shart. Java EE SDK ni o'rnatishdan oldin Java SE SDK oldindan o'rnatilganligiga ishonch hosil qilishingiz kerak.-
Birinchidan, biz SDK-ni yuklab olishimiz kerak. Buni amalga oshirish uchun siz qidiruv tizimiga yozishingiz mumkin: "Java EE SDK 7" yoki to'g'ridan-to'g'ri Oracle veb-saytidan SDK yuklab olish sahifasiga o'ting.
-
Taqdim etilgan SDKlar ro'yxatidan platformangizga mos keladiganini tanlashingiz kerak. Maqolada tarqatishni o'rnatish tasvirlangan: "java_ee_sdk-7-jdk7-windows-x64-ml.exe"
-
O'rnatish faylini ishga tushiring. Ishga tushirish paytida quyidagi xatolik yuz berishi mumkin (agar u sodir bo'lmasa, siz shunchaki o'rnatishni davom ettirishingiz mumkin):
Bu shuni anglatadiki, o'rnatuvchi oldindan o'rnatilgan Java Runtime Environmentga yo'lni topa olmadi. Xatoni JREga yo'lni buyruq qatori yordamida qo'lda o'tkazish orqali tuzatish mumkin. Buning uchun PowerShell orqali o'rnatish faylini ishga tushirishingiz va -j parametri orqali oldindan o'rnatilgan JREga yo'lni o'tkazishingiz kerak.
Masalan, bu kabi:
-
Keyingi o'rnatish jarayoni ko'pgina dasturlar uchun odatiy holdir. Buning uchun "Keyingi" va "O'rnatish" tugmachalarini bosish kifoya.
Dastur Java EE SDK ni, shuningdek, o'rnatish tugallangandan so'ng ishga tushadigan va foydalanishga tayyor bo'lgan GlassFish serverini o'rnatadi. -
GlassFish serveri ishlayotganiga ishonch hosil qilish uchun, o'rnatish tugallangandan so'ng, serverning boshqaruv panelini ochishingiz mumkin, u quyidagi manzilda mavjud: http://localhost:4848/
Quyidagi skrinshot:
GlassFish buyruq satri orqali ishga tushiriladi va to'xtatiladi
Shunday qilib, server ishlamoqda, lekin serverni ishga tushirish o'rnatish dasturi tomonidan boshlangan. Quyida biz serverni o'zingiz qanday boshlash va to'xtatishni aniqlashga harakat qilamiz. Birinchidan, domen kabi ob'ektni ochib beraylik. Domen - bu bitta ma'muriy server tomonidan boshqariladigan bir yoki bir nechta GlassFish server namunalari to'plami. GlassFish serverini o'rnatishda standart domen yaratiladi - domain1. Quyidagi komponentlar u bilan bog'liq:- Server porti (standart 8080);
- Ma'muriy server porti (standart 4848);
- Administrator foydalanuvchi nomi va paroli (standart ma'mur va parol talab qilinmaydi).
asadmin start-domain domain_name
asadmin stop-domain domain_name
Keling , C:\glassfish4\glassfish\bin pastki katalogidan PowerShell-ni ishga tushirish orqali serverni to'xtatishga harakat qilaylik (chunki u o'rnatishdan so'ng allaqachon ishlaydi) : Server to'xtatildi. Endi uni ishga tushiramiz:
Biz birinchi Java EE ilovasini, dukes-ageni tahlil qilamiz
Keyinchalik biz Java EE demo ilovasini ko'rib chiqamiz: dukes-age. Ushbu ilova Java EE SDK ga birinchi kubok ilovasi bilan birga kiritilgan. Ushbu ilovalarning tavsiflari Oracle rasmiy hujjatlari veb-saytida yangi boshlanuvchi Java EE ishlab chiquvchilari uchun Java EE bo'yicha kirish kursining 3 va 4 bo'limlarida keltirilgan . Ushbu maqolada biz dukes-age ilovasini qisqacha ko'rib chiqamiz va IntelliJ IDEA ishlab chiqish muhitidan GlassFish serverida ushbu dasturni ishga tushirish jarayonini batafsil ko'rib chiqamiz. Ilova glassfish server katalogida joylashgan. Java EE SDK ni o'rnatishda siz glassfish serverining standart yo'lini o'zgartirmagan bo'lsangiz, ushbu ilovani quyidagi papkada topishingiz mumkin: C:\glassfish4\docs\firstcup\example\dukes-age . Ehtimol, har bir Java dasturchisi, boshlang'ich va tajribali, kamida bir marta Java dasturlash tilining maskotini ko'rgan - Dyuk: Dyukning tug'ilgan kuni borligini kam odam biladi. U 1995-yil 23-mayda, Java texnologiyasining birinchi demo versiyasi chop etilganda tug‘ilgan. Dyuks yoshi ilovasi, nomidan ko'rinib turibdiki, Dyukning yoshi haqida ma'lumot beradi. Keling, ushbu ilovani IntelliJ IDEA da ochamiz: Fayl -> Yangi -> Mavjud manbalardan loyiha... Keyin sukut bo'yicha C:\glassfish4\docs\firstcup\example\dukes- da joylashgan dukes-age ilovasi joylashgan papkaga o'ting. age , pom.xml faylini tanlang va OK tugmasini bosing: Quyidagi tuzilishga ega dastur ochiladi: Keling, sinf kodini ko'rib chiqamizDukesAgeResource
:
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 bitta usulga ega JAX-RS RESTful veb-xizmati - getText()
. Agar siz ushbu usulning kodini o'rgansangiz, usul Dyuk tug'ilgandan beri o'tgan yillar sonini qaytarishi aniq bo'ladi. Ya'ni, usul Dyukning yoshini qaytaradi. Sinf - bu REST kontekstidagi resurs.
- Sinf ustidagi izoh
@Path("dukesAge")
ushbu sinf tomonidan qo'ng'iroqlar qayta ishlanadigan URI yo'lini belgilaydi. - Usulning yuqoridagi izohi
@GET
ushbu usul GET so'rovlarini qayta ishlashini aytadi. - Izoh so'rovga
@Produces("text/plain")
javobning media turini belgilaydi.getText()
Usul media tipidagi javoblarni yaratishini taxmin qilish qiyin emas : matn/tekislik.
<?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>
Ushbu faylda teg ichida qiymati bo'lgan servlet-mapping
teg aniqlanadi . Bu erda ma'lum bir ildiz nuqtasi aniqlanadi, unga qo'ng'iroqlar xizmat tomonidan qayta ishlanadi. Agar izoh bilan birlashtirilgan bo'lsa , Dyukning yoshi haqida ma'lumot olish uchun /webapi/dukesAge manziliga murojaat qilishingiz kerak. url-pattern
/webapi/*
@Path("dukesAge")
GlassFish serverida Java EE ilovasini ishga tushirish uchun IntelliJ IDEA-ni sozlash
Endi bizda Dukes-age ilovasi haqida juda umumiy tasavvurga egamiz (bu haqda Oracle saytida ko'proq o'qing ), keling, IntelliJ IDEA-ni sozlaymiz, shunda biz ushbu ilovani IDE-dan ishga tushiramiz. IntelliJ IDEA sozlanmoqda- Buning uchun Run -> Edit Configurations menyusiga o'ting.
- Run/Debug Configurations paneli ochiladi:
- Biz yangi konfiguratsiyani qo'shishimiz kerak. Buning uchun ortiqcha belgisini bosing yoki Alt+Insert tugmalaridan foydalaning. Ochilgan ro'yxatda GlassFish Server -> Local-ni tanlang:
- Ochilgan oynada konfiguratsiyani sozlashni boshlaymiz:
- Keyingi qadam serverga o'rnatilishi kerak bo'lgan artefaktlarni ko'rsatishdir. Buni "O'rnatish" yorlig'i orqali ortiqcha -> Artifaktni bosish orqali amalga oshirish mumkin.
- Dukes-age:war ni tanlang va OK tugmasini bosing:
- Keyin, Ilova va keyin OK ni bosish orqali konfiguratsiyamizni saqlang.
Ilova ishga tushirilmoqda
Endi dasturni ishga tushirishga harakat qilaylik.-
Buning uchun Alt+Shift+F10 tugmalaridan yoki “Ishga tushirish” -> “Ishga tushirish...” menyusidan foydalanishingiz mumkin.
Va biz yaratgan gertsog yoshi konfiguratsiyasini tanlang:
-
Shundan so'ng biz Xizmatlar panelida ishga tushirish jurnallarini ko'ramiz:
-
Keyin, agar hamma narsa ko'rsatmalarga muvofiq amalga oshirilsa, brauzer ochiladi va hech narsa ishlamayotgani aniq bo'ladi:
-
Buning uchun IntelliJ IDEA-ga, keyin menyuga qaytaylik: Run -> Edit Configurations...
-
Oldindan saqlangan konfiguratsiyani tanlaymiz va URL manzilini quyidagi skrinshotga muvofiq yangilaymiz:
-
Keling, konfiguratsiyani saqlaymiz va Ctrl+Shift+F10 tezkor tugmasi yoki Xizmatlar panelidagi maxsus tugma yordamida ilovamizni qayta ishga tushiramiz:
-
Qayta ishga tushirgandan so'ng, agar hamma narsa to'g'ri bajarilgan bo'lsa, biz Dyukning yoshini ko'ramiz:
Xulosa
Ushbu maqolada biz GlassFish 4.0 serveri, IntelliJ IDEA 2019.3.1 (Ultimate) ishlab chiqish muhiti va Java EE SDK 7-versiyasi misolida Java EE ilovalari bilan ishlash uchun mahalliy muhitni qanday sozlashni ko‘rib chiqdik. qanday qilib qila olasiz:- Java EE SDK, shuningdek GlassFish serverini yuklab oling va o'rnating;
- PowerShell orqali GlassFish serverini to'xtating va ishga tushiring;
- Java EE ilovalarini IDE dan GlassFish serveriga joylashtirishingiz va ularni darhol ishga tushirishingiz uchun IntelliJ IDEA ni sozlang.
Bonusli vazifa
- Barcha tavsiflangan amallarni o'zingiz takrorlang.
- Oracle'dan Java EE dasturini yangi boshlanuvchilar uchun Java EE bo'yicha kirish kursini o'ting .
- Yulduzchali element. Ikkinchi birinchi kubok demo ilovasini o'zingiz joylashtirishga harakat qiling. Ushbu ilova ko'proq interaktiv bo'lib, shuningdek, duke-age ilovasi bilan o'zaro ishlaydi. Ushbu bosqichni bajarish uchun siz quyidagi savollarni mustaqil ravishda tushunishingiz kerak:
- GlassFish serveri ichidagi ma'lumotlar bazasini qanday yoqish mumkin;
- Ikki dasturni bir-biri bilan qanday integratsiya qilish kerak (birinchi stakan ichida biz ushbu maqolada muhokama qilgan gertsog yoshiga boradigan yo'lni ko'rsatadi);
- Birinchi kubokni joylashtirish uchun Intellij IDEA-da yangi konfiguratsiyani qanday yaratish mumkin (ushbu maqolada ko'rsatilganiga o'xshash);
- Boshqa ko'plab savollar bo'lishi mumkin)
GO TO FULL VERSION