Jeśli ma to być duże produkcyjne rozwiązanie a do tego tanie w utrzymaniu (głównie chodzi mi o łatwość ogarnięcia programistów) to zdecydowanie Spring. Szczególnie jeśli masz do zrobienia jakiś większy monolit - nie bawiłbym się wtedy w lekkie frameworki. A jeśli będziesz pisał mikroserwisy to właściwie nic nie stoi na przeszkodzie, żeby w niektórych użyć Springa a w innych Ktora.
  • Odpowiedz
@gos4k: Dzięki za odpowiedź, Jeżeli chodzi o projekt to bardziej dla siebie. A inne raczej już biznesowo. Też skłaniam się własnie ku springowi. Mimo to też chciałem poznać innych opinie :)
  • Odpowiedz
via Wykop Mobilny (Android)
  • 2
Jaki polecacie #nas do zastosowania domowego?
Wymagania:
4 zatoki
#docker lub #linux - generalnie coś abym mógł sobie postawić 1 lub 2 male aplikacje w #spring
Dostęp po SSH
Łopatologiczna obsługa dla pozostałych członków rodziny
  • 13
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

via Wykop Mobilny (Android)
  • 1
@wytrzzeszcz: bo wolę jakieś rozwiązanie które będzie wymagało minimum pracy na wejściu aby pracowało zgodnie z oczekiwaniami. Druga sprawa że wiem że jak będę miał za dużo możliwości to w końcu coś rozpieprze lub doprowadzę do stanu gdzie ciężko będzie z tym pracować
  • Odpowiedz
Jak w spring data rest w przypadku relacji jeden do wielu dodać coś ze strony wiele do strony jeden?

Załóżmy, że jest encja Post w relacji jeden do wielu z encją Comment

No i np dodam sobie comment, robię posta pod adres

/commments
  • 12
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

@kebab-case: tak no w takim wypadku post bez właściciela nie ma sensu zależność bym pozostawił, nie wiem jak Ty masz to zrobione ale ja w CommentRepo dodał bym metodę List findByAccounts(Account account); Jeżeli wcześniej można było wywołać account.getPosts(), to teraz działa z repo. Masz usunięty błędny kod z domeny i stworzyłeś wyraźny kierunek zależności od postu do autora. Posty zależą od autorów, ale nie odwrotnie.
  • Odpowiedz
Cześć. Szukam rozwiązania odnośnie alertów/powiadomień (coś w rodzaju, że przyszła wiadomość) na frontendzie. Korzystam z Reacta i Springa. Mam dwa pomysły:

1. Wykorzystać Server Sent Events i na froncie po prostu nasłuchiwać eventy z serwera.
2. Co jakiś czas odpytywać serwer o nieprzeczytane powiadomienia.

Co jest obecnie wykorzystywane w tym celu?
  • 8
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

Przy tworzeniu RESTowych endpointów lepiej wyrzucać ResponseStatusException prost z miejsca gdzie jest błąd czy najpierw rzucić jakiś customowy wyjątek, a dopiero z np. ControllerAdvice rzucić / zwrócić ResponseStatusException?

#naukaprogramowania #java #spring
  • 3
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

@krasnoludkolo: mam kilka przypadków gdzie chce tego użyć
1. łapie ConnectionException przy próbie łączenia do Rabbita ale chce żeby od razu poszła odpowiedź do klienta i mam w planie wyrzucić ResponseStatusException bo to się samo ładnie mappuje na responsa.
2. w metodzie preHandle z HandlerInterceptor gdy request nie spełni mi warunków (np. brakujące headery, zły token) to chce wyrzucić ten wyjątek i w zależności od problemu użyć odpowiedniego kodu odpowiedzi
  • Odpowiedz
Jak byście takie coś przetestowali? #spring #java a raczej #kotlin
Mam swój własny projekcik, w którym użytkownik wykonuje jakąś akcję i włącza się timer, który za jaki czas wywoła jakąś kolejną akcję. Ten timer działa na scheduled executorze, więc dopóki aplikacja działa to wszystko jest w porządku, gorzej jak timer się stworzy, a zaraz aplikacja padnie i nie zdąży się wykonać. W takim przypadku mam w
  • 3
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

@SuppressWarnings: Nie kumam. Masz jakąś funkcję, która przy wstawaniu zczytuje z bazy te wpisy i odpala zaległe akcje? To napisz test w który mockujesz bazę i odpalasz tą funkcję i zobacz czy odpali akcje które powinna.
  • Odpowiedz
Mircy! Potrzebuję pomocy z projektem jednej apki. Sprawa wygląda następująco:
Mirkoserwis A:
- pobiera JSON'a z MongoDB który ma staus NEW
- tworzy jakiegoś joba w którym mamy x stepów (w zależności od tego jak musi zostać przetransformowany JSON) i go odpala
- dla przykładu step1 wrzuca id z bazy danych do kolejki rabbitowej i wtedy ten job nie blokuje mikroserwisu tylko czeka, aż mikroserwis B zrobi swoje, a w międzyczasie bierze następny rekord z bazy,
  • 4
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

@sprayy: Już sam fakt że dwa mikroserwisy korzystają z tej samej bazy danych sugeruje że być może problem jest już na poziomie designu. Tak przynajmniej wynika ze schematu. To z kolei sugeruje że być może w rzeczywistości nie macie mikroserwisów, a rozproszony monolit. Nie pisze tego żeby się czepiać, tylko być może rzuci to Wam inne światło na ten problem.

Co do rozwiązania, to moim zdaniem opcje są dwie:
a)
  • Odpowiedz
@zajety_login: nie ma my, jestem tylko ja ;)
dwa mikroserwisy korzystają z tej samej bazy danych żeby nie rzucać do kolejki całego payload'u tylko ID i one będą sobie same pobierać payload do transformacji z bazy.

Na schemacie nie dodałem strzałki między DB a C. On też dostanie z kolejki tylko ID, pobierze payload i wyśle. Przynajmniej tak założyłem ;)

a) nie chciałbym scalać, żeby w paragrafie 'plany na przyszłość' móc napisać, że
  • Odpowiedz
Spring Boot Actuator to narzędzie które pozwala nam na monitorowanie naszej aplikacji napisanej w #spring.
Dzisiaj w #od0dopentestera nieco inne spojrzenie na ten mechanizm.

W standardowej konfiguracji z poziomu interfejsu webowego dostępne są endpointy health oraz info.
Wygodny programista może jednak użyć gwiazdki - aby udostępnić na stronie wszystkie funkcjonalności.
Pod niektórymi adresami możemy odnaleźć
KacperSzurek - Spring Boot Actuator to narzędzie które pozwala nam na monitorowanie n...
  • 10
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

@walic_nowy_odtwarzacz: Spring Boot ma wbudowany serwer więc nie trzeba kombinować z tomcatami i innymi syfami które potrafią się wywalić na starcie. To po prostu działa. Konfiguracja też jest o wiele prostsza. Po to właśnie powstał Spring boot. Spring to bardzo przyjemny framework i da się na nim zbudować potężne aplikacje. To czy jest toporny zostawiam bardziej doświadczonym kolegom, ja nie narzekam
  • Odpowiedz
Cześć, moglibyście polecić jakiś fajny kurs #spring , który jest w miarę nowy i wartościowy (może być po angielsku) ?
Polecony mi został kurs Artura Owczarka https://www.youtube.com/playlist?list=PLU2dl_1LV_SQXD1_HHpKb-KRd4w1r6yzk
Jest tylko taki problem, że ten kurs jest z 2014 i opiera się na konfiguracji w XML (przynajmniej na początku), a już nawet STS 4 go chyba nie wspiera. No i wykopowi #programista15k pisali, że też się tego nie używa już
  • 6
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

@szalony_kefir: To jest w miarę dobre: Spring Framework 5: Beginner to Guru
https://www.udemy.com/share/10011mAEYScFZbTX4=/

Z minusów to typ ma słabą dykcję i nie robi za bardzo przerw ale bez problemu da się go zrozumieć.
Z plusów to ciągle aktualizuje kurs, więc jeśli w za jakiś czas wyjdzie spring 6, to zrobi update i będziesz mógł podejrzeć w nim co się zmieniło i nauczyć się nowych rzeczy..

EDIT: kurs ma prawie 50
  • Odpowiedz
Jak w springu najlepiej zabezpieczyć aplikacje webow'a aby każdy user mógł wykonywać tylko swoje akcje np. edytować/usuwać tylko swoje posty? Czy można do tego jakoś użyc spring security czy raczej nie?
#programowanie #java #spring
  • 14
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

Problem z filtrami mam w springu.

Zdefiniowałem sobie filtr na ścieżkę /login, który służy do generowania tokenu. Wcześniej w HttpSecurity ustawiłem, że każdy może pod /login wykonać posta (w celu przesłania danych logowania). Tylko, że jak wysyłam posta to filtr się nie odpala, a jak geta to się odpala. O co chodzi xD

Kod

https://pastebin.com/Yvu8JYdZ
  • 3
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

@Bruno_: @marcinkovvsky: Problem był w tym, że w configu HttpSecuirty nie był wyłączony csrf

http.csrf().diable().cors()
W przypadku restowego api nie ma to znaczenia, atak csrf działa w oparciu o przesyłane ciasteczka a ja tego nie robię i ogólnie w przypadku resta nie powinno się tego robić bo jest bezstanowy
  • Odpowiedz
#spring #java Jak poprawnie napisać własną metodę toString() ? odnosząc się do mojego pytania na stacku i odpowiedzi do niego , próbowałem coś w stylu " return this.getName()+"," this.Kolejnawartość" .
W skrócie, mam rekurencję w kodzie, toString klasy Animals nie może wyświetlić toString Tags i tak w kółko. Jakieś sugestie ?
  • 15
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

@lukaszwasyl: To nie problem z toStringiem czy hashCodem, tylko problem z mapowaniem encji jakie masz. Nie tworzysz DTO i zwracasz sobie na front encję która ma bezpośrednio inną encję, która ma twoją encję. Infinite recursive loop.
3 wyjścia.
Jeśli wystawiałbyś restowe API to możesz użyć adnotacji @JsonManagedReference i @JsonBackReference, błąd nie wystąpi.
Możesz stworzyć poprawny model i używać DTO.
Możesz stworzyć relację unidirectional, w tym momencie ci
  • Odpowiedz
Mirki od #java #programowanie - mam firmowego laptopa, wszystko się tam zgadza (16gb ram, SSD) poza prockiem - i5 ale jakiejś nowszej jeśli nie najnowszej generacji, no i system się nie zgadza - Windows 10, ale do tej pory nie miałem żadnego powodu do narzekań.

Co robię - tworzę sobie prostą paczkę ze #springboot (webappka z małą ilością komponentów Springa), mam jakiś tam model bazy i
  • 8
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

@sprayy: Ale intellij chyba nie wspiera w pełni Springa w wersji Community? A potrzebuję Ide do pracy zarobkowej. No dobra, firma bogata to może mi kupi xD Ciężko się przestawić po latach pracy w Eclipsie?
  • Odpowiedz
@dziki: nie wspiera to chyba złe słowo bo bez przeszkód zrobisz apke w spring'u. Nie ma kilku bajerów które widzę w Ultimate ale i tak jest lepszy od STS.
Jak przyzwyczaisz się do struktury (chyba tak to najlepiej nazwać) projektów w Intellij to pójdzie Ci z górki. Wg. mnie o niebo lepszy od Eclipse, płynniej działa i jest bardziej intuicyjny.
  • Odpowiedz
#programowanie #spring
Mirasy, zakladajac ze jest jakis serwer ktory udostepnia rest api. Moja aplikacja musi wykonywac bardzo duzo pojedynczych zapytac i w zaleznosci od odpowiedzi ( ktora juz zmapuje na pojo ) podejmowac odpowiednie kroki. Do samego zapytania używacie restTemplate czy w jaki sposób to robicie?
  • 4
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach