#java #spring

Mirki, jak najlepiej stworzyć test , który będzie mi sprawdzał poprawność plików migracji bazy danych (chodzi tylko o sprawdzanie nazwy). Potrzebuje wczytać w teście nazwy wszystkich plików , które mam w module aplikacji (resources/db.migration)
  • 6
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

Hej Mireczki mam prostą aplikację ze springiem na backendzie i angularem na froncie.

Mam problem tokenami a konkretnie gdy wysyłam posta z angulara do backendu dostaję odpowiedź o statusie 200 ok ale na konsoli dane wyświetlają mi się jako null. Nie mogę nic z tego odczytać. Jeżeli wysyłam posta z restlet clienta na chrome to w odpowiedzi ciało jest puste ale w nagłówku mam stworzony przez serwer token.

Kod wrzuciłem tutaj.
  • 11
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

@Fiver: Testowałeś czy poprawnie skonfigurowałeś JWT? spróbuj przez curla(nie wygodnie)/postmana testowac sam backend czy działa jeśli tak to potem sprawdź front

PS. Znalazłem dość dobry tutek z konfiguracja JWT na spring boot (według mnie tak powinny wyglądać wszystkie tutoriale jasno oraz przejrzyście człowiek napisał) Link
  • Odpowiedz
#programowanie #spring #java Mirki, dlaczego w Springu najlepszym wyjściem jeżeli chodzi o wstrzykiwanie zależności jest metoda z konstruktorem? I czy np. dobrze jest takie pole oznaczać jako final i z jakiego powodu?
  • 4
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

metoda z konstruktorem?


@D3xxT3r: A jak inaczej chcesz to robić?

Setterem? Używanie setterów powoduje, że istnieje możliwość utworzenia obiektu, który będzie miał niepoprawny stan przez brakującą zależność (pomiędzy utworzeniem obiektu, a użyciem settera). To się w OOP nigdy nie powinno zdarzać. Albo trzeba obsługiwać, że zależność może nie być przekazana w każdym miejscu, gdzie jest używana. To jest często
  • Odpowiedz
Trochę utknąłem.. analizuje sobie implementacje JWT w Spring security i mam trzy różne wersje implementacji tego. Która według was jest najlepsza i dlaczego?
Linki do całego kodu są dostępne w pastebinie.

Pierwsza
https://pastebin.com/9RZwwruL
Druga
  • 5
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

@Roballo: Troche zalezy do przypadku. JWT to jedyna metoda autentykacji? Generalnie powinien wystarczyc jeden filtr (czyli nr. 2). Autoryzacja nie bardzo ma cokolwiek wsponego z JWT, wiec nie bardzo lapie ten pierwszy kod. Normalnie podczas autentykacji mapujesz token na usera i role i cala autoryzacje zalatwia Spring.

Jesli natomiast JWT ma tylko zastapic sesje i masz inne metody autentykacji (np. login/password), to najczysciej jest to zrobic przez RememberMeServices. Przez to
  • Odpowiedz
@Roballo: Taki filtr tez jest jak najbardziej ok i to raczej standardowy sposob implementacji JWT w Springu. Jesli nie musisz tego specjalnie integrowac z innym mechanizmami autentykacji, to zostaw tak jak jest. Jesli uzywasz Spring Boot, to pamietaj, ze dodaje on automatycznie beany implementujace Filter do lancucha (https://docs.spring.io/spring-boot/docs/current/reference/htmlsingle/#howto-disable-registration-of-a-servlet-or-filter). Ale jesli twoj filtr nie jest beanem (a wyglada na to, ze nie), to nie ma z tym problemu.
  • Odpowiedz
#java #programowanie #spring

Mireczki, dłubię właśnie podstawową apkę w Javie, przy użyciu Mavena i Springa. Czy da się jakoś na szybko zaimplementować bootstrap do views w jsp? Czy muszę dodawać bootstrap i jquery do poma?
Bo gdy dodam na sztywno do widoków standardowy template bootstrapa to niestety nie działa, wygląda jakbym nic nie zmienił.
  • 7
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

#spring #junit #testy

Mirki, mam dziwny problem.
Mam test integracyjny w mojej apce w springu. Test zawiera kilkanaście testów - gdzie postuje pod mój endpoint jsona z danymi. W większości testów jest to ten sam json - a po stronie aplikacji na pewno wszystko działa.

Jeden z testów jest @Transactional. Przed każdym testem czyszczę potrzebne repozytoria:
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

klepie sobie jakis restowy serwis w springu i chcialbym teraz podpiac angulara pod front i mam pytanie jak powinna wygladac struktura projektu tzn. w osobnych katalogach tj.
-apka
---front
---back
czy moze wrzucic angulara w katalogu ze springiem?

#programowanie #java #spring #web #beginner
  • 3
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

#java #spring #refactoring

Mirki, mam repository rozszerzające CrudRepository.
Zrobiłem 2 custom metody, każda z nich wyciąga mi część danych, którą później merguje i przekazuje do serwisu.
Żadna z nich jako pojedyncza metoda nie jest i nie będzie mi potrzebna.

Chciałbym
  • 11
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

  • 2
@mariusz-laszczka Stawianie bazy embedded typu h2 z dialektem docelowej bazy do której się łączysz. Albo jezli używasz jakiegoś specjalnego dialektu którego nie obsługuje h2, to stawianie obrazu w dockerze i robienie create/drop dla każdej klasy testowej. W pierwszym przypadku w junitach będziesz musiał odpalac nowego datasourca w metodzie before, chyba że skorzystasz ze spocka który automatycznie przelatuje to pole za każdym test casem (Spock jest świetny!).
  • Odpowiedz
#spring #java

Mirki, czy piszac @Service w Spring boocie muszę zagwarantować by moja klasa była thread safe?
Przykładowo: Czy mogę sobie zrobić Hashmapę, która nie jest ustawiona podczas inicjalizacji.
Zapełnić ją danymi podczas wykonywania pierwszej metody i korzystać z tych danych w kolejnych metodach?
  • 4
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

@mariusz-laszczka: musi byc thread safe. Ewentualnie możesz użyć concurrent hash mapy. Możesz tez zmienić scope beana. Wszystko zależy od tego co chcesz osiągnąć mając ta mapę jako pole klasy.
  • Odpowiedz
#spring #java #hibernate

Mirki, mam taka metode:

@Query("select new com.myProject.UserConfDTO(cd.id, us.lastDeactivationTime, true) from UserConfig us " +
"join us.codes as cd where cd in :codes and us.userEnabled = 1 and us.state= 'ACTIVE'")
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

Zacząłem pisać aplikacje MVC w springu, wcześniej pisałem w C# w visualu i mam poki co zle odczucia. W porównaniu fo C# gorzej mi sie w tym kodzi. Jakie Wy macie odczucia?

#java #spring #csharp
  • 6
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

Marzy mi się jakaś książka lub strona, na której można znaleźć np. 100 lub 500 programów napisanych w javie, uszeregowanych od najprostszego do zaawansowanego (gdzie ten ostatni to np. już zrobione coś w springu, jakiś sklep lub coś...).
Oczywiście wszystko ładnie opisane.

Istnieje coś takiego?

#programowanie #java #spring
  • 7
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

@Gezino: W jakim sensie "najprostszy"? Operacje wejścia/wyjścia, operowanie na stringach, konstrukcje warunkowe, pętle, definicja klasy, tworzenie i operowanie na obiektach, polimorfizm? To jest w pierwszej lepszej książce.

Jeśli chcesz zrobić kolejny krok, to zainteresuj się dokumentacją frameworków/API i czytaj dużo kodu na GitHubie.

Dla mnie Twoje pytanie jest słabe -- to tak jakbyś chciał dostać listę 1000 najczęściej zadawanych pytań odnośnie programowania w Javie. Najlepiej, żeby ktoś je dla Ciebie
  • Odpowiedz
@Gezino: jedyne co znam to:
petclinic
https://sourceforge.net/projects/broadleaf/
https://stackoverflow.com/questions/2604655/any-open-source-spring-sample-project-thats-bigger-than-petclinic

ale oba te projekty są krytykowane za jakość kodu, i mniej więcej przez to nikt takich rzeczy nie robi, bo zawsze znajdą się jakieś zarzuty co do tak wystawionego kodu, bo każdy ma swoją opinię i zawsze się da zrobić lepiej jeżeli poświęci się więcej czasu. Plus dochodzi opinia jakiej najlepszej praktyki powinno się używać DDD, hexagonal, itd. Więc raczej nikt nic
  • Odpowiedz