Czy wiesz, że czytając tego posta stoisz o krok od uruchomienia Twojej pierwszej sieci mikrousług?

Właśnie TERAZ możesz uzyskać dostęp do mojego szkolenia z tworzenia mikrousług z użyciem Spring Cloud w baaardzo obniżonej cenie Szkolenie cieszy się taką popularnością, że już przygotowałem następne w tym temacie, bardziej zaawansowane

Nie daj się zostawić z tyłu i łap okazję, dopóki jest taka cieplutka i kusząca Czyli do piątku wieczorem
Pierwszą cześć szkolenia - w
SoftBull - Czy wiesz, że czytając tego posta stoisz o krok od uruchomienia Twojej pie...
  • 3
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

Hej Mirasy! Zastanawiam się nad "rodzajami" obiektów głównie w #java #spring ale i znanymi pewnie w całym świecie #programowanie. Jakie są jeszcze rodzaje obiektów kiedy i jak stosować a kiedy jest to niedopuszczalne. Proste rzeczy nie wymagają aż takiego zaangażowania ale jak system się rozrasta zaczyna być miszmasz.

...Controller - do obsługi żądań,
...Service - do zaimplementowania logiki biznesowej,
...Repository - do komunikacji z bazą danych
  • 9
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

Component - do jakiś pierdołek


@JacobTheLiar: wszystko powyżej to też są komponenty, tylko bardziej specyficzne.

(model) - gdzie w sumie jest to obiekt reprezentujący encję bazy danych (Java Bean)


@JacobTheLiar: to nie jest poprawne założenie - model nie musi mieć nic wspólnego ze strukturą obiektów bazodanowych.
  • Odpowiedz
@JacobTheLiar: jak widzę interfejs z tylko jedną implementacją w aplikacji biznesowej (nie mówię o bibliotece) to na 99.99% to nadużycie. Kiedyś może to miało sens, dzisiaj wyekstrachowanie interfejsu z klasy to jeden skrót klawiszowy.
  • Odpowiedz
Nieraz spotkałem się z opinią, że zarobki w Norwegii są fantastyczne
Poniekąd tak jest, ale uwzględniając koszty życia, podatki, nowe ustawy, które wchodzą w 2020, nie jest już tak kolorowo.
Dlatego, aby każdemu uprościć sprawę i odpowiedzieć na pytania - Ile zarabia programista w Norwegii? Ile wydaje się tam na życie? - napisałem artykuł, gdzie podliczyłem i porównałem koszty życia z przelewami na konto. Przyznam, że niektóre wydatki w Norwegii mnie
SoftBull - Nieraz spotkałem się z opinią, że zarobki w Norwegii są fantastyczne 
Pon...

źródło: comment_1607251382EckMITDvfN26BwBdOkuxox.jpg

Pobierz
  • 21
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

@Patres: Świetnie tylko moje pola w DTO nazywają się kompletnie inaczej niż encje. To samo z kolekcjami. Użyłem MapStruct(nullvaluepropertystrategy.ignore) i w sumie rozwiązuje moj problem.
  • Odpowiedz
Mirkasy,
jakie jest prawidłowe podejście do zapisu encji w Spring Data.

final User user = UserMapper.mapFrom(UserDto);
final savedUser = userRepository.save(user);
savedUser.getAddresses().forEach(address -> address.setUser(savedUser));
  • 6
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

Ho ho ( ͡° ͜ʖ ͡° )*:
W powietrzu czuć już nastrojowy powiew nowego szkolenia na temat Tworzenia mikrousług ze Spring Cloud
Tym razem dla wszystkich chętnych szykuję potężną dawkę praktycznej wiedzy na temat:
-
SoftBull - Ho ho ( ͡° ͜ʖ ͡° )つ──☆*:・゚
W powietrzu czuć już nastrojowy powiew nowego ...
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

Hej Mirki #java #intllij #spring, coś się popsuło z nową aktualizacją IntelliJ 2020.3 bo nie mogę zbudować projektu, który dosłownie chwile wcześniej (przed aktualizacją) po kliknięcium w Build Project się budował. Na drugiej maszynie gdzie nie zaktualizowałem mogę budować projekt.

Wygląda na to, że podczas budowania projektu 'zapomina' pobudować konstruktory, getery, settery i inne z lomboka.
Czy nie pojawiła się jakaś nowa opcja do zakliknięcia?
  • 13
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

  • 2
@Andrzejuniedenerwuj

-ze Springa na 100% będzie pytanie ze Spring scopes jakie są i jaki jest domyślny
-dependency injection
-zeprojektowanie crud REST czyli powiedzenie jakich metod http byś użył i jakie będą miały nazwy i co będą zwracać
-jakie znasz wzorce projektowe i wytłumaczenie jednego z
  • Odpowiedz
Mireczki mam taki problem:
W Quartzie mam job'y X i Y. Uruchamiam i wszystko ładnie śmiga. Zaszła jednak konieczność usunięcia job'a Y. No i tu pojawia się problem bo quartz dalej próbuje uruchomić usunięty job. Informacje o jobach quartz przechowuje sobie w bazie i z tego co widzę wpis z usuniętym jobem dalej tam istnieje. Czy w API quartza istnieje jakaś właściwość true/false która wymuszała by odświeżenie tabel quatrz'a przy uruchomieniu aplikacji?
  • 2
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

Spring: Jakiej adnotacji użyć w klasie żeby używając @RestController nie było widocznego pola jak się wchodzi do api? Znalazłem, że można dać @JsonIgnore i dałem, ale jak sama nazwa wskazuje jak przy żądaniu dam w nagłówku accept - application/xml to przy pobieraniu xmla mi się to pole wyświetla, tylko przy jsonie się nie wyświetla. Co zrobić żeby się nie wyświetlało w ogóle nie rezygnując z możliwości pobierania danych w xml?
  • 1
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

Czy to ja jestem jakimś paranoikiem dla którego to jest Exception Driven Development, czy to normalne, że w każdym tutorialu jaki widziałem akceptowalnym i zalecanym podejściem jest wywalanie wyjątkami w serwisie/kontrolerze jeśli cokolwiek nie jest zgodne z naszymi oczekiwaniami (np. przy rejestracji użytkownik istnieje) i handlowanie tego w @ControllerAdvice? Z początku chciałem zwracać w kontrolerze w zależności od wartości Optionala, ale wolałbym dostosować się do konwencji.
#java #
  • 3
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

@RobieInteres: to zależy co biznesowo ma się z tym dziać. Jeśli błędu nie obsługujemy w żaden sposób w naszym serwisie, po prostu ma zostać zwrócony do klienta, to jest to najlepsza metoda. Rzucić wyjątek, zmapować go na sztywny format błędu (zawsze ten sam) i zwrócić.
  • Odpowiedz
via Wykop Mobilny (Android)
  • 0
@MrFisherman: Stwórz klasę rozszerzającą Usera, do której wrzucisz wszystkie dodatkowe dane i instancje tej klasy zwracaj w swoim UserDetailsService
  • Odpowiedz
Mireczki potrzebuję zmapować wynik @NamedNativeQuery na klasyczne POJO (nie entity).
Mój ból polega na tym, że w projekcie mam jpa 2.0 a @ConstructorResult pojawił się dopiero w 2.1 ()

Kojarzycie jak to zrobić inaczej?
Nie chcę mapować na entity bo musiałbym niepotrzebnie dorzucać tabele do bazy a potrzebuję tych wyników jako obiekt jedynie w trakcie działania aplikacji, bez persystencji.

#programowanie #programista15k #
  • 1
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

hej Mirki od #spring #java, podpowiedzcie mi jak organizować relacje między klasami repozytorium -> serwis -> kontroler.

Pisząc kodzik zauważyłem, że stosuję różne wariacje i się zastanawiam nad tym, które jest bardziej prawilne. Ogólnie staram się stosować zasady SOLID i wychodzi najczęściej opcja 3 ale i stosuję również opcję 2 gdzie chowam metody za interfejsem.

Co o tym sądzicie, jaką metodologię stosujecie, może jeszcze jakąś inną?
JacobTheLiar - hej Mirki od #spring #java, podpowiedzcie mi jak organizować relacje m...

źródło: comment_1605774380Ljyk8JwpWPCZETU6LGydx6.jpg

Pobierz

która metoda relacji klas w #spring jest najbardziej prawilna

  • opcja 1 28.0% (7)
  • opcja 2 52.0% (13)
  • opcja 3 12.0% (3)
  • inna opcja - opisz w komentarzu 8.0% (2)

Oddanych głosów: 25

  • 6
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

Generalnie to opcja 2, ale opcja 1 też przejdzie jeśli serwis ma mieć dostęp do bardziej niskopoziomowych danych nie "przefiltrowanych" przez ich odpowiedni serwis.
  • Odpowiedz
@JacobTheLiar: Najczesciej robi sie chyba opcje 2, ale ma te wade, ze trzeba czasem forwardowac metody z repo dla innych serwisow tylko po to, zeby zachowac ten schemat. Generalnie serwisy moga szybciej puchnac w takim podejsciu i trudniej je pozniej zrefaktoryzowac np. na 2 serwisy. Latwiej tez o cykliczne zaleznosci. Osobiscie wole opcje 1 z malymi serwisami, ktore skupiaja sie na jednym przypadku biznesowym i ewentualnie "superserwisem" pomiedzy controllerem a
  • Odpowiedz
@jaszczur13: Tak, masz rację. Nie wiedziałem o tym, jakoś przeoczyłem tę informację. Z tym wypadnięciem to nie tak szybko. RestTemplate nie jest jeszcze oznaczony w źródłach @Deprecated. Jest tylko info, że jest teraz w fazie utrzymania (co oznacza tylko bugfixing), więc zanim wyleci ze Springa to trochę czasu mini. Ale zgadzam się, jest już przestarzały ;) Planuję też nagrać coś o WebClient i przetwarzaniu asynchronicznym. Zobaczymy jak to
  • Odpowiedz
Mam se taką oto linijkę w klasie Building:

@JsonBackReference
@OneToMany(cascade = CascadeType.MERGE, orphanRemoval = true, fetch = FetchType.LAZY, mappedBy = "building")
private List floorList = new ArrayList<>()

i na odwrót w
  • 6
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

W ramach nauki microserwisow chciałem napisać dwa serwisy które że sobą rozmawiają (wymieniają dane). Jak to się robi w produkcyjnych warunkach, wszystko odbywa się po reście (rest template / webflux) czy może przy użyciu Kafka/rabbit Mq. I jakie są benefity używania kafki zamiast zwykłej komunikacji po http? #java #spring
  • 3
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

@Di4bllo: Obie formy komunikacji są wykorzystywane, a wybór metody jest podyktowany konkretnym przypadkiem użycia - polecam poczytać więcej na temat komunikacji synchronicznej i asynchronicznej (dobrym punktem startowym mogą być następujące wątki: pierwszy oraz drugi).
Ogólnie rzecz biorąc, komunikacja asynchroniczna sprawdzi się tam, gdzie nie ma potrzeby blokowania się w oczekiwaniu na wynik zapytania/requestu lub też czas oczekiwania na wynik jest bardzo długi (tzn. long running operations).
Kolejki są jedną
  • Odpowiedz