#java #spring #programowanie
zaczynam ze springiem i mam pytanie
mam sobie bazę sql i mam jakiś tam interfejs DataRepository i mam sobie jakiś serwis, który korzysta z tego repository
chce sobie w tym serwisie zrobić metodę, która wykona operacje na tym repository w jednej transakcji
coś w stylu:
public void dupa(){
repository.deleteAll();
repository.save(dupa111);
}
jak to zrobić? wystarczy dodać @Transcational i stanie się magia czy trzeba jakieś transcationmanagery wykorzystywać czy jeszcze co
zaczynam ze springiem i mam pytanie
mam sobie bazę sql i mam jakiś tam interfejs DataRepository i mam sobie jakiś serwis, który korzysta z tego repository
chce sobie w tym serwisie zrobić metodę, która wykona operacje na tym repository w jednej transakcji
coś w stylu:
public void dupa(){
repository.deleteAll();
repository.save(dupa111);
}
jak to zrobić? wystarczy dodać @Transcational i stanie się magia czy trzeba jakieś transcationmanagery wykorzystywać czy jeszcze co
Dobra dzisiaj już raz pisałem to napiszę jeszcze raz.
Piszę projekcik na studia i stwierdziłem że jest fajna okazja żeby ogarnąć refleksję. Bo czemu nie.
No i sytuacja przedstawia się następnująco.
Mam taką ścieżkę dziedziczenia po klasach:
Creature -> Animal -> Wolf.
Powiedzmy że gdzieś w jakiejś klasie chcę utworzyć sobie nową instancję tego wilka z tym, że nie wiem o tym że to jest
Ja mogę coś podpowiedzieć.
Po jaką cholerę używasz refleksji tutaj?!
Tego się używa tylko wtedy, gdy trzeba (zwykle nie trzeba), a nie a bo se użyję, bo tak.
Jakby mi jakiś student przyniósł projekt z refleksją z dupy to by dostał 2.0 z miejsca.
Ale używanie refleksji jest z wielu powodów złe - nieczytelny kod, dużo wolniej działa, wprowadza nieoczywiste zależności, uniemożliwia IDE (eclipsowi czy czego tam używasz) poprawne parsowanie kodu (bo nie wiadomo, jaka metoda jest wołana, więc call graph np. nie zadziała).
Ogólnie to refleksje to ostateczność.