Wie gebe ich das Ergebnis eines spirngEventListener zurück?

Neal.Shan

Ich habe versucht, spring's eventLisnter in spring-boot 1.3.5.RELEASE zu verwenden.

Ich habe mich gefragt, ob es eine Standardmethode gibt, um gespeicherte Objekte zurückzugeben oder weitere Informationen zurückzugeben, nachdem das Ereignis verarbeitet wurde.

Ich kann event als Container verwenden, um mein gespeichertes Objekt zurückzusetzen, aber ich bin mir nicht sicher, ob dies die beste Vorgehensweise ist. Jeder Rat wird geschätzt :)

Hier ist das Beispiel:

public class StoreOrderEvent extends ApplicationEvent {

    private OrderBean orderBean;

    /**
     * Create a new ApplicationEvent.
     *
     * @param source the object on which the event initially occurred (never {@code null})
     */
    public StoreOrderEvent (Object source, OrderBean orderBean) {
        super(source);
        this.orderBean = orderBean;
    }

    public OrderBean getOrderBean() {
        return this.orderBean;
    }

}

@Component
public class OrderEventListener{

    @Autowired
    private OrderRepository orderRepository;

    @Order(5000)
    @TransactionalEventListener
    public void processStoreOrderEvent(StoreOrderEvent event) {
        OrderBean orderbean = orderRepository.save(event.getOrderBean());
        // return orderBean
    }   
}

@Service
public class OrderService{

    @Autowired
    private ApplicationContext applicationContext;

    public OrderBean storeOrder(OrderVO vo) {
        vo -> orderBean;
        applicationContext.publishEvent(new StoreOrderEvent(this, orderBean));
        // get my saved orderBean
    }   
}
Neal.Shan

Wie mit OrangeDog über Kommentare besprochen. Es ist gut, den Service zu nutzen und dann die Veranstaltung zu veröffentlichen.
oder Verwenden Sie möglicherweise service und ServiceLocatorFactoryBean, um einen benutzerdefinierten Service abzurufen.

Dieser Artikel stammt aus dem Internet. Bitte geben Sie beim Nachdruck die Quelle an.

Bei Verstößen wenden Sie sich bitte [email protected] Löschen.

bearbeiten am
0

Lass mich ein paar Worte sagen

0Kommentare
LoginNach der Teilnahme an der Überprüfung

Verwandte Artikel

Wie gebe ich das Ergebnis eines rekursiven Abrufs zurück?

Wie gebe ich das Ergebnis von ADD AND in Python zurück?

Wie gebe ich das Ergebnis eines Generatorausdrucks in CMake aus?

Wie gebe ich das Ergebnis der for-Schleifenzählung mit Python zurück?

Wie gebe ich das Ergebnis meines Abrufs mit Mähdrescher zurück?

Wie blockiere ich ein Javascript-Versprechen und gebe das aufgelöste Ergebnis zurück?

GAS / JavaScript: Wie gebe ich das Ergebnis zurück und nicht beide?

Wie gebe ich das Ergebnis von zwei Abfragen untereinander zurück?

Wie gebe ich das React-Element aus einem Promise-Ergebnis zurück?

Wie vergleiche ich zwei Datenrahmen und gebe das Ergebnis zurück?

Wie gebe ich das Ergebnis einer Mongodb-Pipeline mit einer Get-Methode zurück?

Wie gebe ich ein Ergebnis zurück, das auf Kriterien und angegebenen Summen basiert?

Wie gebe ich das Ergebnis von Cloud Functions richtig zurück?

Wie führe ich eine for-Schleife über alle Spalten eines Datenrahmens aus und gebe das Ergebnis als separaten Datenrahmen oder Matrix zurück

Wie gebe ich ein Ergebnis aus einem Dialog zurück?

Wie gebe ich ein Ergebnis einer asynchronen Aufgabe zurück?

Wie gebe ich in MVC ein String-Ergebnis zurück?

Wie öffne ich die Kamera aus einer Reihe von RecyclerView und gebe das Ergebnis in onActivityResult zurück?

Wie vergleiche ich zwei 2D-Arrays und gebe das Ergebnis in einer bestimmten Reihenfolge zurück (Google Apps Script)?

Wie füge ich eine Zeile in SQLite in einem anderen Thread ein und gebe das Ergebnis mit dem Handler zurück?

Wie gebe ich mit Python ein Wörterbuch mit jedem Ergebnis zurück, das in einer neuen Zeile gedruckt wird?

Wie gebe ich das Ergebnis aus der Addition von a und b in einer Long-Methode zurück?

Wie gebe ich 2 Indizes eines Vektors zurück?

Wie gebe ich die Konstantenreferenz eines Vektors zurück?

Wie gebe ich das Versprechen in einer asynchronen Methode zurück?

Wie gebe ich einen einzelnen Index eines Arrays zurück, indem ich das Array an eine Funktion in c# übergebe?

Wie iteriere ich Liste [Ergebnis] und gebe einen Booleschen Wert / Ergebnis zurück?

Wie gebe ich den ersten Index / das Vorkommen eines Nachnamens (einer bestimmten Zeichenfolge) mithilfe der binären Suche zurück?

Wie kann ich das Ergebnis eines verschachtelten Versprechens zurückgeben?

TOP Liste

heißlabel

Archiv