#java | #programowanie | #mechanizmrefleksji | #refleksja

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
W sumie to nie jestem pewien, czy to była przyczyna, więc usunąłem moją diagnozę. Pokaż cały kod to powiem.

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ść.
#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
@mediateh7: tylko jedna rzecz, metody modyfikujące powinny być oznaczone @Transactional, a niemodyfikujące, czyli findList, findObject itp - @Transactional(readOnly = true)
Jeżeli nie zaznaczysz, że rO ma być true, domyślnie będzie false, przez co wykluczysz niektóre optymalizacje ORM albo/i DB.
Mirki wiem że rozkręcamy właśnie nową aferę bo z Żubrem wbili się chamko w tło, no ale może ktoś z #java #programowanie jednak będzie w stanie pomóc.
Mam pierwszy raz w życiu ten problem.
Przechowuję dwuwymiarową ArrayListę pewnych obiektów, powiedzmy że wygląda to tak:
ArrayList> I w zasadzie wszystko ok poza tym, że kiedy chcę iterować po obiektach i coś tam na nich robić dostaję ConcurrentModificationException. Cała aplikacja działa w Swingu. Wiem
Potrzebuję skorzystać z api (giełdy btc) na protokole #wamp w #java. Jest do tego biblioteka jawampa, wykorzystująca #rxjava, którego nie znam (ogólnie nigdy nie korzystałem z rx). Czy ogarnićecie rxjava w takim stopniu, żeby pobierać dane giełdowe będzie czymś wymagającym, czy da radę w ~kilka godzin? Polecicie jakieś proste materiały z przykładami (po polsku albo angielsku)?
@efem: podobnie jak wyżej polcam przejście na adnotacje. Zaciągnij sobie do projektu log4j wtedy będziesz miał dostęp do informacji o zmapowanych ścieżkach do kontrolerów (dostaniesz informację w stylu Mapped "{[/api/user/{username} || /api/user/],methods=[GET]}" onto public org.springframework.http.ResponseEntity com.example.module.user.RestUserController.getMessage()) - na pewno przyda Ci się jeszcze wiele razy :)
Mam 2 pytania:
1. Jaka jest różnica między interfejsem a klasą abstrakcyjną od javy 8?
- Obiekt związany z klasą abstrakcyjną może posiadać stan(public, protected, private) w przeciwieństwie do interfejsu(wszystkie final, static).
- metody w interfejsie tylko publiczne
- klasa abstrakcyjna może posiadać konstruktor
coś jeszcze?

2. Różnica między klasą a metodą anonimową w javie?

#java #naukaprogramowania
@nick230 @baczus: Ad. 1 Nieprawda, może. Metody domyślne nie są statyczne.
Ad. 2 Mieszasz Cumplu, bo to wiele więcej niż tylko kwestia zapisu. To również sprawa wydajności i dość złożonego życia wewnętrznego JVM.
Zasadniczo, klasy anonimowe tworzone są w czasie kompilacji Twojego kodu do interpretowanego przez JVM bytecode'u, zapisywane na dysku, a następnie podczas ich pierwszego użycia, classloader ładuje je do pamięci i inicjalizuje. Wyrażenia lambda działają inaczej. Są kompilowane już
Mirki, programuję aplikację i mam pewien problem. Mam kilka modeli i odpowiadające im tabele w bazie danych, w uproszczeniu: Performance(id, name), Show(id, date, performanceid), Ticket(showid, sold). Potrzebuję otrzymać wynik o top n performances, np. (performance_id, liczba sprzedanych biletów) + przefiltrować niektóre wyniki (name, date etc.).
Samo zapytanie wiem jak wykonać, ale nie wiem zaprojektować klasy etc. Napisać metodę w PerformanceRepository typu getTop i zwracać... no właśnie co zwracać? Napisać dodatkową
@patste: Ok, przerobiłeś czystego SQL'a na CriteriaApi.
Bardzo dobre rozwiązanie w przypadku, gdy do zapytania czasami przekazujesz, a czasami nie, różne parametry. Rozwiązanie na pierwszy rzut oka wydaje się skomplikowane, ale daje bardzo dużą elastyczność.

Stałe zapytania, do których zawsze wstawiasz parametry dobrze jest robić w NamedQuery, bo te zapytanie jest transformowane na SQL w momencie kompilacji projektu i jest po prostu szybsze. ( ͡° ͜ʖ ͡°)
@koziolek666: Czytam wpis za wpisem, sam już troszkę czytałem i Kotlin brzmi naprawdę super. Udało ci się wykorzystać go w kodzie komercyjnym? W Polsce da się już znaleźć oferty pracy? Czy wychodzą już jakieś konkretne wady Kotlina?
@Brendan: plan na proda jest, ale nie na chwilę obecną. Co do pracy to obecnie nie ma, bo język jest za młody. Co do wad... osobiście nie doświadczyłem, ale śledząc listy dyskusyjne, to na chwilę obecną są problemy we współpracy z Javą w pewnych obszarach (adnotacje, czasami "coś nie działa") i stabilnością niektórych elementów. Jednak większych fakapów nie stwierdzono.
Hej Miraski spod tagu #java i #programowanie !

Mam taką sytuację, że jedna z metod klasy matki wywołuje inną metodę, też z klasy matki.

Klasa dziecko nadpisuje tę drugą metodę (tę wywoływaną) i niestety pomimo tego obiekt klasy dziecka wywołuję tę metodę z klasy matki.

Jak tego uniknąć, to znaczy jak zrobić, żeby była wywoływana metoda zdefiniowana na nowo w klasie dziecko?
#programowanie #java #spring
Zna ktoś jakąś przyjemną i lekką książkę o podstawach springa, jakichś ciekawych zagadnieniach z javy albo po prostu coś miłego do poczytania w tematyce programistycznej / informatycznej? Najlepiej jakby było do dorwania w ebooku

Czeka mnie w najbliższym czasie masa podróży to pomyślałem, że zamiast siedzieć bezmyślnie na fotelu w pociągu/samochodzie to poczytam coś wartościowego.
Witam.

Jaki język potrzebuję opanować, aby móc tworzyć strony internetowe?
Ile czasu zajmuje opanowanie języka w stopniu zaawansowanym ?
Czy jestem w stanie nauczyć się tego sam?
Czy można tworzyć strony internetowe po prostu w kreatorze zamiast używać do tego języka i pisać wszystko od nowa?
Ew. Szablony?

#informatyka #html #java #html5 #stronywww
Hej programisto!

Jesteś wannabe #programista15k? Niedługo zaczniesz nową lub kolejną pracę jako #programista? A może niedługo do Twojego zespołu dołączy nowa osoba?

To jest coś dla Ciebie!

Dziś drugi wpis poruszający tematykę jakie często towarzyszą nam emocje na początku kariery, w pierwszej pracy jako programista, a także często później, przy jej zmianie. Nie ważne czy programujesz w #java , #dotnet czy #php emocje są uniwersalne.

Pierwsza praca i towarzyszące jej