- Java EE SDK;
- Java EE Programma Serweri GlassFish;
- IntelliJ IDEA gurmak.
- Java EE programmalary bilen işlemek üçin iş gurşawyny nädip taýýarlap boljakdygyny görkeziň.
- GlassFish serwerinde IntelliJ IDEA-dan Java EE programmalaryny nädip ýerleşdirip we işledip boljakdygyny görkeziň.
- Java EE 7 SDK-ny göçürip alyň.
- Java EE Programma Serweri GlassFish-i göreliň.
- Serweriň buýruk setiri arkaly nädip başlamalydygyny we saklanmagyny öwreneliň.
- Geliň, bu serwere programmalary ýerleşdirmek üçin IntelliJ IDEA-ny düzeliň.
- Java EE 7 SDK-a girýän GlassFish amaly serweri bilen bilelikde demo programmasyny ýerleşdireliň we işledeliň.
- GlassFish 4.0;
- IntelliJ IDEA 2019.3.1 (Ultimate);
- Java EE SDK 7.
Java EE SDK gurmak
Möhüm ýagdaý. Java EE SDK gurmazdan ozal, Java SE SDK-yň öňünden gurlandygyna göz ýetirmeli.-
Ilki bilen SDK-ny göçürip almaly. Munuň üçin gözleg motoryny ýazyp bilersiňiz: “Java EE SDK 7” ýa-da gönüden-göni Oracle web sahypasyndan sdk göçürip almak sahypasyna girip bilersiňiz.
-
Berlen SDK-laryň sanawyndan platformaňyza laýyk birini saýlamaly. Makalada paýlanyşy gurnamak beýan edilýär: “java_ee_sdk-7-jdk7-windows-x64-ml.exe”
-
Gurnama faýly işlediň. Başlangyç wagtynda aşakdaky ýalňyşlyk bolup biler (eger ýüze çykmasa, gurnamagy dowam etdirip bilersiňiz):
Bu, gurnawçynyň öňünden gurlan Java Runtime gurşawyna ýol tapyp bilmeýändigini aňladýar. Erroralňyşlyk buýruk setirini ulanyp, JRE-e el bilen geçip düzedilip bilner. Munuň üçin gurnama faýlyny PowerShell arkaly işletmeli we -j parametri arkaly öňünden gurlan JRE-e geçmeli.
Mysal üçin, şuňa meňzeş:
-
Geljekki gurnama proseduralary köp programma üçin adatydyr. Etjek bolýan zadyňyz, Indiki we Gurmak düwmelerine basmak.
Programma, Java EE SDK, şeýle hem GlassFish serwerini gurar, gurnama tamamlanandan soň işe girişer we ulanmaga taýyn bolar. -
GlassFish serweriniň işleýändigine göz ýetirmek üçin, gurnama işleri tamamlanandan soň, serwer administrator panelini açyp bilersiňiz: http: // localhost: 4848 /
Aşakdaky ekran suraty:
GlassFish buýruk setiri arkaly başlamak we durmak
Şeýlelikde, serwer işleýär we işleýär, ýöne serwer başlangyjy gurnama programmasy bilen başlandy. Aşakda serweri nädip başlamalydygyny we duruzmalydygyny anyklamaga synanyşarys. Ilki bilen, domen ýaly bir zady açalyň. Domen, bir administrasiýa serweri tarapyndan dolandyrylýan bir ýa-da birnäçe GlassFish serwer mysallarynyň toplumydyr. GlassFish serwerini guranyňyzda, adaty bir domen döredilýär - domain1. Munuň bilen aşakdaky komponentler baglanyşdyrylýar:- Serwer porty (deslapky 8080);
- Dolandyryş serwer porty (deslapky 4848);
- Dolandyryjy ulanyjy ady we paroly (deslapky admin we asyl parol talap edilmeýär).
asadmin start-domain domain_name
asadmin stop-domain domain_name
“C: \ glassfish4 \ glassfish \ bin” bukjasyndan PowerShell-i işledip, serweri duruzmaga synanyşalyň ( Serwer togtadyldy ) . Indi işledeliň:
Ilkinji Java EE programmasyny, grekleriň ýaşyny seljerýäris
Indiki Java EE demo programmasyna serederis: dukes-age. Bu programma, ilkinji kubok programmasy bilen birlikde Java EE SDK-a girýär. Bu programmalaryň beýany , täze Oracle EE döredijiler üçin Java EE-de giriş kursunyň 3-nji we 4-nji bölümlerinde resmi Oracle resminama web sahypasynda görkezilýär . Bu makalada, gersoglar döwrüniň programmasyna gysgaça serederis we IntelliJ IDEA ösüş gurşawyndan GlassFish serwerinde bu programmany işe girizmegiň işini has jikme-jik öwreneris. Programma aýna balyk serweri katalogynyň içinde ýerleşýär. Java EE SDK gurlanda aýna balyk serweri üçin deslapky ýoly üýtgetmedik bolsaňyz, bu programmany bukjada tapyp bilersiňiz: C: \ glassfish4 \ docs \ firstcup \ example \ dukes-age . Javahtimal, her bir Java dörediji, öwreniji we tejribeli, iň bolmanda bir gezek Java programmirleme diliniň maskotyny gören bolmagy mümkin - Gersog: Dýukyň doglan gününi bilýänler az. 1995-nji ýylyň 23-nji maýynda Java tehnologiýasynyň ilkinji demo wersiýasy çap edilende dünýä indi. Dýuklar ýaşy programmasy, adyndan görnüşi ýaly, Dýukyň ýaşy barada maglumat berýär. Geliň, bu programmany IntelliJ IDEA-da açalyň: Faýl -> Täze -> Bar bolan çeşmelerden taslama ... Soňra C: \ glassfish4 \ docs \ firstcup \ example \ dukes- ýaşy , pom.xml faýly saýlaň we "OK" -a basyň: Aşakdaky gurluşy bolan bir programma açylar: Geliň synp kodyna göz aýlalyň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 usul bilen JAX-RS RESTful web hyzmaty - getText()
. Bu usulyň koduny gözden geçirseňiz, bu usulyň Dýuk dünýä ineninden bäri geçen ýyllaryň sanyny yzyna gaýtaryp berjekdigi belli bolýar. .Agny, bu usul Dýukyň ýaşyny görkezýär. Synp REST kontekstinde çeşme.
- Synpyň üstündäki düşündiriş,
@Path("dukesAge")
jaňlaryň bu synp tarapyndan işlenjek URI ýoluny kesgitleýär. - Usulyň üstündäki düşündiriş,
@GET
bu usulyň GET isleglerini gaýtadan işleýändigini aýdýar. - Bellikde
@Produces("text/plain")
haýyşa jogap berişiň media görnüşi görkezilýär.getText()
Usulyň media görnüşi: tekst / ýönekeý görnüşde jogap berjekdigini çaklamak kyn däl .
<?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 faýlda, belligiň içinde gymmaty bolan servlet-mapping
bellik kesgitlenýär . Bu ýerde belli bir kök nokady kesgitlenýär, jaňlar hyzmat tarapyndan mundan beýläk işlener. Düşündiriş bilen utgaşdyrylsa , Dýukyň ýaşy barada maglumat almak üçin adres / webapi / dukesAge ýüz tutmalydygy ýüze çykýar. url-pattern
/webapi/*
@Path("dukesAge")
GlassFish serwerinde Java EE programmasyny işletmek üçin IntelliJ IDEA gurmak
Dýuklar ýaşyndaky programma barada umumy düşünjämiz bar (bu hakda Oracle saýtynda has giňişleýin okaň ) , geliň, bu programmany IDE-den işletmek üçin IntelliJ IDEA-ny düzeliň. IntelliJ IDEA gurmak- Munuň üçin Işlet -> Sazlamalary üýtgetmek menýusyna giriň.
- Işletmek / düzeltmek konfigurasiýalary paneli açylar:
- Täze konfigurasiýa goşmaly. Munuň üçin goşmaça belgä basyň ýa-da Alt + Insert düwmesini ulanyň. Açylýan sanawda GlassFish Server -> Localerli: saýlaň.
- Açylýan penjirede, konfigurasiýany gurup başlalyň:
- Indiki ädim, serwere ýerleşdirilmeli artefaktlary görkezmekdir. Muny “Goşma” goýmasy arkaly goşmak -> Artifact ...
- Dýuklar ýaşy: uruş saýlaň we OK basyň:
- Ondan soň, “Apply” düwmesine basyp, konfigurasiýamyzy saklaň.
Programmany işe girizmek
Indi programmany işletmäge synanyşalyň.-
Munuň üçin “Alt + Shift + F10” düwmesini ýa-da “Run -> Run ...” menýusyndan peýdalanyp bilersiňiz.
We döreden grekleriň ýaş konfigurasiýasyny saýlaň:
-
Ondan soň Hyzmatlar panelinde başlangyç surnallaryny görýäris:
-
Soňra hemme zat görkezmelere laýyklykda edilse, brauzer açylar we hiç zadyň işlemejekdigi belli bolar:
-
Munuň üçin IntelliJ IDEA-a, soňra bolsa menýuda dolanalyň: Işletmek -> Sazlamalary redaktirlemek ...
-
Öň saklanan konfigurasiýany saýlalyň we aşakdaky skrinshot boýunça URL-ni täzeläliň:
-
Sazlamany ýatda saklalyň we Ctrl + Shift + F10 düwmesini ulanyp ýa-da Hyzmatlar panelinde ýörite düwmäni ulanyp, programmamyzy täzeden açalyň:
-
Täzeden başlandan soň, hemme zat dogry edilen bolsa, Dýukyň ýaşyny göreris:
Netije
Bu makalada, GlassFish 4.0 serweriniň, IntelliJ IDEA 2019.3.1 (Ultimate) ösüş gurşawynyň, şeýle hem Java EE SDK 7 wersiýasynyň mysalyny ulanyp, ýerli gurşawyňyzy Java EE programmalary bilen nädip sazlap boljakdygyna göz aýladyk. Nädip edip biljekdigiňize göz aýladyk:- Java EE SDK, şeýle hem GlassFish serwerini göçürip alyň;
- PowerShell arkaly GlassFish serwerini duruzyň we işe giriziň;
- Java EE programmalaryny IDE-den GlassFish serwerine ýerleşdirip, derrew işe girizip bilersiňiz, IntelliJ IDEA sazlaň.
Bonus meselesi
- Beýan edilen ädimleriň hemmesini özüňiz gaýtalaň.
- Oracle-dan başlaýan Java EE döredijiler üçin Java EE-de giriş kursyny geçiň .
- Teryldyzjykly element Ikinji kubok demo programmasyny özüňiz ýerleşdirmäge synanyşyň. Bu programma has interaktiw we grekler ýaşyndaky programma bilen hem täsirleşýär. Bu ädimi tamamlamak üçin aşakdaky soraglara özbaşdak düşünmeli bolarsyňyz:
- AýnaFish serweriniň içinde maglumat bazasyny nädip işletmeli;
- Iki programmany biri-biri bilen nädip birleşdirmeli (birinji käsäniň içinde bu makalada ara alyp maslahatlaşan grekleriň ýaş nokadyna barýan ýoly görkezýär);
- Ilkinji kubok ýerleşdirmek üçin Intellij IDEA-da täze konfigurasiýany nädip döretmeli (bu makalada görkezilişi ýaly);
- Mümkin başga-da köp sorag)
GO TO FULL VERSION