5. پیوستها
در اینجا نصب و استفاده اولیه از ابزارهای مورد استفاده در سند «پایداری جاوا ۵ در عمل» را شرح میدهیم. اطلاعات ارائه شده در زیر، اطلاعاتی است که در ماه مه ۲۰۰۷ در دسترس بوده است. این اطلاعات به زودی منسوخ خواهد شد. هنگامی که این اتفاق میافتد، به خواننده توصیه میشود رویههای مشابه اما نه یکسان را دنبال کند. نصبها روی یک ماشین ویندوز XP Professional انجام شدهاند.
5.1. Java
ما از آخرین نسخهٔ جاوا که از شرکت Sun [http://www.sun.com] در دسترس است، استفاده خواهیم کرد. دانلودها از طریق آدرس URL [http://java.sun.com/javase/downloads/index.jsp] در دسترس هستند:


نصبکننده JDK را از فایل دانلود شده اجرا کنید. بهطور پیشفرض، جاوا در [C:\Program Files\Java] نصب میشود:

5.2. Eclipse
5.2.1. نصب پایه
Eclipse یک IDE است که در URL [http://www.eclipse.org/] در دسترس است و میتوان آن را از URL [http://www.eclipse.org/downloads/] دانلود کرد. در زیر، ما Eclipse 3.2.2 را دانلود میکنیم:
![]()
پس از دانلود فایل ZIP، آن را در یک پوشه روی هارد دیسک خود استخراج کنید:

از این پس، پوشه نصب Eclipse را که در بالا با نام [C:\devjava\eclipse 3.2.2\eclipse] نشان داده شده است، با نام <eclipse> خطاب خواهیم کرد. [eclipse.exe] فایل اجرایی و [eclipse.ini] فایل پیکربندی آن است. بیایید نگاهی به محتویات مورد دوم بیندازیم:
این آرگومانها هنگام راهاندازی Eclipse به شرح زیر استفاده میشوند:
ما با ایجاد یک میانبر که اکلیپس را با همین آرگومانها اجرا میکند، به همان نتیجهٔ فایل .ini میرسیم. بیایید آنها را توضیح دهیم:
- -vmargs: نشان میدهد که آرگومانهای بعدی برای ماشین مجازی جاوایی هستند که اکلپس را اجرا میکند. اکلپس یک برنامهٔ جاوا است.
- -Xms40m: ؟
- -Xmx256m: اندازه حافظه (به مگابایت) اختصاصیافته به ماشین مجازی جاوا (JVM) که اکلپس را اجرا میکند، تعیین مینماید. بهطور پیشفرض، این مقدار ۲۵۶ مگابایت است، همانطور که در اینجا نشان داده شده است. اگر سیستم اجازه دهد، ۵۱۲ مگابایت ارجح است.
این آرگومانها به JVM که اکلپس را اجرا میکند، ارسال میشوند. JVM توسط فایلی به نام [java.exe] یا [javaw.exe] نمایش داده میشود. این فایل چگونه مکانیابی میشود؟ در واقع، به روشهای مختلفی مکانیابی میشود:
- در فایل PATH درون OS
- در پوشه <JAVA_HOME>/jre/bin، که در آن JAVA_HOME یک متغیر سیستم است که پوشه ریشه یک JDK را تعریف میکند.
- به مسیری که به صورت یک آرگومان به Eclipse در قالب -vm <path>\javaw.exe ارسال میشود
این راهحل آخر ارجح است، زیرا دو راهحل دیگر به دگرگونیهای نصبهای بعدی برنامهها بستگی دارند که ممکن است یا PATH را در OS تغییر دهند یا متغیر JAVA_HOME را تغییر دهند.
بنابراین ما میانبر زیر را ایجاد میکنیم:

<eclipse>\eclipse.exe" -vm "C:\Program Files\Java\jre1.6.0_01\bin\javaw.exe" -vmargs -Xms40m -Xmx512m | |
پوشه نصب اکلیپس <eclipse> |
پس از انجام این کار، اکلیپس را با استفاده از این میانبر اجرا کنید. کادر محاورهای زیر ظاهر میشود:

یک [workspace] یک فضای کاری (workspace) است. بیایید مقادیر پیشفرض ارائهشده را بپذیریم. بهطور پیشفرض، پروژههای Eclipse در پوشه <workspace> مشخصشده در این کادر محاورهای ایجاد خواهند شد. راهی برای تغییر این رفتار وجود دارد. کاری که ما بهطور سیستماتیک انجام خواهیم داد همین است. بنابراین، پاسخ دادهشده در این کادر محاورهای مهم نیست.
پس از تکمیل این مرحله، محیط توسعه اکلیپس نمایش داده میشود:

ما نمای [Welcome] را همانطور که در بالا پیشنهاد شد، میبندیم:

قبل از ایجاد یک پروژه جاوا، اکلپس را پیکربندی میکنیم تا JDK مورد استفاده برای کامپایل پروژههای جاوا را مشخص کند. برای این کار، گزینه [Window / Preferences / Java / Installed JREs ] را انتخاب میکنیم:

به طور معمول، JRE (محیط اجرایی جاوا) که برای راهاندازی خود Eclipse استفاده میشود، باید در لیست JRE ظاهر شود. این معمولاً تنها مورد خواهد بود. با استفاده از دکمه [Add] میتوان موارد JRE را اضافه کرد. سپس باید دایرکتوری ریشه فایل JRE را مشخص کنید. از سوی دیگر، دکمه [Search] جستجویی برای JREs را روی هارد دیسک آغاز میکند. این روش خوبی برای بررسی وضعیت هرگونه فایل JREs است که نصب کردهاید اما هنگام ارتقا به نسخه جدیدتر فراموش کردهاید آن را حذف نصب کنید. در بالا، JRE که تیک خورده است، همان گزینهای است که برای کامپایل و اجرای پروژههای جاوا استفاده میشود. این همان گزینهای است که در بخش 5.1 نصب شد و برای راهاندازی اکلیپس نیز به کار رفت. با دوبار کلیک روی آن، به ویژگیهایش دسترسی پیدا میکنید:

اکنون، بیایید یک پروژه جاوا به نام [File / New / Project] ایجاد کنیم:
![]() | ![]() |
[Java Project] را انتخاب کنید، سپس [Next] ->

در [2]، یک پوشه خالی را مشخص میکنیم که پروژه جاوا در آن نصب خواهد شد. در [1]، به پروژه یک نام میدهیم. لازم نیست که نام آن مطابق با نام پوشهاش باشد، همانطور که مثال بالا ممکن است نشان دهد. پس از انجام این کار، از دکمه [Next] برای رفتن به صفحه بعدی جادوگر ایجاد استفاده میکنیم:

در بالا، ما یک پوشهٔ اختصاصی درون پروژه ایجاد میکنیم تا فایلهای منبع (.java) را در آن ذخیره کنیم:

![]() |
- در [1]، میتوانیم پوشه [src] را ببینیم که فایلهای منبعی با پسوند .java در آن ذخیره خواهند شد
- در [2]، پوشه [bin] را میبینیم که فایلهای کامپایلشده .class در آن ذخیره خواهند شد
ما جادوگر را با [Finish] تکمیل میکنیم. اکنون ما یک اسکلت پروژهٔ جاوا داریم:

روی پروژه [test1] کلیک راست کرده و یک کلاس جاوا ایجاد کنید:

![]() |
- در [1]، پوشهای که کلاس در آن ایجاد خواهد شد. بهطور پیشفرض، اکلیپس پوشه پروژهٔ جاری را پیشنهاد میدهد.
- در [2]، پکیجی که کلاس در آن قرار خواهد گرفت
- در [3]، نام کلاس
- در [4]، مشخص میکنیم که متد استاتیک [main] باید ایجاد شود
ما با [Finish] ویزارد را تأیید میکنیم. سپس پروژه با یک کلاس تقویت میشود:

ایکلپس اسکلت کلاس را تولید کرده است. میتوان با دوبار کلیک روی [Test1.java] در بالا به آن دسترسی پیدا کرد:

ما کد بالا را به شرح زیر اصلاح میکنیم:

ما برنامه [Test1.java] را اجرا میکنیم: [clic droit sur Test1.java -> Run As -> Java Application]

نتیجهٔ اجرای برنامه در پنجرهٔ [Console] نمایش داده میشود:

پنجره [Console] باید بهطور پیشفرض ظاهر شود. اگر این اتفاق نیفتاد، میتوانید با استفاده از [Window/Show View/Console] درخواست نمایش آن را بدهید:

5.2.2. انتخاب کامپایلر
Eclipse به شما امکان میدهد کد سازگار با Java 1.4، Java 1.5 و Java 1.6 تولید کنید. بهطور پیشفرض، برای تولید کد سازگار با Java 1.4 پیکربندی شده است. دستورات API و JPA به کد Java 1.5 نیاز دارند. نوع کد تولید شده توسط [Window / Preferences / Java / Compiler] را تغییر میدهیم:
![]() |
- به [1]: انتخاب گزینه [Java / Compiler]
- به [2]: انتخاب سازگاری جاوا ۵.۰
5.2.3. نصب Callisto s
نسخهٔ پایهای نصبشده در بالا به شما امکان میدهد برنامههای کنسول جاوا را بسازید، اما برنامههای مبتنی بر وب یا Swing جاوا را نه؛ در غیر این صورت، باید همه چیز را خودتان انجام دهید. ما قصد داریم چندین افزونه را نصب کنیم:
بیایید به شرح زیر ادامه دهیم [Help/Software Udates/Find and Install]:
![]() |
- در [2] مشخص میکنیم که میخواهیم پلاگینهای جدید را نصب کنیم
![]() |
- در [3]، سایتهای جستجو برای افزونهها را مشخص کنید
- در [4]، پلاگینهای مورد نظر را تیک بزنید
![]() |
- در [5]، Eclipse نشان میدهد که شما پلاگینی را انتخاب کردهاید که به پلاگینهای دیگری وابسته است که انتخاب نشدهاند
- در [6]، از دکمه [Select Required] برای انتخاب خودکار پلاگینهای از دست رفته استفاده کنید
- در [7]، شما شرایط مجوز این پلاگینهای مختلف را میپذیرید
![]() |
- در [8]، فهرستی از تمام افزونههایی که قرار است نصب شوند به شما نمایش داده میشود
- در [9]، دانلود این پلاگینها را آغاز میکنید
- در [10]، پس از دانلود، همهٔ آنها بدون بررسی امضاهایشان نصب میشوند
![]() |
- در [11]، پس از نصب پلاگینها، اجازه میدهیم اکلپس دوباره راهاندازی شود
- در [12]، اگر [File/New/Project] را اجرا کنید، خواهید دید که اکنون میتوانید برنامههای وب ایجاد کنید، که در ابتدا امکانپذیر نبود.
5.2.4. نصب افزونه [TestNG]
TestNG (آزمون نسل بعدی) یک ابزار تست واحد است که از نظر مفهوم مشابه JUnit است. با این حال، بهبودهایی ارائه میدهد که باعث میشود در اینجا آن را به JUnit ترجیح دهیم. ما طبق روال قبل ادامه میدهیم: [Help/Software Udates/Find and Install]:
![]() |
- در [2]، مشخص میکنیم که میخواهیم افزونههای جدید را نصب کنیم
![]() |
- در [3a]، سایت دانلود برای [TestNG] وجود ندارد. ما آن را با [3b] اضافه میکنیم
- در [4b]: سایت افزونه [http://beust.com/eclipse] است. در [4a]، هر چه دوست دارید وارد کنید.
![]() |
- در [5a]، افزونه [TestNG] برای بهروزرسانی انتخاب شده است. در [5b]، بهروزرسانی آغاز میشود.
- در [6]، ارتباطی با وبسایت افزونه برقرار شده است. تمام افزونههای موجود در سایت به ما نمایش داده میشوند. در اینجا تنها یک افزونه وجود دارد که قبل از رفتن به مرحله بعدی آن را انتخاب میکنیم.
![]() |
- در [7]، شرایط مجوز افزونه را میپذیریم
- در [8]، فهرستی از تمام افزونههایی که باید نصب شوند به ما نشان داده میشود؛ در اینجا تنها یک مورد وجود دارد. دانلود را آغاز میکنیم. پس از آن، همه چیز همانطور که برای افزونههای Callisto در بالا توضیح داده شد، پیش میرود.
پس از راهاندازی مجدد Eclipse، میتوانید با مشاهدهٔ ویوهای موجود [Window / show View / Other]، برای مثال، وجود پلاگین جدید را تأیید کنید:
![]() |
همانطور که در بالا نشان داده شده است، اکنون یک نما به نام [TestNG] وجود دارد که قبلاً وجود نداشت.
5.2.5. نصب افزونه [Hibernate Tools]
Hibernate یک ارائهدهنده JPA است و افزونه [Hibernate Tools] برای Eclipse برای ساخت برنامههای JPA مفید است. از مهٔ ۲۰۰۷، تنها نسخهٔ جدید آن (3.2.0beta9) به شما امکان کار با Hibernate/JPA را میدهد و این نسخه از طریق روش فوق در دسترس نیست. تنها نسخههای قدیمیتر در دسترس هستند. بنابراین، ما به روش دیگری ادامه خواهیم داد.
این افزونه در وبسایت Hibernate Tools در دسترس است: http://tools.hibernate.org/.
![]() |
- برای [1]، جدیدترین نسخه از Hibernate Tools را انتخاب کنید
- در [2]، آن را دانلود کنید
![]() |
- در [3]، از یک ابزار اکستراکت (unzip) برای استخراج فایل زیپ دانلود شده به داخل پوشه <eclipse> استفاده کنید (بهتر است اطمینان حاصل کنید که اکلیپس در حال اجرا نیست)
- در [4]، تأیید کنید که برخی فایلها در طول عملیات بازنویسی خواهند شد
ایکلپس را مجدداً راهاندازی کنید:
![]() |
- در [1]: یک چشمانداز را باز کنید
- در [2]: اکنون یک دیدگاه [Hibernate Console] وجود دارد
ما دیگر با افزونه [Hibernate Tools] (لغو در [2]) ادامه نخواهیم داد. نحوه استفاده از آن در مثالهای آموزش توضیح داده شده است.
گاهی اوقات اکلیپس قادر به شناسایی پلاگینهای جدید نیست. میتوانید با استفاده از گزینه -clean آن را مجبور به بازخوانی مجدد تمام پلاگینهایش کنید. فایل اجرایی میانبر اکلیپس سپس به شکل زیر تغییر خواهد کرد:
"<eclipse>\eclipse.exe" -clean -vm "C:\Program Files\Java\jre1.6.0_01\bin\javaw.exe" -vmargs -Xms40m -Xmx512m
پس از شناسایی پلاگینهای جدید توسط اکلیپس، گزینه -clean را که در بالا نشان داده شده است، حذف کنید.
5.2.6. نصب پلاگین [SQL Explorer]
اکنون یک افزونه را نصب خواهیم کرد که به ما امکان میدهد محتویات یک پایگاه داده را مستقیماً از طریق اکلیپس بررسی کنیم. افزونههای موجود برای اکلیپس را میتوان در وبسایت [http://eclipse-plugins.2y.net/eclipse/plugins.jsp] یافت:
![]() |
- در [1]: وبسایت پلاگینهای Eclipse
- در [2]: دسته [Database] را انتخاب کنید
- در [3]: در دستهبندی [Database]، « مرتبسازی بر اساس امتیاز » را انتخاب کنید (با توجه به تعداد کم رأیدهندگان چندان قابل اعتماد نیست)
- در [4]: QuantumDB در جایگاه اول قرار دارد
- در [5]: ما SQLExplorer را انتخاب میکنیم که قدیمیتر و در رتبهبندی پایینتر (رتبهٔ ۳) است اما همچنان بسیار خوب است. ما به وبسایت افزونهٔ [plugin-homepage] میرویم
![]() |
- برای [6] و [7]: به دانلود افزونه میپردازیم.
![]() |
- و [8]: فایل ZIP افزونه را در پوشه Eclipse از حالت فشرده خارج کنید.
برای بررسی، اکلیپس را مجدداً راهاندازی کنید و در صورت لزوم از گزینه -clean استفاده کنید:
![]() |
- در [1]: یک چشمانداز جدید باز کنید
- در [2]: میتوانید ببینید که یک چشمانداز [SQL Explorer] در دسترس است. بعداً به این موضوع باز خواهیم گشت.
5.3. سرورlet کانtejner Tomcat ۵.۵
5.3.1. نصب
برای اجرای سرولتها، به یک کانتینر سرولت نیاز داریم. در اینجا یکی از این کنتینرها، Tomcat 5.5، را که در http://tomcat.apache.org/ در دسترس است، معرفی میکنیم. ما مراحل نصب آن (مه ۲۰۰۷) را تشریح میکنیم. اگر نسخه قبلی Tomcat قبلاً نصب شده باشد، بهتر است ابتدا آن را حذف کنید.

برای دانلود محصول، لینک [Tomcat 5.x] بالا را دنبال کنید:

میتوانید فایل .exe را برای پلتفرم ویندوز دانلود کنید. پس از دانلود، با دوبار کلیک روی آن، نصب Tomcat را آغاز کنید:

شرایط مجوز را بپذیرید ->

[next] را انتخاب کنید ->

پوشه نصب پیشنهادی را بپذیرید یا آن را با استفاده از [Browse] -> تغییر دهید

نام کاربری و رمز عبور مدیر سرور Tomcat را تنظیم کنید. در اینجا، ما [admin / admin] -> را تنظیم کردهایم.
![]() |
Tomcat 5.x به JRE نسخه ۱.۵ نیاز دارد. این نسخه معمولاً باید نسخه نصبشده روی سیستم شما را پیدا کند. در بالا، مسیر مشخصشده مربوط به JRE نسخه ۱.۶ است که در بخش ۵.۱ دانلود شده است. اگر هیچ JRE یافت نشد، با استفاده از دکمه [1] مسیر ریشه آن را مشخص کنید. پس از انجام این کار، از دکمه [Install] برای نصب Tomcat 5.x استفاده کنید ->

دکمه [Finish] نصب را تکمیل میکند. وجود Tomcat با آیکونی در سمت راست نوار وظایف ویندوز نشان داده میشود:

کلیک راست روی این آیکون دسترسی به دستورات شروع و توقف سرور را فراهم میکند:

ما اکنون از گزینه [Stop service] برای متوقف کردن وبسرور استفاده میکنیم:

تغییر وضعیت آیکون را توجه کنید. این آیکون را میتوان از نوار وظیفه حذف کرد:

Tomcat در پوشهای که توسط کاربر انتخاب شده است نصب شده است، که از این پس آن را <tomcat> مینامیم. ساختار دایرکتوری نسخه دانلود شده Tomcat 5.5.23 به شرح زیر است:

نصب Tomcat تعدادی میانبر به منوی [Démarrer] اضافه کرده است. ما از لینک [Monitor] زیر برای راهاندازی ابزار شروع/توقف Tomcat استفاده میکنیم:

سپس آیکون نمایشدادهشده در بالا را مشاهده میکنیم:

مانیتور Tomcat را میتوان با دوبار کلیک روی این آیکون راهاندازی کرد:

دکمههای [Start - Stop - Pause] - Restart به ما امکان راهاندازی، توقف و راهاندازی مجدد سرور را میدهند. ما سرور را با استفاده از [Start] راهاندازی میکنیم، سپس با استفاده از یک مرورگر وب به آدرس http://localhost:8080 میرویم. باید صفحهای مشابه شکل زیر ببینیم:

میتوانید برای اطمینان از نصب صحیح Tomcat، پیوندهای زیر را دنبال کنید:

تمام لینکهای صفحه [http://localhost:8080] حائز اهمیت هستند و خواننده تشویق میشود آنها را بررسی کند. ما فرصت خواهیم داشت تا دوباره به لینکهای مورد استفاده برای مدیریت برنامههای وب مستقرشده روی سرور مراجعه کنیم:

5.3.2. راهاندازی یک برنامه وب روی سرور Tomcat
5.3.3. استقرار
یک برنامه وب برای استقرار در داخل یک کانtejner servlet باید از قوانین خاصی پیروی کند. فرض کنید <webapp> دایرکتوری یک برنامه وب باشد. یک برنامه وب شامل موارد زیر است:
در پوشه <webapp>\WEB-INF\classes | |
در پوشه <webapp>\WEB-INF\lib | |
در پوشه <webapp> یا زیرپوشههای آن |
برنامهٔ وب توسط فایلی به نام XML پیکربندی میشود: <webapp>\WEB-INF\web.xml. این فایل در موارد ساده، بهویژه زمانی که برنامه وب تنها شامل فایلهای ایستا باشد، ضروری نیست. بیایید فایل زیر HTML را ایجاد کنیم:
<html>
<head>
<title>Application exemple</title>
</head>
<body>
Application exemple active ....
</body>
</html>
و بیایید آن را در یک پوشه ذخیره کنیم:

اگر این فایل را در یک مرورگر بارگذاری کنیم، صفحه زیر را مشاهده میکنیم:

فایل URL که توسط مرورگر نمایش داده میشود، نشان میدهد که صفحه توسط وبسرور ارائه نشده، بلکه مستقیماً توسط مرورگر بارگذاری شده است. اکنون میخواهیم آن از طریق وبسرور Tomcat در دسترس باشد.
بیایید به ساختار دایرکتوری <tomcat> بازگردیم:

برنامههای وب مستقر شده روی سرور Tomcat با استفاده از فایلهای XML که در پوشه [<tomcat>\conf\Catalina\localhost] قرار دارند، پیکربندی میشوند:
![]() | ![]() |
این فایلهای XML را میتوان بهصورت دستی ایجاد کرد، زیرا ساختار آنها ساده است. بهجای استفاده از این روش، از ابزارهای وب ارائهشده توسط Tomcat استفاده خواهیم کرد.
5.3.4. مدیریت تامکت
در صفحهٔ اصلی آن http://localhost:8080، سرور پیوندهایی برای مدیریت آن ارائه میدهد:

لینک [Tomcat Administration] به ما امکان میدهد منابع در دسترس Tomcat برای برنامههای وب مستقرشده روی آن، مانند استخر اتصال پایگاه داده، را پیکربندی کنیم. بیایید این لینک را دنبال کنیم:

صفحهای که ظاهر میشود به ما میگوید که مدیریت Tomcat 5.x نیازمند یک بستهٔ خاص به نام 'admin' است. بیایید به وبسایت Tomcat [http://tomcat.apache.org/download-55.cgi] بازگردیم:

بیایید فایل زیپی با نام [Administration Web Application] را دانلود کرده و سپس آن را از حالت فشرده خارج کنیم. محتویات آن به شرح زیر است:

پوشه [admin] باید در [<tomcat>\server\webapps] کپی شود، جایی که <tomcat> پوشهای است که Tomcat 5.x در آن نصب شده است:

پوشه [localhost] حاوی فایلی به نام [admin.xml] است که باید به [<tomcat>\conf\Catalina\localhost] کپی شود:

تامکت را متوقف کرده و در صورت اجرا بودن، مجدداً راهاندازی کنید. سپس با استفاده از یک مرورگر وب، صفحهٔ اصلی وبسرور را دوباره بارگذاری کنید:

روی لینک [Tomcat Administration] کلیک کنید. به صفحهٔ ورود هدایت خواهید شد (ممکن است لازم باشد صفحه را «بارگذاری مجدد» یا «تازه کردن» کنید تا آن را ببینید):
![]() | ![]() |
در اینجا، باید مشخصات وارد شده در هنگام نصب Tomcat را مجدداً وارد کنید. در مورد ما، برای هر دو نام کاربری و رمز عبور، 'admin' را وارد میکنیم. دکمه [Login] ما را به صفحه زیر میبرد:

این صفحه به مدیر Tomcat اجازه میدهد تا تعریف کند
- منابع داده،
- اطلاعات مورد نیاز برای ارسال ایمیل (Mail Sessions)،
- دادههای محیطی قابل دسترسی برای همه برنامهها (ورودیهای محیطی)،
- مدیریت کاربران و مدیران Tomcat (کاربران)،
- مدیریت گروههای کاربری (گروهها)،
- برای تعریف نقشها (= آنچه یک کاربر میتواند و نمیتواند انجام دهد)،
- برای تعریف ویژگیهای برنامههای وب مستقرشده توسط سرور (سرویس Catalina)
بیایید لینک [Roles] بالا را دنبال کنیم:

یک نقش به شما امکان میدهد تعریف کنید که یک کاربر یا گروهی از کاربران چه کارهایی را میتوانند و چه کارهایی را نمیتوانند انجام دهند. مجوزهای خاصی با یک نقش مرتبط هستند. به هر کاربر یک یا چند نقش اختصاص داده میشود و مجوزهای مربوط به آن نقشها را دارا خواهد بود. نقش [manager] زیر حق مدیریت برنامههای وب مستقر در Tomcat (استقرار، راهاندازی، خاموشسازی، بارگذاری مجدد) را اعطا میکند. ما یک کاربر به نام [manager] ایجاد میکنیم و نقش [manager] را به او اختصاص میدهیم تا بتواند برنامههای Tomcat را مدیریت کند. برای این کار، در صفحهٔ مدیریت، پیوند [Users] را دنبال میکنیم:

میتوانیم ببینیم که تعدادی کاربر از قبل وجود دارند. ما از گزینه [Create New User] برای ایجاد یک کاربر جدید استفاده میکنیم:

ما به کاربر «manager» رمز عبور «manager» را میدهیم و نقش «manager» را به او اختصاص میدهیم. از دکمه [Save] برای تأیید این افزودن استفاده میکنیم. کاربر جدید در فهرست کاربران ظاهر میشود:

این کاربر جدید به فایل [<tomcat>\conf\tomcat-users.xml] اضافه خواهد شد:

که محتویات آن به شرح زیر است:
<?xml version='1.0' encoding='utf-8'?>
<tomcat-users>
<role rolename="tomcat"/>
<role rolename="role1"/>
<role rolename="manager"/>
<role rolename="admin"/>
<user username="tomcat" password="tomcat" roles="tomcat"/>
<user username="role1" password="tomcat" roles="role1"/>
<user username="both" password="tomcat" roles="tomcat,role1"/>
<user username="manager" password="manager" fullName="" roles="manager"/>
<user username="admin" password="admin" roles="admin,manager"/>
</tomcat-users>
- خط ۱۰: کاربر [manager] که ایجاد شده است
راه دیگر برای افزودن کاربران، ویرایش مستقیم این فایل است. این روندی است که در صورت فراموشی رمز عبور حسابهای کاربری مدیر ('admin' یا 'manager') باید دنبال کنید.
5.3.5. مدیریت برنامههای وب مستقر شده
اکنون به صفحه ورود [http://localhost:8080] بازگردیم و پیوند [Tomcat Manager] را دنبال کنیم:

این ما را به یک صفحه احراز هویت میبرد. ما با نام کاربری manager / manager و رمز عبور c.a.d وارد میشویم – کاربری با نقش [manager] که همین الان ایجاد کردهایم. در واقع، تنها کاربری با این نقش میتواند از این لینک استفاده کند. در خط ۱۱ از [tomcat-users.xml]، میتوانیم ببینیم که کاربر [admin] نیز نقش [manager] را دارد. بنابراین میتوانیم از احراز هویت [admin / admin] نیز استفاده کنیم.

صفحهای به ما نمایش داده میشود که فهرست برنامههای کاربردی مستقر شده در تامکت را لیست میکند:

میتوانیم با استفاده از فرمهای پایین صفحه یک برنامه جدید اضافه کنیم:

در اینجا، میخواهیم اپلیکیشن مثالی را که قبلاً ساختهایم، در تامکت مستقر کنیم. این کار را به شرح زیر انجام میدهیم:

/example | نامی که برای اشاره به برنامه وب استفاده میشود برای استقرار | |
C:\data\work\2006-2007\eclipse\dvp-jpa\annexes\tomcat\example | پوشهٔ برنامهٔ وب |
برای بهدستآوردن فایل [C:\data\travail\2006-2007\eclipse\dvp-jpa\annexes\tomcat\exemple\exemple.html]، از Tomcat فایلهای URL و [http://localhost:8080/exemple/exemple.html] را درخواست خواهیم کرد. از این زمینه برای نامگذاری ریشهٔ درخت دایرکتوری وباپلیکیشن استقرار یافته استفاده میشود. ما از دکمهٔ [Deploy] برای استقرار برنامه استفاده میکنیم. اگر همه چیز بهخوبی پیش برود، صفحهٔ پاسخ زیر را مشاهده خواهیم کرد:

و برنامه جدید در لیست برنامههای استقرار یافته ظاهر میشود:
![]() |
بیایید در مورد خط موجود در زمینه /example بالا توضیح دهیم:
لینک به http://localhost:8080/exemple | |
راهاندازی برنامه | |
برنامه را متوقف میکند | |
به شما امکان میدهد برنامه را دوباره بارگذاری کنید. این کار برای مثال زمانی ضروری است که شما اضافه کردهاید، کلاسهای خاصی را به برنامه اضافه، تغییر یا حذف کردهاید. | |
زمینه [/exemple] را حذف میکند. برنامه از لیست ناپدید میشود از برنامههای موجود. |
اکنون که برنامهٔ مثال ما مستقر شده است، میتوانیم چند تست انجام دهیم. ما صفحهٔ [exemple.html] را از طریق URL [http://localhost:8080/exemple/vues/exemple.html] درخواست میکنیم:

راه دیگری برای استقرار یک برنامه وب روی سرور Tomcat این است که جزئیات وارد شده از طریق رابط وب را در فایلی به نام [contexte].xml، که در پوشه [<tomcat>\conf\Catalina\localhost] قرار دارد، فراهم کنیم، که در آن [contexte] نام برنامه وب است.
بیایید به رابط مدیریت Tomcat بازگردیم:

بیایید اپلیکیشن [/exemple] را به همراه لینک آن [Undeploy] حذف کنیم:

برنامه [/exemple] دیگر در فهرست برنامههای فعال نیست. اکنون بیایید فایل زیر را تعریف کنیم: [exemple.xml]:
فایل XML شامل یک تگ واحد <Context> است که ویژگی docBase آن پوشهای را که حاوی برنامه وب برای استقرار است، تعریف میکند. بیایید این فایل را در <tomcat>\conf\Catalina\localhost قرار دهیم:

در صورت لزوم، تامکت را متوقف کرده و مجدداً راهاندازی کنید، سپس با استفاده از مدیر تامکت، فهرست برنامههای فعال را مشاهده کنید:

اپلیکیشن [/exemple] واقعاً موجود است. بیایید از طریق یک مرورگر به URL دسترسی پیدا کنیم:
[http://localhost:8080/exemple/exemple.html]:

یک برنامه وب که به این روش مستقر شده است را میتوان به همان روشی که قبلاً بود، با استفاده از لینک [Undeploy] از فهرست برنامههای مستقر شده حذف کرد:

در این حالت، فایل [exemple.xml] به طور خودکار از پوشه [<tomcat>\conf\Catalina\localhost] حذف میشود.
در نهایت، برای استقرار یک برنامه وب در تامکت، میتوانید زمینه (context) آن را در فایل [<tomcat>\conf\server.xml] نیز تعریف کنید. در اینجا به جزئیات بیشتر این موضوع نمیپردازیم.
5.3.6. برنامه وب با یک صفحه اصلی
وقتی URL [http://localhost:8080/exemple/] را درخواست میکنیم، پاسخ زیر را دریافت میکنیم:

در برخی نسخههای قدیمیتر تامکت، ما محتوای دایرکتوری فیزیکی برای برنامه [/exemple] را دریافت میکردیم.
میتوانیم اطمینان حاصل کنیم که هنگام درخواست زمینه، یک صفحهٔ اصلی به اصطلاح نمایش داده میشود. برای این کار، یک فایل با نام [web.xml] ایجاد کرده و آن را در پوشه <example>\WEB-INF قرار میدهیم، که در آن <example> پوشه فیزیکی برنامه وب [/exemple] است. این فایل به شرح زیر است:
- خطوط ۲–۵: تگ ریشه <web-app> با ویژگیهای کپی و پیستشده از فایل [web.xml] از برنامه [/admin] در Tomcat (<tomcat>/server/webapps/admin/QZXW2HTMLP0038ZQX/web.xml).
- خط ۷: نام نمایشی برنامه وب. این نامی است که آزادانه انتخاب میشود و محدودیتهای کمتری نسبت به نام زمینه برنامه دارد. برای مثال، میتواند شامل فاصلهها باشد، که در نام زمینه امکانپذیر نیست. این نام، برای مثال، توسط مدیر Tomcat نمایش داده میشود:

- خط ۸: توضیحات برنامه وب. این متن سپس میتواند بهصورت برنامهای بازیابی شود.
- خطوط ۹–۱۱: لیست فایلهای خوشآمدگویی. تگ <welcome-file-list> برای تعریف لیست نماهایی که هنگام درخواست زمینهٔ برنامه توسط یک کلاینت ارائه میشوند، استفاده میشود. ممکن است چندین نما وجود داشته باشد. اولین مورد یافتشده به کلاینت ارائه میشود. در اینجا ما فقط یک مورد داریم: [/exemple.html]. بنابراین، هنگامی که کلاینتی URL [/exemple] را درخواست میکند، در واقع URL [/exemple/exemple.html] به او ارائه میشود.
بیایید این فایل، [web.xml]، را در <example>\WEB-INF ذخیره کنیم:

اگر Tomcat هنوز در حال اجرا باشد، میتوان با استفاده از لینک [Recharger] آن را مجبور به بارگذاری مجدد برنامه وب [/exemple] کرد:

در طول این عملیات «بارگذاری مجدد»، تامکت فایل [web.xml] را که در داخل [<exemple>\WEB-INF] قرار دارد، مجدداً میخواند، در صورتی که وجود داشته باشد. در اینجا این مورد صدق میکند. اگر تامکت متوقف شده است، آن را مجدداً راهاندازی کنید.
با استفاده از یک مرورگر وب، بیایید فایلهای URL و [http://localhost:8080/exemple/] را درخواست کنیم:

مکانیزم فایل میزبان کار کرده است.
5.3.7. ادغام Tomcat در Eclipse
اکنون Tomcat را در Eclipse یکپارچه میکنیم. این یکپارچهسازی به شما امکان میدهد:
- راهاندازی و متوقفسازی Tomcat از داخل Eclipse
- برنامههای وب جاوا را توسعه دهید و آنها را روی Tomcat اجرا کنید. یکپارچهسازی Eclipse/Tomcat به شما امکان میدهد اجرای برنامه را ردیابی (عیبیابی) کنید، از جمله اجرای کلاسهای جاوا (سرولتها) که توسط Tomcat اجرا میشوند.
بیایید اکلیپس را راهاندازی کنیم، سپس نمای [Servers] را باز کنیم:
![]() |
- در [1]: Window/Show View/Other
- در [2]: نمای [Servers] را انتخاب کرده و به [OK] بروید
![]() |
- در [1]، یک نمای جدید [Servers] وجود دارد
- به [2] بروید، روی نما کلیک راست کرده و «ایجاد سرور جدید» را برای ایجاد [New/Server] انتخاب کنید
- در [3]، سرور [Tomcat 5.5] را انتخاب کنید، سپس به [Next] بروید
![]() |
- به [4] بروید و مسیر نصب Tomcat 5.5 را مشخص کنید
- در [5]، مشخص کنید که در حال حاضر هیچ پروژه Eclipse/Tomcat وجود ندارد. سپس [Finish] را اجرا کنید
افزودن سرور شامل افزودن یک پوشه در کاوشگر پروژه اکلیپس [6] و ظاهر شدن یک سرور در نما [servers] [7] است:
![]() |
نما [Servers] تمام سرورهای ثبتشده را نمایش میدهد؛ در این مورد، فقط سرور Tomcat 5.5 که ما همین حالا ثبت کردهایم. کلیک راست روی آن دسترسی به دستورات راهاندازی، توقف و راهاندازی مجدد سرور را فراهم میکند:

در بالا، ما سرور را راهاندازی میکنیم. با راهاندازی آن، تعدادی لاگ به نمای [Console] نوشته میشود:
درک این لاگها کمی به عادت نیاز دارد. در حال حاضر به جزئیات آنها نمیپردازیم. با این حال، مهم است که بررسی کنید که آنها هیچ خطای بارگذاری زمینه را نشان نمیدهند. هنگام راهاندازی، سرور Tomcat/Eclipse تلاش میکند تا زمینههای (contexts) برنامههای تحت مدیریت خود را بارگذاری کند. بارگذاری زمینه یک برنامه شامل پردازش فایل [web.xml] آن و بارگذاری یک یا چند کلاس که آن را اولیه میکنند، میباشد. سپس چندین نوع خطا ممکن است رخ دهد:
- فایل [web.xml] حاوی یک خطای نحوی است. این رایجترین خطا است. توصیه میشود از ابزاری استفاده کنید که قادر به اعتبارسنجی یک سند XML در حین ساخت آن باشد.
- کلاسهای خاصی که باید بارگذاری شوند، پیدا نشدند. این کلاسها در [WEB-INF/classes] و [WEB-INF/lib] جستجو میشوند. به طور کلی باید بررسی کنید که کلاسهای لازم موجود هستند و املای کلاسهایی را که در فایل [web.xml] اعلام شدهاند، تأیید کنید.
سروری که از Eclipse راهاندازی شده است، پیکربندی یکسانی با سرور نصبشده در بخش 5.3 ندارد. برای بررسی این موضوع، بیایید با استفاده از یک مرورگر وب، URL [http://localhost:8080] را درخواست کنیم:

این پاسخ نشاندهنده عدم کارکرد سرور نیست، بلکه بیانگر این است که منبعی که از آن درخواست شده در دسترس نیست. با ادغام سرور Tomcat در Eclipse، این منابع، پروژههای وب خواهند بود. به این موضوع بعداً خواهیم پرداخت. فعلاً، بیایید Tomcat را متوقف کنیم:

حالت عملیاتی قبلی را میتوان تغییر داد. بیایید به نمای [Servers] بازگردیم و برای دسترسی به ویژگیهای آن، روی سرور Tomcat دوبار کلیک کنیم:
![]() | 1 ![]() |
کادر تیک [1] مسئول رفتار قبلی است. وقتی این تیک فعال باشد، برنامههای وب توسعه یافته در اکلیپس در فایلهای پیکربندی سرور تامکت مربوطه تعریف نمیشوند، بلکه در فایلهای پیکربندی جداگانه تعریف میشوند. در نتیجه، برنامههای تعریفشده بهصورت پیشفرض در سرور Tomcat – [admin] و [manager]، که دو برنامهٔ مفید هستند – در دسترس نیستند. بنابراین، تیک [1] را برداشته و Tomcat را مجدداً راهاندازی میکنیم:
![]() | ![]() |
پس از انجام این کار، بیایید در یک مرورگر به URL [http://localhost:8080] دسترسی پیدا کنیم:

این همان رویهای است که در بخش 5.3.4 توضیح داده شده است.
در مثالهای قبلیمان، از یک مرورگر خارج از اکلیپس استفاده کردیم. همچنین میتوان از یک مرورگر درون اکلیپس استفاده کرد:

در بالا، مرورگر داخلی را انتخاب کردهایم. برای راهاندازی آن از داخل اکلیپس، میتوانید از آیکون زیر استفاده کنید:

مرزنی که در واقع اجرا میشود، همان مرزی است که توسط گزینه [Window -> Web Browser] انتخاب شده است. در اینجا، ما از مرورگر داخلی استفاده میکنیم:
1

در صورت لزوم، بیایید Tomcat را از Eclipse راهاندازی کنیم و URL را در [http://localhost:8080] مشخص کنیم:

بیایید لینک [Tomcat Manager] را دنبال کنیم:

از ما جفت [login / mot de passe] مورد نیاز برای دسترسی به برنامه [manager] درخواست میشود. بر اساس پیکربندی Tomcat که قبلاً تنظیم کردهایم، میتوانیم [admin / admin] یا [manager / manager] را وارد کنیم. سپس فهرست برنامههای استقراریافته نمایش داده میشود:

5.4. SGBD s Firebird
5.4.1. SGBD Firebird
SGBD Firebird در آدرس URL [http://www.firebirdsql.org/] در دسترس است:
![]() |
- در [1]: گزینه [Download.Firebird Relational Database] استفاده میشود
- در [2]: نسخهٔ مورد نظر Firebird را مشخص کنید
- در [3]: فایل باینری نصب را دانلود کنید
پس از دانلود فایل [3]، روی آن دوبار کلیک کنید تا SGBD Firebird را نصب کنید. SGBD در پوشهای با محتویات مشابه موارد زیر نصب میشود:

فایلهای باینری در پوشه [bin] قرار دارند:

امکان راهاندازی/متوقفسازی SGBD را برای شما فراهم میکند | |
یک کلاینت خط فرمان برای مدیریت پایگاههای داده |
توجه داشته باشید که بهطور پیشفرض، مدیر برای SGBD با نام [SYSDBA] و رمز عبور او [masterkey] است. منوها در [Démarrer] نصب شدهاند:

گزینه [Firebird Guardian] به شما امکان میدهد SGBD را راهاندازی/متوقف کنید. پس از راهاندازی، آیکون SGBD در نوار وظیفه ویندوز باقی میماند:
![]() |
برای ایجاد و مدیریت پایگاههای داده Firebird با استفاده از کلاینت خط فرمان [isql.exe]، باید مستندات ارائهشده همراه محصول را مطالعه کنید که از طریق میانبرهای Firebird در [Démarrer/Programmes/Firebird 2.0] قابل دسترسی است.
یک روش سریع برای کار با Firebird و یادگیری زبان SQL استفاده از یک کلاینت گرافیکی است. یکی از این کلاینتها IB-Expert است که در پاراگراف بعدی توضیح داده شده است.
5.4.2. کار با Firebird SGBD با استفاده از IB- Expert
وبسایت اصلی IB-Expert به آدرس [http://www.ibexpert.com/] است.
![]() |
![]() |
- در [1]، IBExpert را انتخاب کنید
- در [2]، پس از انتخاب زبان دلخواه، در صورت لزوم گزینه دانلود را انتخاب کنید
- در [3]، نسخه «شخصی» را انتخاب کنید زیرا رایگان است. با این حال، باید در وبسایت ثبتنام کنید.
- برای [4]، IBExpert را دانلود کنید
IBExpert در پوشهای مشابه موارد زیر نصب میشود:

فایل اجرایی [ibexpert.exe] است. یک میانبر معمولاً در منوی [Démarrer] موجود است:

پس از راهاندازی، IBExpert پنجره زیر را نمایش میدهد:

بیایید از گزینه [Database/Create Database] to برای ایجاد یک پایگاه داده استفاده کنیم:

میتواند [local] یا [remote] باشد. در اینجا، سرور ما روی همان دستگاهی است که [IBExpert] روی آن قرار دارد. ما انتخاب میکنیم بنابراین [local] را انتخاب میکنیم | |
از دکمهٔ دارای برچسب [dossier] در منوی کشویی برای انتخاب فایل پایگاه داده استفاده کنید. فایربرد کل پایگاه داده را در یک فایل واحد بارگذاری میکند. این یکی از نقاط قوت آن است. شما میتوانید پایگاه داده را به سادگی با کپی کردن فایل از یک کامپیوتر به کامپیوتر دیگر منتقل کنید. پسوند [.fdb] بهطور خودکار اضافه میشود. | |
SYSDBA مدیر پیشفرض توزیعهای فعلی Firebird است | |
masterkey رمز عبور مدیر SYSDBA از توزیعهای فعلی Firebird | |
گویش SQL برای استفاده | |
اگر تیک خورده باشد، IBExpert لینکی به پایگاه داده ایجادشده پس از ایجاد آن نمایش خواهد داد |
اگر هنگام کلیک روی دکمهٔ ایجاد [OK]، هشدار زیر را مشاهده کردید:

این بدان معناست که شما Firebird را راهاندازی نکردهاید. آن را راهاندازی کنید. یک پنجره جدید ظاهر خواهد شد:

مجموعه کاراکتری برای استفاده. ما توصیه میکنیم انتخاب کنید [ISO-8859-1] را از لیست کشویی انتخاب کنید، زیرا این به شما امکان میدهد از حروف لاتین دارای علامت diakritik استفاده کنید. |
[IBExpert] قادر به مدیریت انواع مختلف SGBD مشتقشده از Interbase است. نسخهٔ Firebird را که نصب کردهاید، انتخاب کنید. |
پس از تأیید این پنجرهٔ جدید توسط [Register]، نتیجهٔ [1] در پنجرهٔ [Database Explorer] ظاهر میشود. این پنجره ممکن است بهطور تصادفی بسته شود. برای نمایش مجدد آن، [2] را اجرا کنید:
![]() |
برای دسترسی به پایگاه دادهای که ایجاد کردهاید، کافی است روی پیوند آن دوبار کلیک کنید. سپس IBExpert یک ساختار درختی نمایش میدهد که دسترسی به ویژگیهای پایگاه داده را فراهم میکند:

5.4.3. ایجاد یک جدول داده
بیایید یک جدول ایجاد کنیم. روی [Tables] (پنجره بالا را ببینید) کلیک راست کرده و گزینه [New Table] را انتخاب کنید. این کار پنجره تعریف ویژگیهای جدول را باز میکند:
![]() |
بیایید با استفاده از فیلد ورودی [1]، نام جدول را [ARTICLES] بگذاریم:

بیایید از فیلد ورودی [2] برای تعریف یک کلید اصلی [ID] استفاده کنیم:

یک فیلد با دوبار کلیک روی فیلد «Primary Key» در ناحیه [PK] بهعنوان کلید اصلی تعریف میشود. بیایید با استفاده از دکمه بالای [3] فیلدها را اضافه کنیم:

تا زمانی که تعریف خود را «کامپایل» نکنیم، جدول ایجاد نخواهد شد. بیایید از دکمه [Compile] در بالا برای نهایی کردن تعریف جدول استفاده کنیم. IBExpert پرسوجوهای SQL را برای ایجاد جدول آماده میکند و درخواست تأیید میکند:

جالب اینجاست که IBExpert پرسوجوهایی را که اجرا کرده است، نمایش میدهد. این امکان را به شما میدهد تا هم زبان SQL و هم گویش SQL را که ممکن است اختصاصی باشد، بیاموزید. دکمه [Commit] برای تأیید تراکنش جاری استفاده میشود، در حالی که [Rollback] آن را لغو میکند. در اینجا، ما آن را با استفاده از [Commit] میپذیریم. پس از انجام این کار، IBExpert جدول ایجاد شده را به ساختار پایگاه داده ما اضافه میکند:

با دوبار کلیک روی جدول، میتوانید به ویژگیهای آن دسترسی پیدا کنید:

پنل [Constraints] به ما امکان میدهد محدودیتهای یکپارچگی جدید را به جدول اضافه کنیم. بیایید آن را باز کنیم:

میتوانیم محدودیت کلید اصلی را که ایجاد کردهایم ببینیم. میتوانیم محدودیتهای بیشتری اضافه کنیم:
- کلیدهای خارجی [Foreign Keys]
- محدودیتهای یکپارچگی فیلد [Checks]
- محدودیتهای یکتایی فیلد [Uniques]
توجه کنید که:
- میدانهای [ID, PRIX, STOCKACTUEL, STOKMINIMUM] باید >0 باشند
- میدان [NOM] باید خالی نبوده و یکتا باشد
پنل [Checks] را باز کنید و در ناحیه تعریف محدودیت آن کلیک راست کنید تا یک محدودیت جدید اضافه کنید:

بیایید محدودیتهای لازم را تعریف کنیم:

توجه کنید که محدودیت [NOM<>''] به جای گیومهٔ دوبل از دو گیومهٔ تکی استفاده میکند. بیایید این محدودیتها را با استفاده از دکمهٔ [Compile] در بالا کامپایل کنیم:

بار دیگر، IBExpert با فهرست کردن پرسوجوهای SQL که اجرا کرده است، اطلاعات مفیدی ارائه میدهد. اکنون به پنل [Constraints/Uniques] برویم تا مشخص کنیم که نام باید منحصر به فرد باشد. این بدان معناست که یک نام یکسان نمیتواند دو بار در جدول ظاهر شود.

بیایید محدودیت را تعریف کنیم:

سپس آن را کامپایل کنیم. پس از انجام این کار، بیایید پنل [DDL] (زبان تعریف داده) را برای جدول [ARTICLES] باز کنیم:

این کد تولید جدول SQL را همراه با تمام محدودیتهای آن فراهم میکند. میتوانیم این کد را در یک اسکریپت ذخیره کنیم تا بعداً بتوان آن را مجدداً اجرا کرد:
SET SQL DIALECT 3;
SET NAMES ISO8859_1;
CREATE TABLE ARTICLES (
ID INTEGER NOT NULL,
NOM VARCHAR(20) NOT NULL,
PRIX DOUBLE PRECISION NOT NULL,
STOCKACTUEL INTEGER NOT NULL,
STOCKMINIMUM INTEGER NOT NULL
);
ALTER TABLE ARTICLES ADD CONSTRAINT CHK_ID check (ID>0);
ALTER TABLE ARTICLES ADD CONSTRAINT CHK_PRIX check (PRIX>0);
ALTER TABLE ARTICLES ADD CONSTRAINT CHK_STOCKACTUEL check (STOCKACTUEL>0);
ALTER TABLE ARTICLES ADD CONSTRAINT CHK_STOCKMINIMUM check (STOCKMINIMUM>0);
ALTER TABLE ARTICLES ADD CONSTRAINT CHK_NOM check (NOM<>'');
ALTER TABLE ARTICLES ADD CONSTRAINT UNQ_NOM UNIQUE (NOM);
ALTER TABLE ARTICLES ADD CONSTRAINT PK_ARTICLES PRIMARY KEY (ID);
5.4.4. وارد کردن داده به یک جدول
اکنون زمان وارد کردن دادهها به جدول [ARTICLES] است. برای این کار، بیایید از پنل آن [Data] استفاده کنیم:

دادهها با دوبار کلیک روی فیلدهای ورودی برای هر سطر در جدول وارد میشوند. یک سطر جدید با استفاده از دکمه [+] اضافه میشود و یک سطر با استفاده از دکمه [-] حذف میشود. این عملیاتها در یک تراکنش انجام میشوند که با استفاده از دکمه [Commit Transaction] (به بالا مراجعه کنید) نهایی میشود. بدون این commit، دادهها از دست خواهند رفت.
5.4.5. ویرایشگر SQL از [IB-Expert]
زبان SQL (Structured Query Language) به کاربر اجازه میدهد:
- ایجاد جداول با مشخص کردن نوع دادههایی که در آنها ذخیره خواهند شد و محدودیتهایی که این دادهها باید برآورده کنند
- وارد کردن دادهها به درون آنها
- ویرایش برخی سوابق
- حذف سایر دادهها
- استخراج اطلاعات از دادهها
- ...
IBExpert به کاربر امکان میدهد عملیات ۱ تا ۴ را بهصورت گرافیکی انجام دهد. ما همین حالا این را دیدیم. وقتی پایگاه داده شامل جداول متعددی باشد که هر کدام صدها سطر دارند، به اطلاعاتی نیاز داریم که بهدستآوردن آنها بهصورت بصری دشوار است. فرض کنید، برای مثال، یک فروشگاه آنلاین در ماه هزاران مشتری دارد. تمام خریدها در یک پایگاه داده ثبت میشوند. پس از شش ماه، مشخص میشود که محصول «X» معیوب است. هدف این است که با همه کسانی که آن را خریدهاند تماس گرفته شود تا بتوانند محصول را برای تعویض رایگان بازگردانند. چگونه میتوان آدرس این مشتریان را پیدا کرد؟
- میتوان به صورت دستی همه جدولها را بررسی کرد و این مشتریان را جستجو کرد. این کار چند ساعت طول خواهد کشید.
- ما میتوانیم یک پرسوجوی SQL صادر کنیم که در عرض چند ثانیه فهرستی از این افراد را بازمیگرداند
زبان SQL هر زمان که
- حجم دادهها در جداول زیاد است
- جدولهای زیادی به یکدیگر مرتبط هستند
- اطلاعات مورد نیاز در چندین جدول پراکنده است
- ...
اکنون ویرایشگر SQL از IBExpert را ارائه میکنیم. میتوان از طریق گزینه [Tools/SQL Editor] یا [F12] به آن دسترسی داشت:

این به ما دسترسی به یک ویرایشگر پرسوجوی پیشرفته SQL میدهد که میتوانیم برای آزمایش پرسوجوها از آن استفاده کنیم. بیایید یک پرسوجو وارد کنیم:

ما پرسوجو را با استفاده از دکمه [Execute] در بالا اجرا میکنیم. نتیجه زیر را به دست میآوریم:

در بالا، زبانه [Results] جدول نتایج را برای دستور SQL [Select] نمایش میدهد. برای صدور فرمان جدید SQL، کافی است به برگه [Edit] بازگردید. سپس فرمان SQL را که اجرا شده است، مشاهده خواهید کرد.

چند دکمه در نوار ابزار مفید هستند:
- دکمه [New Query] به شما امکان میدهد به پرسوجوی جدید، SQL، سوئیچ کنید:

این یک صفحه ویرایش خالی را باز میکند:

سپس میتوانید یک سفارش جدید وارد کنید SQL:

و آن را اجرا کنید:

بیایید به برگه [Edit] بازگردیم. دستورات مختلف صادرشده SQL توسط [IBExpert] ذخیره میشوند. دکمه [Previous Query] به شما امکان میدهد به یک فرمان SQL صادرشده قبلی بازگردید:

سپس به پرسوجوی قبلی بازمیگردید:

از سوی دیگر، دکمه [Next Query] شما را به دستور بعدی، SQL، میبرد:

سپس سفارش SQL را مییابیم که در فهرست سفارشهای ذخیرهشده SQL قرار دارد:

دکمه [Delete Query] به شما امکان میدهد یک سفارش SQL را از لیست سفارشهای ذخیرهشده حذف کنید:

دکمه [Clear Current Query] محتویات ویرایشگر را برای سفارش نمایشدادهشده SQL پاک میکند:

دکمه [Commit] به شما امکان میدهد تغییرات اعمالشده بر روی پایگاه داده را بهطور دائم ذخیره کنید:

دکمه [RollBack] به شما امکان میدهد تغییرات اعمالشده در پایگاه داده را از آخرین [Commit] لغو کنید. اگر از زمان اتصال به پایگاه داده هیچ [Commit] انجام نشده باشد، تغییرات انجامشده از آن اتصال لغو میشوند.

بیایید یک مثال بزنیم. بیایید یک ردیف جدید به جدول اضافه کنیم:

دستور SQL اجرا میشود اما هیچ چیزی نمایش داده نمیشود. مشخص نیست که آیا درج انجام شده است یا خیر. برای پی بردن به این موضوع، بیایید دستور SQL را پس از [New Query] اجرا کنیم:

نتیجه زیر برای [Execute] به دست میآید:

بنابراین سطر با موفقیت درج شد. اکنون بیایید محتوای جدول را به روشی دیگر بررسی کنیم. در کاوشگر پایگاه داده، روی جدول [ARTICLES] دوبار کلیک کنید:

جدول زیر را مشاهده میکنیم:

دکمه فلش بالا به شما امکان میدهد جدول را تازهسازی کنید. پس از تازهسازی، جدول بالا بدون تغییر باقی میماند. به نظر میرسد که سطر جدید وارد نشده است. بیایید به ویرایشگر SQL (F12) بازگردیم و سپس با استفاده از دکمه [Commit]، سفارش SQL صادر شده را تأیید کنیم:

پس از انجام این کار، بیایید به جدول [ARTICLES] بازگردیم. میبینیم که حتی با استفاده از دکمه [Refresh] نیز هیچ تغییری ایجاد نشده است:

در بالا، برگه [Fields] را باز کرده و سپس به برگه [Data] بازگردیم. این بار، سطر وارد شده به درستی نمایش داده میشود:

هنگامی که دستورات مختلف SQL صادر میشوند، ویرایشگر چیزی را که به آن «معامله» در پایگاه داده گفته میشود، باز میکند. تغییراتی که توسط این دستورات SQL از ویرایشگر SQL ایجاد میشوند، تنها زمانی قابل مشاهده خواهند بود که در همان ویرایشگر SQL باقی بمانید (میتوانید چندین ویرایشگر را باز کنید). گویی ویرایشگر SQL نه روی پایگاه دادهٔ واقعی، بلکه روی یک نسخهٔ کپی از آن کار میکند. در واقع، این دقیقاً نحوهٔ کار آن نیست، اما این تشبیه میتواند به ما در درک مفهوم تراکنش کمک کند. هر تغییری که در طول یک تراکنش روی کپی ایجاد شود، تنها پس از اینکه توسط یک [Commit Transaction] تأیید (commit) شود، در پایگاه دادهٔ واقعی قابل مشاهده خواهد بود. سپس تراکنش جاری تکمیل شده و یک تراکنش جدید آغاز میشود.
تغییرات انجامشده در طول یک تراکنش را میتوان با استفاده از دستوری به نام [Rollback] برگشت داد. بیایید آزمایش زیر را انجام دهیم. بیایید یک تراکنش جدید را آغاز کنیم (بهسادگی [Commit] را روی تراکنش جاری اجرا کنید) با دستور زیر: SQL:

بیایید این دستور را اجرا کنیم که تمام سطرها را از جدول [ARTICLES] حذف میکند، سپس [New Query] را اجرا کنیم، و در ادامه دستور جدید SQL را به شرح زیر اجرا کنیم:

نتیجه زیر را به دست میآوریم:

تمام سطرها حذف شدهاند. به یاد داشته باشید که این کار بر روی یک کپی از جدول [ARTICLES] انجام شد. برای بررسی این موضوع، روی جدول [ARTICLES] در زیر دوبار کلیک کنید:

و زبانه [Data] را مشاهده کنیم:

حتی اگر از دکمه [Refresh] استفاده کنید یا به برگه [Fields] بروید و سپس به برگه [Data] بازگردید، محتوای بالا بدون تغییر باقی میماند. این موضوع قبلاً توضیح داده شده است. ما در یک تراکنش متفاوت هستیم که روی نسخهٔ اختصاصی خود کار میکند. اکنون بیایید به ویرایشگر SQL (F12) بازگردیم و از دکمهٔ [RollBack] برای لغو حذف خطوط انجامشده استفاده کنیم:

از ما خواسته میشود تأیید کنیم:

بیایید تأیید کنیم. ویرایشگر SQL تأیید میکند که تغییرات برگشت داده شدهاند:

بیایید دوباره پرسوجوی SQL بالا را اجرا کنیم تا بررسی کنیم. میتوانیم ردیفهایی را که حذف شده بودند ببینیم:

عملیات [Rollback] نسخه کپیای را که ویرایشگر SQL روی آن کار میکند، به حالتی که در ابتدای تراکنش بود بازگردانده است.
5.4.6. صادرات پایگاه داده Firebird به یک اسکریپت SQL
هنگام کار با فرآیندهای مختلف SGBD، همانطور که در آموزش «پایداری جاوا ۵ در عمل» اتفاق میافتد، مفید است که بتوان یک پایگاه داده را از یک SGBD 1 به یک اسکریپت SQL صادر کرد، و سپس دومی را به یک SGBD 2 وارد کرد. این کار از انجام تعدادی عملیات دستی جلوگیری میکند. با این حال، این کار همیشه ممکن نیست، زیرا فایلهای SGBD اغلب دارای پسوندهای اختصاصی SQL هستند.
بیایید نشان دهیم چگونه پایگاه داده [dbarticles] قبلی را به یک اسکریپت SQL صادر کنیم:
![]() |
- به [1]: Tools / Extract MetaData، برای استخراج متادیتا
- به [2]: برگهٔ اشیاء متا
- در [3]: جدول [Articles] را که میخواهید ساختار (دادههای متا) آن را استخراج کنید، انتخاب کنید
- در [4]: برای انتقال شیء انتخابشده از سمت چپ به سمت راست
![]() |
- در [5]: جدول [ARTICLES] در متادیتای استخراجشده گنجانده خواهد شد
- در [6]: از زبانه [Table de données] برای انتخاب جداول مورد نظر برای استخراج محتوا استفاده میشود (در مرحله قبلی، ساختار جدول صادر شده بود)
- در [7]: برای انتقال شیء انتخابشده در سمت چپ به سمت راست
- در [8]: نتیجهٔ حاصل
![]() |
- در [9]: زبانه [Options] به شما امکان میدهد تنظیمات استخراج خاصی را پیکربندی کنید
- در [10]: گزینههای مربوط به تولید دستورات SQL که امکان اتصال به پایگاه داده را فراهم میکنند، از حالت انتخاب خارج کنید. این موارد مختص Firebird هستند و بنابراین برای ما اهمیتی ندارند.
- در [11]: زبانه [Sortie] به شما امکان میدهد محل تولید اسکریپت را مشخص کنید SQL
- در [12]: شما مشخص میکنید که اسکریپت باید در یک فایل تولید شود
- در [13]: شما مکان این فایل را مشخص میکنید
- در [14]: شما تولید اسکریپت SQL را آغاز میکنید
اسکریپت تولیدشده، پس از حذف توضیحات، به شرح زیر است:
توجه: خطوط ۱–۲ مختص Firebird هستند. برای تولید یک SQL عمومی، باید از اسکریپت تولیدشده حذف شوند.
5.4.7. JDBC فایربرد driver
یک برنامه جاوا از طریق یک درایور JDBC که مخصوص درایور SGBD مورد استفاده است، به دادههای پایگاه داده دسترسی پیدا میکند:
![]() |
در یک معماری چندلایه مانند مورد بالا، درایور JDBC [1] توسط لایه [dao] (ابژه دسترسی به داده) برای دسترسی به دادهها از یک پایگاه داده استفاده میشود.
راننده Firebird JDBC در URLای که Firebird از آن دانلود شده است، در دسترس است:
![]() |
![]() |
- برای [1]: درایور JDBC را برای دانلود انتخاب کنید
- برای [2]: یک درایور JDBC که با JDK 1.5 سازگار است، انتخاب کنید
- برای [3]: آرشیو حاوی درایور JDBC، [jaybird-full-2.1.1.jar] است. ما این فایل را استخراج خواهیم کرد. این فایل برای تمام مثالهای مربوط به JPA با Firebird استفاده خواهد شد.
ما آن را در پوشهای قرار میدهیم که از این پس آن را <jdbc> مینامیم:

برای آزمایش این درایور JDBC، از Eclipse و افزونه SQL Explorer (بخش 5.2.6) استفاده خواهیم کرد. ابتدا درایور Firebird JDBC را اعلام میکنیم:
![]() |
- در [1]: به Window / Preferences بروید
- به [2]: گزینه SQL Explorer / JDBC Drivers را انتخاب کنید
- در [3]: درایور JDBC را برای Firebird انتخاب کنید
- در [4]: به مرحله پیکربندی بروید
- در [5]: به برگه [Extra Class Path] بروید
- با [6]، فایل درایور JDBC را مشخص کنید. پس از انجام این کار، در [7] ظاهر میشود. در اینجا، درایوری را که قبلاً در پوشه <jdbc> قرار دادهاید، انتخاب کنید
- در [8]: نام کلاس جاوا برای درایور JDBC. این نام را میتوان با استفاده از دکمه [8b] به دست آورد.
- ما [OK] را برای اعتبارسنجی پیکربندی اجرا میکنیم
![]() |
- به [9]: درایور Firebird JDBC اکنون پیکربندی شده است. اکنون میتوانید از آن استفاده کنید.
![]() |
- به [1]: یک چشمانداز جدید باز کنید
- به [2]: دیدگاه [SQL Explorer] را انتخاب کنید
![]() |
- در [3]: یک اتصال جدید ایجاد کنید
- در [4]: برای آن نامی انتخاب کنید
- در [5]: درایور Firebird JDBC را از لیست کشویی انتخاب کنید
- در [6]: URL پایگاه دادهای را که میخواهید به آن متصل شوید مشخص کنید، در این مورد: [jdbc:firebirdsql:localhost/3050:C:\data\2006-2007\eclipse\dvp-jpa\annexes\jpa\jpa.fdb]. [jpa.fdb] پایگاه دادهای است که قبلاً با IBExpert ایجاد شده است.
- در [7]: نام کاربری برای اتصال، در این مورد [sysdba]، مدیر Firebird
- در [8]: رمز عبور آن، [masterkey]
- ما پیکربندی اتصال را با استفاده از [OK] اعتبارسنجی میکنیم
![]() |
- در [1]: روی نام اتصال مورد نظر برای باز کردن دوبار کلیک کنید
- در [2]: وارد شوید (sysdba, masterkey)
- در [3]: اتصال باز است
- در [4]: ساختار پایگاه داده نمایش داده میشود. جدول [ARTICLES] قابل مشاهده است. آن را انتخاب کنید.
![]() |
- در [5]: در پنجره [Database Detail]، جزئیات شیء انتخابشده در [4] را مشاهده میکنیم، که در این مورد جدول [ARTICLES] است.
- در [6]: برگه [Columns] ساختار جدول را نشان میدهد
- در [7]: برگه [Preview] ساختار جدول را نشان میدهد
پرسوجوها را میتوان در پنجره [SQL Editor] اجرا کرد:
![]() |
- در [1]: یک اتصال باز را انتخاب کنید
- در [2]: دستور SQL را که باید اجرا شود وارد کنید
- در [3]: آن را اجرا کنید
- در [4]: دستور اجرا شده را فراخوانی کنید
- در [5]: نتیجهٔ آن
5.5. SGBD s MySQL5
5.5.1. نصب
SGBD MySQL5 در آدرس URL [http://dev.mysql.com/downloads/] در دسترس است:
![]() |
- در [1]: نسخهٔ مورد نظر را انتخاب کنید
- در [2]: نسخه ویندوز را انتخاب کنید
![]() |
- به [3]: نسخهٔ مورد نظر ویندوز را انتخاب کنید
- در [4]: فایل ZIP دانلود شده حاوی یک فایل اجرایی [Setup.exe] [4b] است که باید استخراج و اجرا شود تا MySQL5 نصب گردد
![]() |
- به عنوان [5]: نصب «معمولی» را انتخاب کنید
- به [6]: پس از اتمام نصب، میتوانید سرور را پیکربندی کنید MySQL5
![]() |
- در [7]: پیکربندی استاندارد را انتخاب کنید، همان که کمترین سؤال را میپرسد
- در [8]: سرور MySQL5 یک سرویس ویندوز خواهد بود
![]() |
- در [9]: به طور پیشفرض، مدیر سرور 'root' است و رمز عبوری ندارد. شما میتوانید این پیکربندی را حفظ کنید یا یک رمز عبور جدید برای 'root' تنظیم کنید. اگر نصب MySQL5 پس از حذف نسخه قبلی انجام شود، این عملیات ممکن است با شکست مواجه شود. راههای کمتری برای بازیابی از این وضعیت وجود دارد.
- در [10]: از شما خواسته میشود تا سرور را پیکربندی کنید
نصب MySQL5 یک پوشه را در داخل [Démarrer / Programmes ] ایجاد میکند:

میتوانید از [MySQL Server Instance Config Wizard] برای پیکربندی مجدد سرور استفاده کنید:
![]() |
![]() |
![]() |
- به [3]: ما رمز عبور ریشه را (در اینجا root/root) تغییر میدهیم
5.5.2. شروع / توقف MySQL5
سرور MySQL5 بهعنوان یک سرویس ویندوز نصب شده و برای راهاندازی خودکار تنظیم شده است، بهطوریکه c.a.d بهمحض راهاندازی ویندوز اجرا میشود. این حالت عملیاتی چندان کاربردی نیست. ما قصد داریم آن را تغییر دهیم:
[Démarrer / Panneau de configuration / Performances et maintenance / Outils d'administration / Services ]:
![]() |
- به [1]: روی [Services] دوبار کلیک میکنیم
- به [2]: میبینیم که سرویسی به نام [MySQL] وجود دارد، در حال اجرا است ([3]) و به طور خودکار شروع میشود ([4]).
برای تغییر این رفتار، روی سرویس [MySQL] دوبار کلیک میکنیم:
![]() |
- به [1]: سرویس را روی راهاندازی دستی تنظیم کنید
- در [2]: سرویس را متوقف کنید
- برای [3]: پیکربندی جدید سرویس را تأیید کنید
برای راهاندازی و متوقف کردن سرویس MySQL بهصورت دستی، میتوانید دو میانبر ایجاد کنید:
![]() |
- [1]: میانبر برای راهاندازی MySQL5
- [2]: میانبر برای متوقف کردن آن
5.5.3. کلاینتهای مدیریتی MySQL
در وبسایت MySQL میتوانید کلاینتهای مدیریتی برای SGBD را پیدا کنید:
![]() |
- برای [1]: [MySQL GUI Tools] را انتخاب کنید که شامل کلاینتهای گرافیکی مختلفی است که به شما امکان میدهد یا SGBD را مدیریت کنید یا از آن استفاده کنید
- برای [2]: نسخه مناسب ویندوز را انتخاب کنید
![]() |
- در [3]: یک فایل .msi دانلود کنید تا اجرا شود
- به [4]: پس از اتمام نصب، میانبرهای جدید در پوشه [Menu Démarrer / Programmes / mySQL] ظاهر میشوند.
بیایید MySQL را (با استفاده از میانبرهایی که ایجاد کردهاید) اجرا کنیم، سپس [MySQL Administrator] را از طریق منوی بالا اجرا کنیم:
![]() |
- برای ورود به [1]: رمز عبور کاربر ریشه را وارد کنید (در این مورد root)
- در [2]: اکنون وارد شدهاید و میتوانید ببینید که MySQL فعال است
5.5.4. ایجاد کاربر «jpa» و پایگاه داده «jpa»
این آموزش از MySQL5 با یک پایگاه داده به نام jpa و کاربری با همین نام استفاده میکند. اکنون آنها را ایجاد خواهیم کرد. ابتدا کاربر:
![]() |
- در [1]: [User Administration] را انتخاب کنید
- در [2]: در بخش [User accounts] کلیک راست کنید تا کاربر جدیدی ایجاد کنید
- در [3]: نام کاربر jpa و رمز عبور او jpa است
- در [4]: ایجاد را تأیید کنید
- در [5]: کاربر [jpa] در پنجره [User Accounts] ظاهر میشود
اکنون پایگاه داده:
![]() |
- در [1]: گزینه [Catalogs] را انتخاب کنید
- به [2]: روی پنجره [Schemata] کلیک راست کنید تا یک اسکیمای جدید (که به یک پایگاه داده اشاره دارد) ایجاد کنید
- در [3]: به طرحوارهٔ جدید نام دهید
- در [4]: در پنجره [Schemata] ظاهر میشود
![]() |
- در [5]: طرحواره [jpa] را انتخاب کنید
- در [6]: اشیاء در اسکیمای [jpa]، از جمله جداول، نمایش داده میشوند. در حال حاضر هیچکدام وجود ندارند. کلیک راست به شما امکان میدهد تا برخی را ایجاد کنید. این کار را به خواننده واگذار میکنیم.
بیایید به کاربر [jpa] بازگردیم تا به او حقوق کامل بر روی اسکیمای [jpa]: اعطا کنیم:
![]() |
- به [1]، سپس به [2]: کاربر [jpa] را انتخاب کنید
- به [3]: برگه [Schema Privileges] را انتخاب کنید
- در [4]: طرحواره [jpa] را انتخاب کنید
- در [5]: به کاربر [jpa] امتیازات کامل روی طرحواره [jpa] اعطا کنید
![]() |
- به [6]: تغییرات انجامشده را تأیید میکنیم
برای بررسی اینکه کاربر [jpa] میتواند با طرحواره [jpa] کار کند، از حساب مدیر MySQL خارج میشویم. دوباره وارد میشویم، این بار با نام کاربری [jpa/jpa]:
![]() |
- بهعنوان [1]: ورود (jpa/jpa)
- بهعنوان [2]: اتصال با موفقیت انجام شد و در [Schemata]، میتوانیم اسکیماهایی را که برای آنها مجوز داریم ببینیم. میتوانیم اسکیمای [jpa] را ببینیم.
اکنون همان جدول [ARTICLES] را مانند Firebird SGBD، با استفاده از اسکریپت SQL [schema-articles.sql] که در بخش 5.4.6 تولید شده است، ایجاد خواهیم کرد.
![]() |
- برای [1]: از برنامه [MySQL Query Browser] استفاده کنید
- برای [2]، [3]، [4]: وارد شوید (jpa / jpa / jpa)
![]() |
- برای [5]: اسکریپت SQL را برای اجرا باز کنید
- در [6]: اسکریپت [schema-articles.sql] را که در بخش 5.4.6 ایجاد شده است، مشخص کنید.
![]() |
- در [7]: اسکریپت بارگذاری شده
- در [8]: اجرا میشود
- به [9]: جدول [ARTICLES] ایجاد شده است
5.5.5. رانر JDBC برای MySQL5
رانر JDBC از MySQL را میتوان از همان محل SGBD دانلود کرد:
![]() |
![]() |
- برای [1]: درایور مناسب JDBC را انتخاب کنید
- برای [2]: نسخه مناسب ویندوز را انتخاب کنید
- در [3]: در فایل زیپی که دانلود شده، آرشیو جاوا که درایور JDBC را در خود دارد، [mysql-connector-java-5.0.5-bin.jar] است. این فایل را استخراج کنید تا بتوان از آن در مثالهای آموزش JPA استفاده کرد.
آن را به همان شیوه مورد قبلی (بخش 5.4.7) در پوشه <jdbc> قرار میدهیم:
![]() |
برای آزمایش این درایور JDBC، از Eclipse و افزونه SQL Explorer استفاده خواهیم کرد. از خوانندگان دعوت میشود تا مراحل توضیحدادهشده در بخش 5.4.7 را دنبال کنند. در ادامه چند اسکرینشات مرتبط ارائه شده است:
![]() |
- در [1]: آرشیو درایور JDBC از MySQL5 به نام جدیدی تغییر نام داده شده است
- در [2]: درایور JDBC از MySQL5 در دسترس است
![]() |
- به [3]: تعریف اتصال (کاربر، رمز عبور)=(jpa, jpa)
- در [4]: اتصال فعال است
- [5]: پایه متصل
5.6. SGBD s PostgreSQL
5.6.1. نصب
SGBD PostgreSQL در آدرس URL [http://www.postgresql.org/download/] در دسترس است:
![]() |
- در [1]: سایتهای دانلود برای PostgreSQL
- برای [2]: نسخه ویندوز را انتخاب کنید
- در [3]: نسخهای با نصبکننده را انتخاب کنید
![]() |
- در [4]: محتویات فایل فشرده دانلود شده. روی فایل [postgresql-8.2.msi] دوبار کلیک کنید
- در [5]: صفحه اول جادوگر نصب
![]() |
- به [6]: با قبول تنظیمات پیشفرض، نصب معمولی را انتخاب کنید
- در [6b]: ایجاد حساب کاربری ویندوز که سرویس PostgreSQL را اجرا خواهد کرد؛ در این مورد، حساب کاربری «pgres» با رمز عبور «pgres».
![]() |
- در [7]: اجازه دهید PostgreSQL حساب [pgres] را ایجاد کند اگر از قبل وجود نداشته باشد
- در [8]: حساب مدیر را برای SGBD تنظیم کنید، در اینجا 'postgres' با رمز عبور 'postgres'
![]() |
- در [9] و [10]: مقادیر پیشفرض را تا پایان جادوگر بپذیرید. PostgreSQL نصب خواهد شد.
نصب PostgreSQL یک پوشه در داخل [Démarrer / Programmes ] ایجاد میکند:

5.6.2. راهاندازی / توقف PostgreSQL
سرور PostgreSQL بهعنوان یک سرویس ویندوز نصب شده و برای راهاندازی خودکار تنظیم شده است، بهطوریکه c.a.d بهمحض راهاندازی ویندوز اجرا میشود. این روش عملیاتی چندان کاربردی نیست. ما قصد داریم آن را تغییر دهیم:
[Démarrer / Panneau de configuration / Performances et maintenance / Outils d'administration / Services ]:
![]() |
- به [1]: روی [Services] دوبار کلیک میکنیم
- به [2]: میبینیم که سرویسی به نام [PostgreSQL] وجود دارد، اینکه به عنوان [3] در حال اجرا است و اینکه به طور خودکار به عنوان [4] شروع میشود.
برای تغییر این رفتار، روی سرویس [PostgreSQL] دوبار کلیک میکنیم:
![]() |
- به [1]: سرویس را روی راهاندازی دستی تنظیم کنید
- در [2]: سرویس را متوقف کنید
- به [3]: پیکربندی جدید سرویس را تأیید کنید
برای راهاندازی و متوقف کردن دستی سرویس PostgreSQL میتوانید از میانبرهای موجود در پوشه [PostgreSQL] استفاده کنید:
![]() |
- در [1]: میانبر برای راهاندازی PostgreSQL
- برای [2]: میانبر برای متوقف کردن آن
5.6.3. مدیریت PostgreSQL
در تصویر بالا، برنامه [pgAdmin III] (۳) به شما امکان میدهد SGBD و PostgreSQL را مدیریت کنید. بیایید SGBD را اجرا کنیم، سپس [pgAdmin III] را از طریق منوی بالا:
![]() |
- برای [1]: روی سرور PostgreSQL دوبار کلیک کنید تا به آن متصل شوید
- به [2,3]: با حساب کاربری مدیر SGBD وارد شوید، در این مورد (postgres / postgres)
![]() |
- روی [4]: تنها پایگاه داده موجود
- در [5]: تنها کاربر موجود
5.6.4. ایجاد یک کاربر به نام jpa و یک پایگاه داده به نام jpa
این آموزش از PostgreSQL با یک پایگاه داده به نام jpa و یک کاربر با همین نام استفاده میکند. اکنون آنها را ایجاد خواهیم کرد. ابتدا کاربر:
![]() |
- در [1]: ما یک نقش جدید (~user) ایجاد میکنیم
- در [2]: کاربر jpa را ایجاد کنید
- در [3]: رمز عبور آن jpa است
- در [4]: رمز عبور تکرار میشود
- در [5]: کاربر مجاز به ایجاد پایگاههای داده است
- در [6]: کاربر [jpa] در میان نقشهای ورود به سیستم ظاهر میشود
اکنون برای پایگاه داده:
![]() |
- در [1]: یک اتصال جدید به سرور ایجاد میشود
- در [2]: jpa نامگذاری خواهد شد
- در [3]: ماشینی که میخواهیم به آن متصل شویم
- در [4]: کاربری که وارد میشود
- در [5]: رمز عبور آنها. ما پیکربندی اتصال را با [OK] تأیید میکنیم
- در [6]: اتصال جدید ایجاد شده است. این اتصال متعلق به کاربر jpa است. کاربر اکنون یک پایگاه داده جدید ایجاد خواهد کرد:
![]() |
- در [1]: یک پایگاه داده جدید اضافه شده است
- در [2]: نام آن jpa است
- در [3]: مالک آن کاربر jpa است که قبلاً ایجاد شده است. ما این را با [OK] تأیید میکنیم
- در [4]: پایگاه داده jpa ایجاد شده است. یک کلیک ساده روی آن ما را به آن متصل میکند و ساختار آن را آشکار میسازد:
![]() |
- در [5]: اشیاء در شِمای [jpa]، از جمله جداول، ظاهر میشوند. در حال حاضر هیچکدام وجود ندارند. کلیک راست به شما امکان میدهد تا برخی را ایجاد کنید. این کار را به خواننده واگذار میکنیم.
اکنون همان جدول [ARTICLES] را مانند جدولهای قبلی SGBD، با استفاده از اسکریپت SQL [schema-articles.sql] که در بخش 5.4.6 تولید شده است، ایجاد خواهیم کرد.
![]() |
- به [1]: ویرایشگر SQL را باز کنید
- به [2]: یک اسکریپت SQL را باز کنید
- در [3]: اسکریپت [schema-articles.sql] را که در بند 5.4.6 ایجاد شده است، مشخص کنید.
![]() |
- به [4]: اسکریپت بارگذاری شده است. اکنون اجرا میشود.
- به [5]: جدول [ARTICLES] ایجاد شده است.
- در [6, 7]: محتوای آن
5.6.5. راننده JDBC برای PostgreSQL
راننده JDBC برای PostgreSQL در پوشه [jdbc] درون پوشه نصب برای PostgreSQL موجود است:
![]() |
ما آرشیو JDBC را به همان شیوهٔ موارد قبلی (بخش 5.4.7) در پوشهٔ <jdbc> قرار میدهیم:
![]() |
برای آزمایش این درایور JDBC، از Eclipse و افزونه SQL Explorer استفاده خواهیم کرد. از خواننده دعوت میشود تا رویه توضیحدادهشده در بخش 5.4.7 را دنبال کند. چند اسکرینشات مرتبط ارائه میدهیم:
![]() |
- در [1]: آرشیو درایور JDBC با نام PostgreSQL مشخص شده است
- در [2]: درایور JDBC از PostgreSQL در دسترس است
![]() |
- به [3]: تعریف اتصال (کاربر، رمز عبور)=(jpa, jpa)
- در [4]: اتصال فعال است
- در [5]: پایگاه داده متصل است
- در [6]: محتویات جدول [ARTICLES]
5.7. SGBD s اوریکل 10g اکسپرس
5.7.1. نصب
Oracle 10g Express SGBD در آدرس URL [http://www.oracle.com/technology/software/products/database/xe/index.html] در دسترس است:
![]() |
- در [1]: سایت دانلود Oracle 10g Express
- در [2]: نسخه ویندوز را انتخاب کنید. پس از دانلود فایل، آن را اجرا کنید:
![]() |
- در [1]: روی فایل [OracleXE.exe] دوبار کلیک کنید
- برای [2]: صفحه اول جادوگر نصب
![]() |
- به [3]: شرایط مجوز را بپذیرید
- به [4]: تنظیمات پیشفرض را بپذیرید.
![]() |
- در [5,6]: کاربر SYSTEM رمز عبور 'system' خواهد داشت.
- در [7]: نصب آغاز میشود
نصب Oracle 10g Express یک پوشه در [Démarrer / Programmes ] ایجاد میکند:

5.7.2. راهاندازی / متوقفسازی Oracle 10g
همانند ورودیهای قبلی SGBD، Oracle 10g به عنوان یک سرویس ویندوز نصب شده است که به طور خودکار شروع میشود. ما این پیکربندی را تغییر میدهیم:
[Démarrer / Panneau de configuration / Performances et maintenance / Outils d'administration / Services ]:
![]() |
- به [1]: ما روی [Services] دوبار کلیک میکنیم
- به [2]: میتوانیم ببینیم که سرویسی به نام [OracleServiceXE] وجود دارد، در حال اجرا است ([3]) و به صورت خودکار شروع میشود ([4]).
- در [5]: سرویس دیگری از Oracle به نام «Listener» نیز فعال است و برای راهاندازی خودکار تنظیم شده است.
برای تغییر این رفتار، روی سرویس [OracleServiceXE] دوبار کلیک میکنیم:
![]() |
- به [1]: سرویس را روی شروع دستی تنظیم کنید
- برای [2]: سرویس را متوقف کنید
- برای [3]: پیکربندی جدید سرویس را تأیید کنید
همان رویه برای سرویس [OracleXETNSListener] نیز اعمال میشود (به [5] بالا مراجعه کنید). برای شروع و متوقف کردن دستی سرویس OracleServiceXE میتوانید از میانبرهای موجود در پوشه [Oracle] استفاده کنید:
![]() |
- در [1]: برای راهاندازی SGBD
- به [2]: برای متوقف کردن آن
- به [3]: برای مدیریت آن (که در صورتی که در حال اجرا نباشد، آن را راهاندازی میکند)
5.7.3. ایجاد یک کاربر jpa و یک پایگاه داده jpa
در تصویر بالا، از برنامه [3] برای مدیریت نمونه Oracle 10g Express SGBD استفاده میشود. بیایید SGBD و [1] را راهاندازی کنیم، سپس اپلیکیشن مدیریت [3] را از طریق منوی بالا اجرا کنیم:
![]() |
- در [1]: با حساب کاربری مدیر SGBD وارد شوید، در این مورد (system / system)
- در [2]: یک کاربر جدید ایجاد کنید
![]() |
- در [4]: نام کاربری
- در [5, 6]: رمز عبور آنها، در این مورد jpa
- در [7]: کاربر jpa ایجاد شده است
در Oracle، یک کاربر بهطور خودکار با پایگاهدادهٔ همنام مرتبط میشود. بنابراین پایگاهدادهٔ «jpa» همزمان با کاربر «jpa» ایجاد میشود.
5.7.4. ایجاد جدول [ARTICLES] در پایگاه داده jpa
OracleXE با یک کلاینت SQL که در حالت خط فرمان اجرا میشد، نصب شد. کار با توسعهدهنده SQL که آن هم توسط Oracle ارائه شده، راحتتر است. آن را میتوانید در وبسایت زیر بیابید:
[http://www.oracle.com/technology/products/database/sql_developer/index.html]
![]() |
- برای [1]: سایت دانلود
- برای [2]: اگر JRE از قبل نصب شده باشد (همانطور که در اینجا اینطور است)، یک نسخه ویندوز بدون JRE را انتخاب کنید، زیرا [SQL Developer] یک برنامه جاوا است.
![]() |
- در [3]: فایل دانلود شده را از حالت فشرده خارج کنید
- برای [4]: فایل اجرایی [sqldeveloper.exe] را اجرا کنید
![]() |
- در [5]: هنگام راهاندازی [SQL Developer] برای اولین بار، مسیر JRE نصبشده روی سیستم را مشخص کنید
- در [5b]: یک اتصال جدید ایجاد کنید
![]() |
- در [6]: SQL Developer به شما امکان میدهد به انواع SGBD متصل شوید. Oracle را انتخاب کنید.
- در [7]: نامی که به اتصال در حال ایجاد شما داده میشود
- در [8]: مالک اتصال
- در [9]: رمز عبور آنها (jpa)
- در [10]: مقادیر پیشفرض را حفظ کنید
- در [11]: برای آزمایش اتصال (Oracle باید در حال اجرا باشد)
- در [12]: برای تکمیل پیکربندی اتصال
- در [13]: اشیاء در پایگاه داده jpa
- در [14]: میتوان جدولها را ایجاد کرد. همانند موارد قبلی، ما جدول [ARTICLES] را با استفاده از اسکریپت ایجادشده در بخش 5.4.6 ایجاد خواهیم کرد.
![]() |
- در [15]: ما یک اسکریپت SQL را باز میکنیم
- به [16]: اسکریپت SQL ایجادشده در بخش 5.4.6 را مشخص کنید.
- در [17]: اسکریپتی که باید اجرا شود
![]() |
- در [18]: نتیجه اجرای برنامه: جدول [ARTICLES] ایجاد شده است. برای دسترسی به ویژگیهای آن، روی آن دوبار کلیک کنید.
- [19]: محتویات جدول.
5.7.5. راننده JDBC برای OracleXE
راننده JDBC برای OracleXE در پوشه [jdbc/lib] درون پوشه نصب برای OracleXE [1] موجود است:
![]() |
ما آرشیو JDBC [ojdbc14.jar] را به همان شیوه موارد قبلی (بخش 5.4.7) در پوشه <jdbc> [2] قرار میدهیم:
برای آزمایش این درایور JDBC، از Eclipse و افزونه SQL Explorer استفاده خواهیم کرد. از خوانندگان دعوت میشود تا مراحل توضیحدادهشده در بخش 5.4.7 را دنبال کنند. در ادامه چند اسکرینشات مرتبط ارائه میشود:
![]() |
- در [1]: آرشیو درایور JDBC با نام OracleXE مشخص شده است
- در [2]: درایور JDBC از OracleXE در دسترس است
![]() |
- به [3]: تعریف اتصال (کاربر، رمز عبور)=(jpa, jpa)
- در [4]: اتصال فعال است
- در [5]: پایگاه داده متصل است
- در [6]: محتویات جدول [ARTICLES]
5.8. SGBD s SQL Server Express 2005
5.8.1. نصب
سرور اکسپرس ۲۰۰۵ SGBD SQL در آدرس URL [http://msdn.microsoft.com/vstudio/express/sql/download/] در دسترس است:
![]() |
- در [1]: ابتدا پلتفرم .NET نسخه 2.0 را دانلود و نصب کنید
- در [2]: سپس SQL Server Express 2005 را نصب و دانلود کنید
- در [3]: سپس SQL Server Management Studio Express را نصب و دانلود کنید، که به شما امکان میدهد SQL Server را مدیریت کنید
نصب SQL Server Express یک پوشه را در [Démarrer / Programmes ] ایجاد میکند:
![]() |
- در [1]: برنامه پیکربندی برای سرور SQL. همچنین به شما امکان راهاندازی و متوقف کردن سرور را میدهد
- در [2]: برنامه مدیریت سرور
5.8.2. راهاندازی / توقف سرور SQL
مانند نمونههای قبلی SGBD، سرور SQL Express بهعنوان یک سرویس ویندوز نصب شده است که برای راهاندازی خودکار تنظیم شده است. ما این پیکربندی را تغییر میدهیم:
[Démarrer / Panneau de configuration / Performances et maintenance / Outils d'administration / Services ]:
![]() |
- به [1]: روی [Services] دوبار کلیک میکنیم
- در [2]: میتوانیم ببینیم که سرویسی به نام [SQL Server] وجود دارد، که راهاندازی شده است ([3]) و به طور خودکار شروع میشود ([4]).
- در [5]: سرویس دیگری که به سرور SQL متصل است و «SQL Server Browser» نام دارد، نیز فعال است و برای شروع خودکار تنظیم شده است.
برای تغییر این رفتار، روی سرویس [SQL Server] دوبار کلیک میکنیم:
![]() |
- به [1]: سرویس را روی شروع دستی تنظیم کنید
- برای [2]: سرویس را متوقف کنید
- برای [3]: پیکربندی جدید سرویس را تأیید کنید
همان رویه برای سرویس [SQL Server Browser] نیز اعمال میشود (به [5] بالا مراجعه کنید). برای شروع و توقف دستی سرویس سرور SQL، میتوانید از برنامه [1] موجود در پوشه [SQL server] استفاده کنید:
![]() |
![]() |
- در [1]: اطمینان حاصل کنید که پروتکل TCP/IP فعال است، سپس به ویژگیهای پروتکل بروید.
- در [2]: در برگه [IP Addresses]، گزینه [IPAll]:
- میدان [TCP Dynamic ports] خالی گذاشته میشود
- پورت گوشدادن سرور در [TCP Port] روی 1433 تنظیم شده است
![]() |
- در [3]: کلیک راست روی سرویس [SQL Server] دسترسی به گزینههای شروع/توقف سرور را فراهم میکند. در اینجا، آن را راهاندازی میکنیم.
- در [4]: سرویس SQL در حال اجرا است
5.8.3. ایجاد یک کاربر jpa و یک پایگاه داده jpa
بیایید SGBD را همانطور که در بالا نشان داده شده است راهاندازی کنیم، سپس برنامه مدیریت [1] را از طریق منوی زیر اجرا کنیم:
![]() |
![]() |
- در [1]: به عنوان مدیر ویندوز به سرور SQL وارد شوید
- در [2]: ویژگیهای اتصال را پیکربندی کنید
![]() |
- در [3]: حالت ورود ترکیبی را برای سرور فعال کنید: یا با ورود ویندوز (یک کاربر ویندوز) یا با ورود به سرور SQL (یک حساب کاربری تعریفشده در سرور SQL، مستقل از هر حساب ویندوز).
- در [3b]: یک کاربر سرور SQL ایجاد میشود
![]() |
- در [4]: گزینه [General]
- در [5]: نام کاربری
- در [6]: رمز عبور (jpa اینجا)
- در [7]: گزینه [Server Roles]
- در [8]: کاربر 'jpa' اجازه ایجاد پایگاههای داده را خواهد داشت
این پیکربندی را تأیید کنید:
![]() |
- در [9]: کاربر 'jpa' ایجاد شده است
- در [10]: ما از سیستم خارج میشویم
- در [11]: دوباره وارد میشویم
![]() |
- در [12]: ورود به سیستم با کاربری jpa/jpa
- در [13]: پس از ورود، کاربر jpa یک پایگاه داده ایجاد میکند
![]() |
- در [14]: پایگاه داده jpa نامگذاری خواهد شد
- در [15]: و متعلق به کاربر jpa خواهد بود
- در [16]: پایگاه داده jpa ایجاد شده است
5.8.4. ایجاد جدول [ARTICLES] در پایگاه داده jpa
همانند مثالهای قبلی، جدول [ARTICLES] را با استفاده از اسکریپت ایجادشده در بخش 5.4.6 ایجاد خواهیم کرد.
![]() |
- در [1]: یک اسکریپت SQL را باز میکنیم
- به [2]: اسکریپت SQL ایجادشده در بخش 5.4.6، صفحه 240 را مشخص کنید.
- در [3]: باید دوباره وارد شوید (jpa/jpa)
- در [4]: اسکریپتی که باید اجرا شود
- در [5]: پایگاه داده را که اسکریپت باید در آن اجرا شود، انتخاب کنید
- در [6]: آن را اجرا کنید
![]() |
- در [7]: نتیجه اجرای آن: جدول [ARTICLES] ایجاد شده است.
- در [8]: ما درخواست مشاهدهٔ محتویات آن را داریم
- در [9]: محتویات جدول.
5.8.5. راننده JDBC برای سرور اکسپرس SQL
![]() |
- در [1]: یک جستجوی گوگل با استفاده از متن [Microsoft SQL Server 2005 JDBC Driver] ما را به صفحه دانلود درایور JDBC میبرد. ما جدیدترین نسخه را انتخاب میکنیم
- [2]: فایل دانلودشده. روی آن دوبار کلیک میکنیم. فایل استخراج میشود و پوشهای حاوی درایور JDBC [3] ایجاد میکند
- [4]: آرشیو JDBC [sqljdbc.jar] را، مانند موارد قبلی (بخش 5.4.7)، در پوشه <jdbc> قرار دهید.
برای آزمایش این درایور JDBC، از Eclipse و افزونه SQL Explorer استفاده خواهیم کرد. از خوانندگان دعوت میشود تا رویه توضیحدادهشده در بخش 5.4.7 را دنبال کنند. چند تصویر صفحه مرتبط ارائه میدهیم:
![]() |
- در [1]: آرشیو درایور JDBC از سرور SQL تعیین شده است
- در [2]: درایور JDBC از سرور SQL در دسترس است
![]() |
- به [3]: جزئیات اتصال (کاربر، رمز عبور) = (jpa, jpa)
- در [4]: اتصال فعال است
- در [5]: پایگاه داده متصل شد
- در [6]: محتویات جدول [ARTICLES]
5.9. SGBD s HSQLDB
5.9.1. نصب
SGBD HSQLDB در URL [http://sourceforge.net/projects/hsqldb] در دسترس است. این یک SGBD نوشته شده به زبان جاوا است، بسیار سبک در مصرف حافظه، که به جای دیسک، پایگاههای داده را در حافظه مدیریت میکند. نتیجه، اجرای فوقالعاده سریع پرسوجوها است. این مزیت اصلی آن است. پایگاههای داده که به این روش در حافظه ایجاد میشوند، میتوانند هنگام خاموش و سپس راهاندازی مجدد سرور بازیابی شوند. این امر به این دلیل است که دستورات SQL صادر شده برای ایجاد پایگاههای داده در یک فایل گزارش (log file) ذخیره میشوند تا در بار بعدی راهاندازی سرور مجدداً اجرا شوند. این کار تضمین میکند که پایگاههای داده در طول زمان پایدار بمانند.
این روش محدودیتهای خود را دارد و HSQLDB برای استفاده تجاری در نظر گرفته نشده است. مزیت اصلی آن در کاربردهای آزمایشی یا نمایشی نهفته است. برای مثال، این واقعیت که HSQLDB به زبان جاوا نوشته شده است، به این معناست که میتوان آن را در وظایف Ant (ابزار کارآمد دیگر)، یک ابزار اتوماسیون وظایف مبتنی بر جاوا، گنجاند. بدین ترتیب، تستهای روزانه کد در حال توسعه که توسط Ant خودکار شدهاند، قادر خواهند بود تستهای پایگاه داده را که توسط SGBD و HSQLDB مدیریت میشوند، در بر گیرند. سرور توسط وظایف جاوا راهاندازی، متوقف و مدیریت خواهد شد.
![]() |
- در [1]: سایت دانلود
- به [2]: دانلود آخرین نسخه
![]() |
- در [3]: فایل ZIP دانلود شده را از حالت فشرده خارج کنید
- در [4]: پوشه [hsqldb] حاصل از استخراج
- به [5]: پوشه [demo]، که حاوی اسکریپت راهاندازی سرورهای [hsql] و [6] است، و اسکریپت [7]، که یک ابزار مدیریت سرور پایه را راهاندازی میکند.
5.9.2. راهاندازی / توقف HSQLDB
برای راهاندازی سرور HSQLDB، روی برنامه [runManager.bat] یا [6] که در بالا نشان داده شده است، دوبار کلیک کنید:
![]() |
- در [1]: میتوانید ببینید که برای متوقف کردن سرور، کافی است در پنجره کلید Ctrl-C را فشار دهید.
5.9.3. پایگاه داده [test]
پایگاه دادهٔ پیشفرض در پوشهٔ [data] قرار دارد:
![]() |
- در [1]: هنگام راهاندازی، SGBD HSQL اسکریپتی به نام [test.script] را اجرا میکند
- خط ۱: یک اسکیما با نام [public] ایجاد میشود
- خط ۲: کاربری به نام [sa] با رمز عبور خالی ایجاد میشود
- خط ۳: کاربر [sa] دارای حقوق مدیریتی شد
در نهایت، یک کاربر با حقوق مدیریتی ایجاد شده است. این کاربری است که از این پس از آن استفاده خواهیم کرد.
5.9.4. رانر JDBC برای HSQL
راننده JDBC برای SGBD HSQL در پوشه [lib] قرار دارد:
![]() |
- در [1]: آرشیو [hsqldb.jar] شامل درایور JDBC برای SGBD و HSQL است
- در [2]: این آرشیو را، مانند موارد قبلی (بخش 5.4.7)، در پوشه <jdbc> قرار میدهیم
برای آزمایش این درایور JDBC، از Eclipse و افزونه SQL Explorer استفاده خواهیم کرد. از خوانندگان دعوت میشود تا مراحل توضیحدادهشده در بخش 5.4.7 را دنبال کنند. چند اسکرینشات مرتبط ارائه میدهیم:
![]() |
- در [1]: [window / preferences / SQL Explorer / JDBC Drivers]
- در [2]: سرور در [HSQLDB] پیکربندی شده است
- در [3]: آرشیو [hsqldb.jar] حاوی درایور JDBC را مشخص کنید
- در [4]: نام کلاس جاوا برای درایور JDBC
- در [5]: درایور JDBC پیکربندی شده است
پس از انجام این کار، به سرور HSQL متصل میشویم. ما این سرور را از قبل راهاندازی میکنیم.
![]() |
- در [6]: یک اتصال جدید ایجاد کنید
- در [7]: برای آن نامی انتخاب کنید
- در [8]: میخواهیم به سرور HSQLDB متصل شویم
- در [9]: URL پایگاه دادهای که میخواهیم به آن متصل شویم. این همان پایگاه داده [test] است که قبلاً مشاهده شد.
- در [10]: ما با نام کاربری [sa] وارد میشویم. ما دیدهایم که آنها مدیر SGBD هستند.
- در [11]: کاربر [sa] رمز عبور ندارد.
ما تنظیمات اتصال را تأیید میکنیم.
![]() |
- در [12]: ما وارد میشویم
- به [13]: احراز هویت در حال انجام
- در [14]: متصل شد
![]() |
- در [15]: اسکیمای [PUBLIC] هنوز جدول ندارد
- در [16]: جدول [ARTICLES] از اسکریپت [schema-articles.sql] که در بخش 5.4.6 ایجاد شده است، ساخته شده است.
- در [17]: اسکریپت را انتخاب کنید
![]() |
- در [18]: اسکریپت قابل اجرا
- [19]: این پس از حذف تمام نظرات اجرا میشود، زیرا HSQLB آنها را قبول ندارد.
![]() |
- پس از اجرای اسکریپت، نمای پایگاه داده را با استفاده از [20] تازه کنید
- در [21]: جدول [ARTICLES] واقعاً موجود است
- در [22]: محتویات آن
بیایید سرور HSQLDB را متوقف و سپس مجدداً راهاندازی کنیم. پس از انجام این کار، بیایید فایل [test.script] را بررسی کنیم:
میتوانیم ببینیم که SGBD دستورات مختلف SQL را که در جلسه قبلی اجرا شدهاند ذخیره کرده و هنگام شروع جلسه جدید، آنها را مجدداً اجرا میکند. همچنین میتوانیم ببینیم (خط ۲) که جدول [ARTICLES] در حافظه (MEMORY) ایجاد شده است. در ابتدای هر جلسه، دستورات صادر شده SQL در [test.log] ذخیره میشوند تا در ابتدای جلسه بعدی به [test.script] کپی شده و در ابتدای آن جلسه مجدداً اجرا شوند.
5.10. SGBD آپاچی Derby
5.10.1. نصب
Apache Derby SGBD در آدرس URL [http://db.apache.org/derby/] در دسترس است. این یک SGBD است که آن نیز به زبان جاوا نوشته شده و به همان اندازه کمحافظه است. این نرمافزار مزایای مشابهی با HSQLDB ارائه میدهد. این نیز میتواند در برنامههای جاوا، c.a.d، تعبیه شود، بخشی جداییناپذیر از برنامه را تشکیل دهد و در همان JVM اجرا شود.
![]() |
- در [1]: سایت دانلود
- در [2,3]: آخرین نسخه را دانلود کنید
![]() |
- در [3]: فایل ZIP دانلود شده را از حالت فشرده خارج کنید
- در [4]: پوشه [db-derby-*-bin] حاصل از استخراج
- به [5]: پوشه [bin]، که حاوی اسکریپت برای راهاندازی سرور [db derby] و [6] است، و در [7]، اسکریپت برای متوقف کردن آن.
5.10.2. راهاندازی / متوقفسازی Apache Derby (پایگاه داده Derby)
برای راهاندازی سرور Db Derby، روی برنامه [startNetworkServer] یا [6] که در بالا نشان داده شده است، دوبار کلیک کنید:
![]() |
- در [1]: سرور راهاندازی شده است. میتوان آن را با استفاده از برنامه [stopNetworkServer] [7] که در بالا نشان داده شده است، متوقف کرد.
5.10.3. رانر JDBC برای Derby DB
درایور JDBC دیتابیس Derby SGBD در پوشه [lib] داخل دایرکتوری نصب قرار دارد:
![]() |
- در [1]: آرشیو [derbyclient.jar] شامل درایور JDBC برای SGBD Db Derby است
- به [2]: این آرشیو را، مانند موارد قبلی (بخش 5.4.7)، در پوشه <jdbc> قرار میدهیم
برای آزمایش این درایور JDBC، از Eclipse و افزونه SQL Explorer استفاده خواهیم کرد. از خوانندگان دعوت میشود تا مراحل توضیحدادهشده در بخش 5.4.7 را دنبال کنند. چند اسکرینشات مرتبط ارائه میدهیم:
![]() |
- در [1]: [window / preferences / SQL Explorer / JDBC Drivers]
- در [2]: درایور JDBC آپاچی دربی در لیست نیست. ما آن را اضافه میکنیم.
![]() |
- در [3]: ما به درایور جدید یک نام میدهیم
- در [4]: قالب URLهای پشتیبانیشده توسط درایور JDBC را مشخص کنید
- در [5]: فایل .jar را برای درایور JDBC مشخص میکنیم
- در [5b]: نام کلاس جاوا درایور JDBC
- در [5c]: درایور JDBC پیکربندی میشود
پس از انجام این کار، به سرور Apache Derby متصل میشویم. ما این سرور را از قبل راهاندازی کردهایم.
![]() |
- در [6]: یک اتصال جدید ایجاد کنید
- در [7]: به آن نام میدهیم
- در [8]: میخواهیم به سرور Apache Derby متصل شویم
- در [9]: URL پایگاه دادهای که میخواهید به آن متصل شوید. پس از پیشوند استاندارد [jdbc:derby://localhost:1527]، مسیر یک پوشه روی دیسک را که حاوی یک پایگاه داده Derby است وارد کنید. گزینه [create=true] به شما امکان میدهد این پوشه را در صورت عدم وجود ایجاد کنید.
- در [10,11]: شما با کاربری [jpa/jpa] متصل میشوید. من این موضوع را به طور دقیق بررسی نکردهام، اما به نظر میرسد میتوانید هر نام کاربری و رمز عبوری را که میخواهید وارد کنید. در اینجا، اگر create=true باشد، مالک پایگاه داده را مشخص میکنید.
پیکربندی اتصال را اعتبارسنجی کنید.
![]() |
- در [12]: ورود
- در [13]: ما احراز هویت میکنیم (jpa/jpa)
- در [14]: ما وارد شدهایم
![]() |
- در [15]: طرحواره [jpa] هنوز ظاهر نشده است.
- در [16]: ما قصد داریم جدول [ARTICLES] را از اسکریپت [schema-articles.sql] که در بخش 5.4.6 ایجاد شده است، بسازیم.
- در [17]: اسکریپت را انتخاب کنید
![]() |
- در [18]: اسکریپت قابل اجرا
- در [19]: پس از حذف تمام نظرات، آن را اجرا کنید، زیرا Apache Derby، مانند HSQLB، آنها را نمیپذیرد.
![]() |
- پس از اتمام اجرای اسکریپت، نمایش پایگاه داده را در [20] تازه کنید
- در [21]: اسکیمای [jpa] و جدول [ARTICLES] در واقع موجود هستند
- در [22]: محتویات جدول [ARTICLES]
![]() |
- در [23]: محتویات پوشه [derby\jpa] که در آن پایگاه داده ایجاد شده است.
5.11. چارچوب Spring 2
چارچوب Spring 2 در آدرس اینترنتی [http://www.springframework.org/download] در دسترس است:
![]() |
- در [1]: آخرین نسخه را دانلود کنید
- در [2] نسخهٔ معروف به «with dependencies» را دانلود کنید، زیرا شامل فایلهای .jar ابزارهای شخص ثالثی است که Spring با آنها یکپارچه میشود و همیشه به آنها نیاز دارید.
![]() |
- [3]: آرشیو دانلودشده را از حالت فشرده خارج کنید
- در [4]: پوشه نصب Spring 2.1
![]() |
- در [5]: در پوشه <dist>، آرشیوهای Spring را پیدا خواهید کرد. آرشیو [spring.jar] حاوی تمام کلاسهای فریمورک Spring است. این موارد همچنین به صورت ماژول در پوشه <modules> در [6] موجود هستند. اگر بدانید کدام ماژولها را نیاز دارید، میتوانید آنها را در اینجا پیدا کنید. این کار مانع از آن میشود که آرشیوهایی را در برنامه وارد کنید که به آنها نیاز ندارد.
![]() |
- در [7]: پوشه <lib> شامل آرشیوهای ابزارهای شخص ثالث مورد استفاده توسط Spring است
- در [8]: برخی از آرشیوهای پروژه [jakarta-commons]
وقتی آموزش از آرشیوهای Spring استفاده میکند، باید آنها را یا از پوشه <dist> یا از پوشه <lib> در مسیر نصب Spring بازیابی کنید.
5.12. کانتینر EJB3 از JBoss
کانستر EJB3 از JBoss در URL [http://labs.jboss.com/jbossejb3/downloads/embeddableEJB3] در دسترس است:
![]() |
- در [1]: ما JBoss و EJB3 را دانلود میکنیم. میتوانیم تاریخ محصول (سپتامبر ۲۰۰۶) را ببینیم، در حالی که دانلود در مه ۲۰۰۷ انجام شده است. ممکن است کسی تعجب کند که آیا این محصول هنوز در حال توسعه است یا خیر.
- در [2]: فایل دانلود شده
![]() |
- در [3]: فایل فشرده ZIP از حالت فشرده خارجشده
- در [4]: آرشیوهای [hibernate-all.jar, jboss-ejb3-all.jar, thirdparty-all.jar]، کانتینر EJB3 را برای JBoss تشکیل میدهند. آنها باید در کلاسپث برنامهای که از این کانتینر استفاده میکند قرار داده شوند.








































































































































































