SuppeJ es un excelente marco de programación orientado a los aspectos. Presentemos brevemente el tutorial introductorio:
1. Descargue el paquete JAR de SuppeJ en el sitio web oficial. Estoy aquí con la última versión 1.8.7.
2. Debido a que SuppectJ.jar es un archivo JAR ejecutable, debe ejecutarse e instalarse.
Ingrese el directorio donde se encuentra el frasco e ingrese el comando java -jar ***. Jar:
3. Ingrese la instalación:
4. Al seleccionar Siguiente, habrá el siguiente mensaje. Por defecto, seleccione el JRE instalado en la computadora:
5. Seleccione Siguiente y luego seleccione el directorio instalado. Recuerde el directorio usted mismo, y será útil más adelante:
6. Después de completar la instalación, hay un mensaje para agregar SuppectJrt.jar en lib a classpath;
Ingrese el directorio de instalación, que contiene la carpeta LIB de la biblioteca de paquetes JAR y la carpeta de bin que contiene los archivos ejecutables:
Agregue SuppeJrt.jar para agregar a classpath:
7. Realice una prueba simple de aspectoj:
(1) Clases requeridas para escribir pruebas: A, B y clase principal Principal:
1 Public Clase A 2 {3 public void hello () {4 System.out.println ("Pruebe el primer método de primera instancia"); 5} 6 7 public void hi () {8 System.out.println ("Pruebe el segundo método de la primera instancia"); 9} 10 11} 1 clase pública B2 {3 public void greet () {4 System.out.println ("El primer método de la segunda clase de prueba"); 5} 6} 1 clase pública Main 2 {3 public static void main (string [] args) 4 {5 a a a = new a (); 6 b b = nuevo b (); 7 8 A.Hello (); 9 A.Hi (); 10 11 B.Greet (); 12} 13}Verifique el efecto de la ejecución de la compilación:
(2) Escriba el aspecto para agregar la función de destino para ingresar:
El primero:
1 Public Aspect Authaspect 2 {3 antes (): ejecución (void *. *()) {4 5 System.out.println ("Log de simulación"); 6} 7}Use AJC en la carpeta bin para compilar Authaspect, -d. *.java para compilar todos los archivos Java en el directorio actual. Coloque los archivos compilados en el directorio actual:
El segundo:
1 Public Aspect TRANSAPECT 2 {3 void alrededor (): ejecución (void *. *()) {4 5 System.out.println ("Simular el comienzo de las cosas"); 6 7 procedimiento (); // Función de devolución de llamada 8 9 System.out.println ("Simular el final de las cosas"); 10} 11}El tercero:
1 Public Aspect LogAspect 2 {3 After (): Ejecution (void*.*()) {4 5 System.out.println ("****** Simulación *******"); 6} 7}