Skip to content

22. پیوست‌ها

در اینجا توضیح می‌دهیم که چگونه ابزارهای مورد استفاده در این سند را بر روی سیستم‌های ویندوز 7 یا 8 نصب کنید. اسکرین‌شات‌ها عموماً نسخه‌های 64 بیتی SGBD و ابزارهای نصب‌شده را نشان می‌دهند. خوانندگان باید دستورالعمل‌ها را با محیط خود تطبیق دهند.

22.1. نصب JDK

جدیدترین نسخه، URL، در [http://www.oracle.com/technetwork/java/javase/downloads/index.html] (اکتبر ۲۰۱۴) موجود است. پوشه نصب برای JDK از این پس با نام <jdk-install> ذکر خواهد شد.

 

22.2. نصب Maven

Maven ابزاری برای مدیریت وابستگی‌ها در یک پروژه جاوا و موارد دیگر است. این ابزار (اکتبر ۲۰۱۴) در URL و [http://maven.apache.org/download.cgi] در دسترس است.

 

آرشیو را دانلود و از حالت فشرده خارج کنید. ما از پوشه نصب Maven با نام <maven-install> یاد خواهیم کرد.

  • در [1]، فایل [conf / settings.xml] مِیوِن را پیکربندی می‌کند؛

این فایل شامل خطوط زیر است:


  <!-- localRepository
   | The path to the local repository maven will use to store artifacts.
   |
   | Default: ${user.home}/.m2/repository
  <localRepository>/path/to/local/repo</localRepository>
-->

مقدار پیش‌فرض در خط ۴ ممکن است برای برخی نرم‌افزارهایی که از Maven استفاده می‌کنند مشکل‌ساز شود، اگر مانند من، {user.home} شما یک فاصله در مسیر خود داشته باشد (برای مثال، [C:\Users\Serge Tahé]). ما یک پوشهٔ متفاوت را برای مخزن محلی Maven مشخص خواهیم کرد (خط ۷):


  <!-- localRepository
   | The path to the local repository maven will use to store artifacts.
   |
   | Default: ${user.home}/.m2/repository
  <localRepository>/path/to/local/repo</localRepository>
  -->
<localRepository>D:\Programs\devjava\maven\.m2\repository</localRepository>

در خط ۷، از استفاده از مسیری که شامل فاصله باشد خودداری کنید.

22.3. نصب STS (Spring Tool Suite)

ما مجموعه ابزار SpringSource ([http://www.springsource.com/developer/sts]، اکتبر ۲۰۱۴) را نصب خواهیم کرد، که یک محیط اکلیپس از پیش پیکربندی‌شده با پلاگین‌های متعدد مرتبط با فریم‌ورک Spring و همچنین با یک پیکربندی Maven از پیش نصب‌شده است.

  • به وب‌سایت SpringSource Tool Suite بروید (STS) [1]، برای دانلود نسخه فعلی STS [2A] [2B]،
  • فایل دانلود شده یک نصب‌کننده است که ساختار دایرکتوری را برای [3A] و [3B] ایجاد می‌کند. در [4]، فایل اجرایی راه‌اندازی می‌شود،
  • در [5]، پنجره کاری IDE پس از بستن پنجره خوش‌آمدگویی ظاهر می‌شود. در [6]، پنجره سرورهای برنامه نمایش داده می‌شود،
  • در [7]، پنجرهٔ سرورها. یک سرور ثبت شده است. این یک سرور سازگار با Tomcat VMware است.

شما باید مسیر نصب Maven را در STS مشخص کنید:

  • در [1-2]، STS را پیکربندی کنید؛
  • در [3-4]، یک نصب جدید Maven اضافه کنید؛
  • در [5]، مسیر نصب Maven را مشخص کنید؛
  • در [6]، جادوگر را تکمیل کنید؛
  • در [7]، نصب جدید Maven را به‌عنوان پیش‌فرض تنظیم کنید؛
  • در [8-9]، مخزن محلی Maven را بررسی کنید – پوشه‌ای که وابستگی‌های دانلود شده در آن قرار می‌گیرند و جایی که STS آرتفکت‌های ساخت‌یافته را قرار خواهد داد؛

شما همچنین باید یک JDK (مجموعه توسعهٔ جاوا) را برای اجرای هر دو پروژهٔ Eclipse با و بدون Maven [1-5] انتخاب کنید.

با [4]، می‌توانید JDK (کیت توسعه جاوا) یا JRE (محیط اجرایی جاوا) را اضافه کنید. مورد دوم می‌تواند فایل‌های .class را اجرا کند اما نمی‌تواند فایل‌های .java را برای تولید آن‌ها کامپایل کند. JDK می‌تواند هر دو کار را انجام دهد. ما JDK را انتخاب می‌کنیم زیرا برخی عملیات Maven به JDK نیاز دارند.

برای ایجاد یک پروژهٔ Eclipse، مراحل زیر را دنبال کنید:

  • در [3]، برای پروژه یک نام انتخاب کنید؛
  • در [4]، یک پوشهٔ خالی موجود را انتخاب کنید؛
  • در [5]، پروژه‌ای را که ایجاد کرده‌اید؛
  • در [5-8]، یک پکیج ایجاد کنید. پکیج پوشه‌ای است که حاوی کد جاوا است. دو کلاس می‌توانند نام یکسانی داشته باشند اگر به پکیج‌های متفاوتی تعلق داشته باشند. در داخل یک پروژه، نمی‌توان دو پکیج با نام یکسان وجود داشته باشد. بنابراین، شما نمی‌توانید از نام پکیجی که از قبل در یکی از وابستگی‌های پروژه وجود دارد، استفاده کنید. یک شرکت از نام بسته‌ای استفاده می‌کند که شرکت، پروژه و شاخه‌های مختلف آن را مشخص می‌کند؛
  • در [9]، به بسته یک نام بدهید؛
  • در [10]، بسته ایجاد شد؛
  • در [11-13]، یک کلاس در بسته‌ای که ایجاد شده است بسازید؛
  • در [14]، به کلاس یک نام بدهید (باید مطابق استاندارد CamelCase باشد – هر کلمه در نام باید با یک حرف بزرگ و به دنبال آن حروف کوچک آغاز شود)؛
  • در [15]، پکیج را علامت بزنید؛
  • در [16]، تیک را بزنید. این کار درخواست تولید متد استاتیک [main] را می‌کند. این متد یک کلاس را قابل اجرا می‌سازد، یعنی اولین کلاسی که در یک پروژه اجرا می‌شود؛
  • در [17]، کلاس به‌وجودآمده را وارد کنید؛

در متد [main]، کد زیر را وارد کنید که متنی را روی کنسول نمایش می‌دهد:


package st.istia;

public class Test01 {

    public static void main(String[] args) {
        System.out.println("test01");
    }

}
  • در [18-20]، کلاس را اجرا کنید. متد آن [main] سپس اجرا خواهد شد؛
  • در [21-22]، نتیجهٔ برنامه؛

اگر view [Console] موجود نباشد، برای [1-4] به شرح زیر عمل کنید:

هنگام وارد کردن یک پروژه Eclipse، ممکن است خطاهایی رخ دهد. این ممکن است به دلیل پیکربندی نادرست پروژه باشد. برای رفع خطا (در صورت وجود)، مراحل زیر را دنبال کنید:

  • در [1]، [Build Path] پروژه را اصلاح کنید؛
  • به [2]، پروژه برای استفاده از JVM 1.5 پیکربندی شده است؛
  • از [3]، این وابستگی را حذف کنید؛
  • در [4]، یک وابستگی جدید اضافه کنید؛
  • در [5]، یک JVM اضافه کنید؛
  • در [6]، JVM را از آیتم انتخاب کنید؛

پس از انجام این کار، همه چیز را تأیید می‌کنیم و سپس به ویژگی [Java compiler] از پروژه [7] می‌رویم:

  • در [8]، به کامپایلر دستور می‌دهیم که تمام ویژگی‌های زبان جاوا را تا و شامل نسخه ۱.۷ (یا ۱.۸) بپذیرد؛
  • در [9]، اعتبارسنجی می‌کنیم؛
  • در [10]، پروژه پیکربندی‌شده مجدد دیگر نباید هیچ خطایی داشته باشد؛

علاوه بر این، پروژه واردشده می‌تواند از رمزگذاری کاراکتری UTF-8 استفاده کند. برای تنظیم این رمزگذاری در پروژه واردشده [1-4]، مراحل زیر را دنبال کنید:

علاوه بر این، ممکن است غیرفعال کردن بررسی املایی در پروژه مفید باشد تا از زیرخط‌دار شدن نظرات به زبان فرانسوی به عنوان اشتباه جلوگیری شود. مراحل [1-4] زیر را دنبال کنید:

22.4. نصب NetBeans

NetBeans در URL [http://netbeans.org/downloads/] موجود است.

 

می‌توانید نسخهٔ جاوا SE (ویرایش استاندارد) را از لینک بالا دانلود کنید.

22.5. نصب افزونه Chrome [Advanced Rest Client]

در این سند، ما از مرورگر کروم گوگل (http://www.google.fr/intl/fr/chrome/browser/) استفاده می‌کنیم. ما افزونه [Advanced Rest Client] را به آن اضافه خواهیم کرد. شما می‌توانید این کار را به شرح زیر انجام دهید:

  • با استفاده از مرورگر کروم به وب‌سایت [Google Web store] (https://chrome.google.com/webstore) بروید؛
  • برنامه‌ی [Advanced Rest Client] را جستجو کنید:
 
  • سپس برنامه برای دانلود در دسترس قرار می‌گیرد:
  • برای دانلود آن، باید یک حساب گوگل ایجاد کنید. سپس [Google Web Store] از شما تأیید را درخواست خواهد کرد [1]:
  • در [2]، افزونهٔ اضافه شده تحت گزینهٔ [Applications] [3] در دسترس است. این گزینه در هر زبانهٔ جدیدی که ایجاد می‌کنید (CTRL-T) در مرورگر نمایش داده می‌شود.

22.6. مدیریت jSON در جاوا

به روشی که برای توسعه‌دهنده trans nsparent است، چارچوب [Spring MVC] از کتابخانه‌های jSON و [Jackson] استفاده می‌کند. برای نشان دادن اینکه jSON (JavaScript نشانهٔ شیء)، در اینجا برنامه‌ای ارائه می‌کنیم که اشیاء را به jSON سریالیزه می‌کند و با معکوس‌سازی رشته‌های حاصل از jSON، اشیاء اصلی را بازسازی می‌کند.

کتابخانه «Jackson» به شما امکان می‌دهد تا بسازید:

  • رشته jSON برای یک شیء: new ObjectMapper().writeValueAsString(object);
  • یک شیء از یک رشته jSON: new ObjectMapper().readValue(jsonString, Object.class).

هر دو روش احتمالاً یک IOException را پرتاب می‌کنند. در اینجا یک مثال آمده است.

پروژهٔ بالا یک پروژهٔ Maven است که شامل فایل [pom.xml] زیر است:


<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
  <modelVersion>4.0.0</modelVersion>

  <groupId>istia.st.pam</groupId>
  <artifactId>json</artifactId>
  <version>1.0-SNAPSHOT</version>

  <dependencies>
    <dependency>
      <groupId>com.fasterxml.jackson.core</groupId>
      <artifactId>jackson-databind</artifactId>
      <version>2.3.3</version>
    </dependency>
  </dependencies>
</project>
  • خطوط ۱۲–۱۶: وابستگی که کتابخانهٔ «Jackson» را وارد می‌کند؛

کلاس [Personne] به شرح زیر است:


package istia.st.json;

public class Personne {
    // داده‌ها
    private String nom;
    private String prenom;
    private int age;

    // تولیدکنندگان
    public Personne() {

    }

    public Personne(String nom, String prénom, int âge) {
        this.nom = nom;
        this.prenom = prénom;
        this.age = âge;
    }

    // امضا
    public String toString() {
        return String.format("Personne[%s, %s, %d]", nom, prenom, age);
    }

    // گیرنده و تنظیم‌کننده
...
}

کلاس [Main] به شرح زیر است:


package istia.st.json;

import com.fasterxml.jackson.databind.ObjectMapper;

import java.io.IOException;
import java.util.HashMap;
import java.util.Map;

public class Main {
  //ابزار سریالی‌سازی/دسریالی‌سازی
  static ObjectMapper mapper = new ObjectMapper();

  public static void main(String[] args) throws IOException {
    // ایجاد یک شخص
    Personne paul = new Personne("Denis", "Paul", 40);
    //نمایش jSON
    String json = mapper.writeValueAsString(paul);
    System.out.println("Json=" + json);
    // نمونه سازی یک Person از JSON
    Personne p = mapper.readValue(json, Personne.class);
    //نمایش یک شخص
    System.out.println("Personne=" + p);
    // یک آرایه
    Personne virginie = new Personne("Radot", "Virginie", 20);
    Personne[] personnes = new Personne[]{paul, virginie};
    // نمایش JSON
    json = mapper.writeValueAsString(personnes);
    System.out.println("Json personnes=" + json);
    // واژه‌نامه
    Map<String, Personne> hpersonnes = new HashMap<String, Personne>();
    hpersonnes.put("1", paul);
    hpersonnes.put("2", virginie);
    // نمایش JSON
    json = mapper.writeValueAsString(hpersonnes);
    System.out.println("Json hpersonnes=" + json);
  }
}

اجرای این کلاس خروجی صفحه زیر را تولید می‌کند:

1
2
3
4
Json={"nom":"Denis","prenom":"Paul","age":40}
Personne=Personne[Denis, Paul, 40]
Json personnes=[{"nom":"Denis","prenom":"Paul","age":40},{"nom":"Radot","prenom":"Virginie","age":20}]
Json hpersonnes={"2":{"nom":"Radot","prenom":"Virginie","age":20},"1":{"nom":"Denis","prenom":"Paul","age":40}}

نکات کلیدی از مثال:

  • شیء [ObjectMapper] مورد نیاز برای تبدیلات jSON / شیء: خط 11;
  • تبدیل [Personne] → jSON: خط 17;
  • تبدیل jSON → [Personne]: خط ۲۰؛
  • استثنای [IOException] که توسط هر دو متد پرتاب شده است: خط ۱۳.

22.7. نصب [WampServer]

[WampServer] یک مجموعه نرم‌افزاری است برای توسعه در PHP / MySQL / Apache روی یک ماشین ویندوز. ما از آن صرفاً برای SGBD و MySQL استفاده خواهیم کرد.

  • در وب‌سایت [WampServer] [1]، نسخه مناسب ([2]) را انتخاب کنید،
  • فایل اجرایی دانلود شده یک نصاب (installer) است. جزئیات مختلفی در طول نصب درخواست می‌شود. این موارد به MySQL مربوط نمی‌شوند. بنابراین می‌توان آنها را نادیده گرفت. پنجره [3] در پایان نصب ظاهر می‌شود. [WampServer] را اجرا کنید،
  • در [4]، آیکون [WampServer] در نوار وظیفه در پایین سمت راست صفحه [4] نصب می‌شود،
  • و هنگامی که روی آن کلیک می‌کنید، منوی [5] ظاهر می‌شود. این امکان را به شما می‌دهد تا سرور آپاچی و SGBD MySQL را مدیریت کنید. برای مدیریت این کار، از گزینه [PhpPmyAdmin] استفاده کنید؛
  • که پنجره‌ای را که در زیر نشان داده شده است، باز می‌کند،

Image

ما چند جزئیات در مورد استفاده از [PhpMyAdmin] ارائه خواهیم داد. در بخش 6.4.2، نشان می‌دهیم چگونه از آن برای ایجاد یک پایگاه داده از یک اسکریپت SQL استفاده کنیم.