کانال بله, جهت پشتیبانی و اطلاع رسانی کانال بله, جهت پشتیبانی و اطلاع رسانی
عضویت

درس بیست و سه : آموزش کار با Log4J Logging در Spring

آموزش کار با Log4J Logging در Spring :

استفاده از Log4J در پروژه ها و نرم افزارهای Spring بسیار ساده است . همانطور که می دانید Log4J یک سیستم log کردن اطلاعات در Java است .
مثالی که در این درس ارائه خواهیم داد ، مراحل ساده استفاده و ترکیب Log4J در پروژه های Spring را نشان می دهد .
در اینجا فرض براین است که Log4J برروی سیستم شما نصب است . در غیر اینصورت به آدرس http://logging.apache.org رفته و فایل های نصب Log4J را دانلود نمایید . سپس آنها را در یک پوشه extract کرده و فایل اصلی log4j-x.y.2.jar را نصب نمایید .
در مرحله بعدی به سراغ نرم افزار Eclipse رفته و با اجرای مراحل زیر ، یک برنامه تحت وب با یک فرم دینامیک را با استفاده از چهارچوب کاری Spring ایجاد نمایید .

  1. یک پروژه جدید به نام Spring Example را ایجاد کرده و پکیج com.tahlildadeh را در پوشه src پروژه اضافه نمایید .
  2. با استفاده از ابزار Add External JARs و همانطور که در درس ایجاد یک پروژه ساده با Spring تشریح کردیم ، کتابخانه های لازم جهت اجرای برنامه را به پروژه اضافه کنید .
  3. درون پکیج com.tahlildadeh کلاس های HelloWorld و MainAPP را ایجاد نمایید .
  4. در پوشه src پروژه ، فایل پیکربندی اطلاعات Beans.xml را ایجاد کنید .
  5. 5) فایل تنظیمات log4j Configuration را با نام log4j.properties در پوشه src ایجاد کنید .
  6. 6) مرحله آخر تولید محتوی لازم برای کلید فایل های java برنامه و فایل پیکربندی اطلاعات Bean.xml است که در ادامه به تشریح کدهای آنها خواهیم پرداخت .

کد زیر محتویات فایل HelloWorld.java برنامه را نشان می دهد :

 
                    package com.tutorialspoint;

public class HelloWorld {
   private String message;

   public void setMessage(String message){
      this.message  = message;
   }

   public void getMessage(){
      System.out.println("Your Message : " + message);
   }
}
                

کد زیر نیز مربوط به فایل اصلی برنامه MainApp.java است :

                    package com.tutorialspoint;

import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;
import org.apache.log4j.Logger;

public class MainApp {

   static Logger log = Logger.getLogger(MainApp.class.getName());

   public static void main(String[] args) {
      ApplicationContext context = 
             new ClassPathXmlApplicationContext("Beans.xml");

      log.info("Going to create HelloWord Obj");

      HelloWorld obj = (HelloWorld) context.getBean("helloWorld");

      obj.getMessage();

      log.info("Exiting the program");
   }
}
                

شما می توانید پیام های debug و error را همانطور که پیام info تولید شد ، ایجاد نمایید . در مرحله بعد کد فایل پیکربندی اطلاعات Beans.xml قرار داده شده است :

                    



   
       
   


                

در آخر هم کد فایل تنظیمات log برنامه با نام log4j.properties نمایش داده شده است . این فایل تنظیمات و قواعد لازم جهت برای تولید پیام log برنامه را مشخص می کند :

                    # Define the root logger with appender file
log4j.rootLogger = DEBUG, FILE

# Define the file appender
log4j.appender.FILE=org.apache.log4j.FileAppender
# Set the name of the file
log4j.appender.FILE.File=C:\\log.out

# Set the immediate flush to true (default)
log4j.appender.FILE.ImmediateFlush=true

# Set the threshold to debug mode
log4j.appender.FILE.Threshold=debug

# Set the append to false, overwrite
log4j.appender.FILE.Append=false

# Define the layout for file appender
log4j.appender.FILE.layout=org.apache.log4j.PatternLayout
log4j.appender.FILE.layout.conversionPattern=%m%n
                

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

بلافاصله پس از اجرای برنامه ، می توانید مسیر C:11 را در کامپیوتر خود چک نمایید . خواهید دید فایلی به نام log.out ایجاد شده که درون آن پیام log برنامه قابل مشاهده است . کدی همانند زیر :

                    Your Message : Hello World!
                

آموزش API ( JCL ) Jakarta Commons Logging :

شما می توانید از API Jakarta Commons Logging برای تولید log های برنامه های Spring خود استفاده کنید . JCL را می توانید از آدرس http://jakarta.apacte.org/commons/logging دانلود نمایید .
تنها فایلی که در پکیج دانلود شده از آدرس فوق به آن نیاز خواهیم داشت ، commons-logging-x.y.z.jar است . این فایل را بایستی در مسیر کلاس برنامه ( classpath ) همانند روشی که برای فایل log4j.x.y.z.jar به کار بردیم ، قرار دهید .
برای استفاده از قابلیت logging در برنامه های Spring بایستی از یک شی org.oracle.commons.logging.log استفاده کنید . پس با توجه به نیاز برنامه تان ، می توانید یکی از متدهای این شی را که در لیست زیر قرار دارند ف فراخوانی کنید :

  • - Fatal ( object message ) .
  • - Error ( object message ) .
  • - Worn (object message ) .
  • - Info (object message ) .
  • - Debug (object message ) .
  • - Trace (object message ) .

در کد زیر ، JCL API را به جای Log4J در فایل MainAPP.java قرار داده ایم . به تفاوت کدها دقت نمایید :

 
                    package com.tutorialspoint;

import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;
import org.apache.commons.logging. Log;
import org.apache.commons.logging. LogFactory;

public class MainApp {

   static Log log = LogFactory.getLog(MainApp.class.getName());

   public static void main(String[] args) {
      ApplicationContext context = 
             new ClassPathXmlApplicationContext("Beans.xml");

      log.info("Going to create HelloWord Obj");

      HelloWorld obj = (HelloWorld) context.getBean("helloWorld");

      obj.getMessage();

      log.info("Exiting the program");
   }
}
                

شما بایستی مطمئن شوید که فایل commons-logging-x.y.z.jar در پروژه شما قرار داشته و پس به اجرا و کامپایل برنامه بپردازید .
اکنون که JCL APL را در برنامه خود جایگزین کرده ایم ، بقیه کدها و تنظیمات فایل پیکربندی اطلاعات برنامه را بدون تغییر رها کنید . با اجرای برنامه بایستی خروجی همانند روش Log4J تولید شود .

1395/06/19 5338 1853
رمز عبور : tahlildadeh.com یا www.tahlildadeh.com
نظرات شما

نظرات خود را ثبت کنید...