Was ist die häufigste Verwendung für AOP im Frühjahr Projekt

9

Nachdem ich das AOP-Muster studiert habe, bin ich überwältigt von den Wegen, wie und wofür ich es in meinem Frühlingsprojekt verwenden soll.

Ich möchte es als Audit-Log-System für die gesamte Finanzgeschäftslogik verwenden. Es scheint einfach zu sein, zu integrieren. Aber ich würde gerne Ihre Meinung dazu hören.

Die Frage ist - welche anderen Verwendungen sollte ich berücksichtigen, die für dieses Muster üblich sind? Es würde mir nichts ausmachen, meine derzeitige Logik so umzugestalten, dass sie mit AOP verwendet werden kann, solange es Vorteile bringt.

    
Mat B. 16.01.2011, 23:19
quelle

6 Antworten

9

Die gebräuchlichste Verwendung ist wahrscheinlich die deklarative Transaktionsverarbeitung mit @Transactional .

    
Axel Fontaine 16.01.2011, 23:24
quelle
8

Die gebräuchlichste Verwendung ist, wenn Ihre Anwendung übergreifende Probleme hat, d. h. ein Stück Logik oder Code, das in mehrere Klassen / Schichten geschrieben wird.

Und das könnte je nach Ihren Bedürfnissen variieren. Einige sehr häufige Beispiele für diese könnten sein:

  1. Transaktionsverwaltung
  2. Protokollierung
  3. Ausnahmebehandlung (vor allem, wenn Sie detaillierte Ablaufverfolgungen wünschen oder einen Plan zur Wiederherstellung von Ausnahmen haben möchten)
  4. Sicherheitsaspekte
  5. Instrumentierung

Ich hoffe, das hilft.

    
Nilesh 18.01.2011 10:41
quelle
7

Abgesehen von Logging / Auditing und der deklarativen Transaktionsverarbeitung, wie von Axel erwähnt, würde ich sagen, dass eine andere Verwendung von AOP als Anforderungsabfangvorrichtung erfolgt. Angenommen, Sie möchten, dass alle Anforderungen eines Servers abgefangen werden, damit Sie etwas damit tun können (z. B. um zu verfolgen, welche App welche Anfrage an welche andere App bzw. welche Datenbank sendet usw.).

    
CoolBeans 17.01.2011 00:14
quelle
2

Sie können AOP für Ihre Sicherheitsfragen verwenden, z. B. Zugriff auf Methoden zulassen / nicht zulassen. Eine weitere Anwendung von aop ist das Testen der Anwendungsleistung.

    
o-richie-nal 17.01.2011 08:54
quelle
1

Die Verwendung von AOP für Audit Logging ist eine vollkommen gültige Verwendung von AOP. Sie können es zum Testen deaktivieren und ändern, wenn sich die Anforderungen in der Produktion ändern.

Der einzige Nachteil in diesem Fall ist, wenn Sie das Audit-Log über SQL planen. Es kann leistungsfähiger sein, diese Art der Überwachung als Trigger direkt in der DB zu implementieren.

    
AngerClown 17.01.2011 00:52
quelle
1

Als eine Antwort, die sich etwas von der Aussage von @Axel unterscheidet, ist es phänomenal, wenn Sie damit alle Ihre Datenzugriffsaufrufe automatisch abfangen und Transaktionen entsprechend anwenden. Ich habe meine eingerichtet, um alle Aufrufe meines Dao-Pakets zu implementieren, die nicht mit "get" in einer Transaktion beginnen, und dann wird alles, was in einer Methode ausgeführt wird, die mit "get" beginnt, als schreibgeschützt behandelt. Es ist fantastisch, denn abgesehen von der anfänglichen Einrichtung muss ich mich nicht darum kümmern, sondern folge einfach der Namenskonvention.

    
Chris Thompson 17.01.2011 00:57
quelle

Tags und Links