- جاوا EE SDK؛
- جاوا EE ايپليڪيشن سرور GlassFish؛
- IntelliJ IDEA ترتيب ڏيڻ.
- ڏيکاريو ته توهان جاوا EE ايپليڪيشنن سان ڪم ڪرڻ لاءِ ڪم ڪندڙ ماحول ڪيئن تيار ڪري سگهو ٿا.
- ڏيکاريو ته توھان ڪيئن ٺاھي سگھوٿا ۽ هلائي سگھوٿا Java EE ايپليڪيشنون IntelliJ IDEA کان GlassFish سرور تي.
- ڊائون لوڊ ۽ انسٽال ڪريو Java EE 7 SDK.
- اچو ته جاوا EE ايپليڪيشن سرور GlassFish کي وڌايو.
- اچو ته سکو ته ڪمانڊ لائن ذريعي سرور کي ڪيئن شروع ۽ بند ڪجي.
- اچو ته ترتيب ڏيو IntelliJ IDEA کي هن سرور تي ايپليڪيشنون لڳائڻ لاءِ.
- اچو ته ڊيمو ايپليڪيشن کي ترتيب ڏيو ۽ هلائيون، جيڪو GlassFish ايپليڪيشن سرور سان گڏ، Java EE 7 SDK ۾ شامل آهي.
- شيشي مڇي 4.0؛
- IntelliJ IDEA 2019.3.1 (الٽيميٽ)؛
- جاوا EE SDK 7.
انسٽال ڪرڻ جاوا EE SDK
اهم شرط. جاوا EE SDK انسٽال ڪرڻ کان پهريان، توهان کي پڪ ڪرڻ جي ضرورت آهي ته جاوا SE SDK اڳ ۾ نصب ٿيل آهي.-
پهرين، اسان کي SDK ڊائون لوڊ ڪرڻ جي ضرورت آهي. هن کي ڪرڻ لاءِ، توهان سرچ انجڻ ۾ ٽائيپ ڪري سگهو ٿا: “Java EE SDK 7”، يا سڌو وڃو sdk ڊائون لوڊ صفحي تي Oracle ويب سائيٽ تان.
-
مهيا ڪيل SDKs جي فهرست مان، توھان کي اھو چونڊڻو پوندو جيڪو توھان جي پليٽ فارم لاءِ موزون آھي. آرٽيڪل تقسيم کي انسٽال ڪرڻ جي وضاحت ڪري ٿو: "java_ee_sdk-7-jdk7-windows-x64-ml.exe"
-
انسٽاليشن فائل کي هلائڻ. شروع ڪرڻ دوران، هيٺ ڏنل غلطي ٿي سگھي ٿي (جيڪڏهن اهو نه ٿئي، ته پوء توهان صرف انسٽاليشن سان جاري رکي سگهو ٿا):
هن جو مطلب اهو آهي ته انسٽالر اڳ ۾ نصب ٿيل جاوا رن ٽائيم ماحول جو رستو ڳولڻ جي قابل نه هو. غلطي کي درست ڪري سگھجي ٿو JRE ڏانھن رستو دستي طور تي ڪمانڊ لائن استعمال ڪندي. هن کي ڪرڻ لاءِ، توهان کي انسٽاليشن فائل هلائڻو پوندو PowerShell ذريعي ۽ رستو پاس ڪريو اڳ-انسٽال ٿيل JRE ڏانهن -j پيراميٽر ذريعي.
مثال طور، هن طرح:
-
وڌيڪ انسٽاليشن جو طريقو اڪثر پروگرامن لاءِ عام آهي. توھان سڀني کي ڪرڻو آھي ڪلڪ ڪريو اڳيون ۽ انسٽال ڪريو بٽڻ.
پروگرام جاوا EE SDK کي انسٽال ڪندو، انهي سان گڏ GlassFish سرور، جيڪو، انسٽاليشن جي مڪمل ٿيڻ تي، تيار ٿي ويندو ۽ استعمال لاءِ تيار هوندو. -
پڪ ڪرڻ لاءِ ته GlassFish سرور ڪم ڪري رهيو آهي، انسٽاليشن مڪمل ٿيڻ کان پوءِ، توهان کوليو سرور ايڊمن پينل، جيڪو هتي موجود هوندو: http://localhost:4848/
هيٺ ڏنل اسڪرين شاٽ:
GlassFish ڪمانڊ لائن ذريعي شروع ۽ بند ٿيڻ
تنهن ڪري، سرور مٿي ۽ هلندڙ آهي، پر سرور جي شروعات انسٽاليشن پروگرام طرفان شروع ڪئي وئي هئي. هيٺ اسين اهو معلوم ڪرڻ جي ڪوشش ڪنداسين ته سرور ڪيئن شروع ڪجي ۽ بند ڪجي. پهرين، اچو ته ظاهر ڪريون اهڙي اداري کي ڊومين جي طور تي. هڪ ڊومين هڪ يا وڌيڪ GlassFish سرور مثالن جو هڪ سيٽ آهي جيڪو هڪ انتظامي سرور پاران منظم ڪيو ويندو آهي. جڏهن GlassFish سرور کي انسٽال ڪري، هڪ ڊفالٽ ڊومين ٺهيل آهي - domain1. هيٺيون جزا ان سان لاڳاپيل آهن:- سرور پورٽ (ڊفالٽ 8080)؛
- انتظامي سرور پورٽ (ڊفالٽ 4848)؛
- ايڊمنسٽريٽر يوزرنيم ۽ پاسورڊ (ڊفالٽ ايڊمن آهي ۽ ڊفالٽ طرفان ڪو به پاسورڊ گهربل ناهي).
asadmin start-domain domain_name
asadmin stop-domain domain_name
اچو ته سرور کي روڪڻ جي ڪوشش ڪريون (جيئن ته اهو اڳ ۾ ئي انسٽاليشن کان پوءِ هلي رهيو آهي) پاور شيل کي سب ڊاريڪٽري C:\glassfish4\glassfish\bin مان هلائيندي : سرور بند ٿي ويو آهي. هاڻي اچو ته ان کي هلون:
اسان پهرين جاوا اي اي ايپليڪيشن جو تجزيو ڪيو، ڊيوڪ-عمر
اڳيون اسان هڪ ڊيمو جاوا اي اي ايپليڪيشن تي نظر ڪنداسين: dukes-age. هي ايپليڪيشن جاوا EE SDK ۾ شامل آهي پهرين-ڪپ ايپليڪيشن سان گڏ. انهن ايپليڪيشنن جا تفصيل سرڪاري Oracle دستاويزي ويب سائيٽ تي پيش ڪيا ويا آهن سيڪشن 3 ۽ 4 ۾ جاوا EE تي تعارفي ڪورس جي شروعاتي جاوا EE ڊولپرز لاءِ . هن آرٽيڪل ۾، اسان مختصر طور تي ڊيوڪس-ايج ايپليڪيشن تي نظر ڪنداسين ۽ وڌيڪ تفصيل سان جانچ ڪنداسين هن ايپليڪيشن کي GlassFish سرور تي IntelliJ IDEA ڊولپمينٽ ماحول کان لانچ ڪرڻ جي عمل کي. اپليڪيشن گلاس فش سرور ڊاريڪٽري اندر واقع آهي. جيڪڏهن توهان جاوا EE SDK کي انسٽال ڪرڻ وقت گلاس فش سرور لاءِ ڊفالٽ رستو تبديل نه ڪيو، توهان هن ايپليڪيشن کي فولڊر ۾ ڳولي سگهو ٿا: C:\glassfish4\docs\firstcup\example\dukes-age . شايد هر جاوا ڊولپر، شروعاتي ۽ تجربيڪار، گهٽ ۾ گهٽ هڪ ڀيرو ڏٺو آهي جاوا پروگرامنگ ٻولي جو ماسڪوٽ - ڊيوڪ: ٿورا ماڻهو ڄاڻن ٿا ته ڊيوڪ جي سالگره آهي. هو 23 مئي، 1995 تي ڄائو هو، جڏهن جاوا ٽيڪنالاجي جو پهريون ڊيمو نسخو شايع ڪيو ويو. Dukes-age ائپ، جيئن نالو مشورو ڏئي ٿو، ڊيوڪ جي عمر بابت معلومات مهيا ڪري ٿي. اچو ته هن ايپليڪيشن کي IntelliJ IDEA ۾ کوليون: فائل -> نئون -> موجوده ذريعن کان پروجيڪٽ... پوءِ ڊيوڪس-ايج ايپليڪيشن سان فولڊر ۾ وڃو، جيڪو ڊيفالٽ طور C:\glassfish4\docs\firstcup\example\dukes- تي موجود آهي. عمر ، pom.xml فائل چونڊيو ۽ OK تي ڪلڪ ڪريو: هيٺ ڏنل ڍانچي سان هڪ ايپليڪيشن کلي ويندي: اچو ته ڪلاس ڪوڊ تي هڪ نظر وجهون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;
}
}
هي هڪ JAX-RS RESTful ويب سروس آهي هڪ طريقي سان - getText()
. جيڪڏهن توهان هن طريقي جي ڪوڊ کي جانچيو، اهو واضح ٿئي ٿو ته اهو طريقو ڊيوڪ جي ڄمڻ کان وٺي سالن جو تعداد ڏئي ٿو. اهو آهي، طريقو ڊيوڪ جي عمر کي واپس ڪري ٿو. ھڪڙو ڪلاس ھڪڙو وسيلو آھي ھڪڙي REST حوالي سان.
- ڪلاس جي مٿي ڏنل تشريح
@Path("dukesAge")
URI رستي جي وضاحت ڪري ٿي جنهن تي ڪالون هن ڪلاس پاران پروسيس ڪيون وينديون. - مٿي ڏنل تشريح
@GET
اسان کي ٻڌائي ٿي ته هي طريقو GET درخواستن تي عمل ڪري ٿو. - تشريح
@Produces("text/plain")
درخواست جي جواب جي ميڊيا جو قسم بيان ڪري ٿي. اهو اندازو لڳائڻ ڏکيو ناهي ته طريقوgetText()
ميڊيا جي قسم سان جواب پيدا ڪندو: متن/سادو.
<?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>
هن فائل ۾، ٽيگ جي اندر ، قدر سان servlet-mapping
هڪ ٽيگ بيان ڪيو ويو آهي . هتي هڪ خاص روٽ پوائنٽ بيان ڪيو ويو آهي، ڪالون جن تي عمل ڪيو ويندو خدمت طرفان وڌيڪ. جيڪڏهن تشريح سان گڏ ڪيو وڃي ، اهو ظاهر ٿئي ٿو ته ڊيوڪ جي عمر بابت معلومات حاصل ڪرڻ لاء، توهان کي پتو سان رابطو ڪرڻو پوندو /webapi/dukesAge. url-pattern
/webapi/*
@Path("dukesAge")
GlassFish سرور تي جاوا EE ايپليڪيشن هلائڻ لاءِ IntelliJ IDEA سيٽ اپ ڪرڻ
هاڻي ته اسان وٽ ڊيوڪ-ايج ايپليڪيشن جو تمام گهڻو عام خيال آهي (ان بابت وڌيڪ پڙهو Oracle سائيٽ تي )، اچو ته انٽيليجي آئي ڊي اي کي ترتيب ڏيو ته جيئن اسان هن ايپليڪيشن کي پنهنجي IDE مان هلائي سگهون. IntelliJ IDEA ترتيب ڏيڻ- ائين ڪرڻ لاءِ مينيو ڏانھن وڃو Run -> Edit Configurations.
- رن/ڊيبگ ڪنفيگريشن پينل کلي ويندو:
- اسان کي نئين ترتيب شامل ڪرڻ جي ضرورت آهي. ائين ڪرڻ لاءِ، پلس جي نشاني تي ڪلڪ ڪريو، يا Alt+Insert hotkey استعمال ڪريو. لسٽ ۾ جيڪو کلي ٿو، چونڊيو GlassFish Server -> Local:
- ونڊو ۾ جيڪو کلي ٿو، اچو ته ترتيب ڏيڻ شروع ڪريون:
- ايندڙ قدم اهو آهي ته انهن نموني کي ظاهر ڪرڻ لاء جيڪو سرور تي ترتيب ڏيڻ جي ضرورت پوندي. اهو ڪري سگهجي ٿو ڊيپلائيمينٽ ٽيب ذريعي پلس تي ڪلڪ ڪندي -> آرٽيڪل ...
- منتخب ڪريو dukes-age:war ۽ ڪلڪ ڪريو ٺيڪ:
- اڳيون، اسان جي ترتيب کي محفوظ ڪريو تي ڪلڪ ڪندي لاڳو ڪريو ۽ پوء ٺيڪ.
ايپليڪيشن کي لانچ ڪندي
هاڻي اچو ته ايپليڪيشن کي هلائڻ جي ڪوشش ڪريو.-
ائين ڪرڻ لاءِ، توھان استعمال ڪري سگھوٿا hotkey Alt+Shift+F10، يا مينيو ذريعي Run -> Run...
۽ ڊيوڪس-عمر جي ترتيب کي چونڊيو جيڪو اسان ٺاهيو آهي:
-
ان کان پوءِ اسان ڏسون ٿا شروعاتي لاگز سروس پينل ۾:
-
پوء، جيڪڏهن سڀ ڪجهه هدايتن جي مطابق ڪيو وڃي، برائوزر کلي ويندو ۽ اهو واضح ٿي ويندو ته ڪجھ به ڪم نه ڪري رهيو آهي:
-
ائين ڪرڻ لاءِ، اچو ته واپس وڃو IntelliJ IDEA ڏانھن، پوءِ مينيو ڏانھن وڃو: Run -> Edit Configurations...
-
اچو ته اڳ ۾ محفوظ ڪيل ترتيب چونڊيو ۽ URL کي هيٺ ڏنل اسڪرين شاٽ جي مطابق اپڊيٽ ڪيو:
-
اچو ته ڪنفيگريشن کي محفوظ ڪريون ۽ Ctrl+Shift+F10 هاٽڪي استعمال ڪندي پنهنجي ايپليڪيشن کي ٻيهر شروع ڪريون، يا سروسز پينل تي خاص بٽڻ استعمال ڪندي:
-
ٻيهر شروع ڪرڻ کان پوء، جيڪڏهن سڀ ڪجهه صحيح طريقي سان ڪيو ويو، اسان ڊيوڪ جي عمر کي ڏسندا:
نتيجو
هن آرٽيڪل ۾، اسان ڏٺو ته توهان پنهنجي مقامي ماحول کي ڪيئن ترتيب ڏئي سگهو ٿا جاوا اي اي ايپليڪيشنن سان ڪم ڪرڻ لاءِ GlassFish 4.0 سرور جو مثال استعمال ڪندي، IntelliJ IDEA 2019.3.1 (الٽيميٽ) ڊولپمينٽ ماحول، انهي سان گڏ جاوا EE SDK ورزن 7. اسان ڏٺو ته توهان ڪيئن ڪري سگهو ٿا:- ڊائون لوڊ ۽ انسٽال ڪريو Java EE SDK، گڏو گڏ GlassFish سرور؛
- پاور شيل ذريعي گلاس فش سرور کي روڪيو ۽ شروع ڪريو؛
- IntelliJ IDEA کي ترتيب ڏيو ته جيئن توهان Java EE ايپليڪيشنن کي IDE کان GlassFish سرور تي ترتيب ڏيو ۽ انهن کي فوري طور تي لانچ ڪري سگھو.
بونس ڪم
- پاڻ کي بيان ڪيل سڀني قدمن کي ورجايو.
- جاوا EE تي هڪ تعارفي ڪورس وٺو شروعاتي جاوا EE ڊولپرز لاءِ Oracle کان .
- ستاري سان گڏ شيءِ. ڪوشش ڪريو سيڪنڊ فرسٽ-ڪپ ڊيمو ايپليڪيشن پاڻ کي ترتيب ڏيو. هي ايپليڪيشن وڌيڪ انٽرايڪٽو آهي ۽ ڊيوڪس-عمر ايپليڪيشن سان پڻ رابطو ڪري ٿي. هن قدم کي مڪمل ڪرڻ لاء، توهان کي آزاديء سان هيٺين سوالن کي سمجهڻ جي ضرورت پوندي.
- گلاس فش سرور جي اندر ڊيٽابيس کي ڪيئن فعال ڪجي؛
- ٻن ايپليڪيشنن کي هڪ ٻئي سان ڪيئن ضم ڪرڻ (پهرين ڪپ جي اندر ڊيوڪس جي عمر جي آخري پوائنٽ ڏانهن رستو ڏيکاري ٿو، جنهن تي اسان هن مضمون ۾ بحث ڪيو آهي)؛
- Intellij IDEA ۾ نئين ٺاھ جوڙ ڪيئن ٺاھيو فرسٽ-ڪپ جي مقرري لاءِ (جيئن ھن مضمون ۾ ڏيکاريو ويو آھي)؛
- شايد ٻيا ڪيترائي سوال)
GO TO FULL VERSION