Nie mogę znaleźć kurcze żadnej aktualnej informacji. Spring Initalizr jest wbudowany w zwykłej wersji: "Community Edition" w InteliJ, czy nic się nie zmieniło i ciągle jest tylko w Ultimate? (Pytam, bo nie mam wersji Community - tylko właśnie Ultimate), a informację na google'u są trochę wymieszane. Może ktoś z Was korzysta z wersji Community? #intelij #jetbrains #java #spring #springboot #
  • 1
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

Jak piszę apke restową w springu i testuję na jakiejś in-memory bazie h2, ale potem przychodzi w firmie czas releasa apki i zmieniam tą h2 bazę na prawdziwą na devie typu mysql i inną bazę produkcyjną to jak uruchamiać testy integracyjne jak wcześniej korzystałem w oparciu o h2? Uruchamia się testy integracyjne na produkcji w ogóle?
#naukaprogramowania #java #testowanieoprogramowania #spring #programowanie
  • 3
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

Mirki gdzie się trzyma w takiej spring bootowej apce hasła?
Potrzebuję admina login i hasło żeby się testy integracyjne wykonały, gdzie uderzam do rest endpointów i zapisuję coś na bazie. To gdzie mam zapisać to hasło i w jakiej formie?

Jak to będzie wyglądało na środowisko testowym, a jak produkcyjnym?

- Rozumiem, że mam utworzyć sobie pliki application-dev.properties, application-prod.properties i tam np. trzymać credentiale, ale właśnie w jakiej formie, bo jak wrzucę na jakiś firmowy "github" to kazdy będzie widział.
  • 10
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

@takiMirek29: w takim wypadku pozostaje ci podawać takie pojedyncze hasło na poziomie VMki na której będzie to odpalane poprzez dodatkowy zewnętrzny plik konfiguracyjny lub zmienne
  • Odpowiedz
Przy tworzeniu nowego seansu muszę sprawdzić czy poprzedni zakończył się już jeśli ten nowy ma być w tym samym dniu, w podobnym czasie i w tej samej sali co poprzedni. Dodatkowo mam takie wymaganie, że musi być przerwa godzinna między seansami w kinie jeśli odbywają się w tej samej sali. Wiadomo, trzeba taką salę po każdym seansie posprzątać. Np. poprzedni seans rozpoczął się 2023-01-02 o 16:30, w sali nr 3 i trwał
  • 4
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

Jak w springu przetestować metodę saveSomething(ids...) w jakimś {User/Group/Whatever}Service.java, która wykonuje jakąś logikę z warunkiem if-else i potem za pomocą obiektu repository zapisuje obiekt w bazie?

Nie zwracam w tej metodzie nic bo ten obiekt zapisuje w jakiejś większej grupie obiektów, więc zwracanie listy zaktualizowanych obiektów nie ma sensu.

Jedyne co mi przychodzi do głowy to przetestować czy obiekt repository wywołał metodę save w zależności od argumentów metody. Czyli verify(sometService, times(1)).someMethod();

Mówię
  • 7
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

Mireczki projektując rest api w springu, przy mappingu i przy zwracaniu ResponseEntity w metodzie kontrolera oprócz consumes i produces co jeszcze powinno się znaleźć?
1. Location do utworzonego zasobu?
2. UserAgent?
3. Domyślna wartość Pagination? - czy muszę wtedy tworzyć osobne klasy opakowujące metody pobierające produkty z bazy? Czy wystarczy, że tę wartość mogę przekazać jako parametr do metod pobierających produkty z bazy?

Pierwszy raz się tym bawię i chciałbym wiedzieć jaka najlepsza praktyka.
  • 2
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

@famir96: W zależności od tego, co projektujesz, mogą, aczkolwiek nie muszą być dodatkowe wymagania. Nie ma wymagań, to tylko gdybanie. Tak, jakbyś się pytał, jak wybudować biuro, nie podając żadnych informacji o działce, którą dysponujesz czy budżecie.

Ad.1 nie, chyba że robisz coś, co coś zapisuje, tworzy, buduje, generuje. Równie dobrze, możesz przekazać URL, czy ten zasób w odpowiedzi. Chyba że nie możesz, bo w wymaganiach jest, by przekazać nagłówkiem ;)

Ad.2 to klient
  • Odpowiedz
Jak mam dwie klasy Entity powiązane ze sobą dwukierunkową relacją ManyToMany np. User i Discount to dobrym pomysłem będzie dorobienie pola w klasie User: Map?

Potrzebuję wiedzieć czy jest aktywna zniżka czy nie. A jak zmienię pole isActivated w bazie na dowolnym obiekcie Discount to będzie to zmiana widoczna dla wszystkich użytkowników, którzy korzystają z tej zniżki, a ja chcę tylko dla jednego usera. ( ͡° ʖ̯ ͡°)
takiMirek29 - Jak mam dwie klasy Entity powiązane ze sobą dwukierunkową relacją ManyT...

źródło: comment_1672406366yzXDsx5yplhxx5HKFEldfe.jpg

Pobierz
  • 9
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

Jak tworzę POST method w rescie i dodaję użytkownika to typ zwracanego obiektu to ResponseEntity
return ResponseEntity.status(HttpStatus.CREATED).body(createdUser);

Jaki typ ma być jeśli usuwam usera? ResponseEntity ?
Zwracam tylko status czyli return ResponseEntity.status(HttpStatus.NO_CONTENT).build();
#java #naukaprogramowania #spring
  • 2
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

#programowanie #hibernate #spring

Czego teraz się używa do generowania Entity z istniejącej bazy danych?

Widzę na stacku są jakieś odpowiedzi z 2013 roku o hibernate3-maven-plugin, hibernate-tools-maven-plugin itp.
A coś do nowego JPA/Hibernate?
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

Mam problem z cykliczną zależnością referencji w hibernate tzn. przykładowo mamy dwie klasy autor (posiada pole set), z adnotacja manyToMany i przy pobieraniu jakiegos autora wywala blad bo przez metode toString mamy cykliczna zaleznosc. Dalem jsonignore na te pola, ale co mi z tego jak ja chce zwrocic pelen obiekt razem z tymi polami. Jak to zrobic?

amatorski picrel
#java #hibernate #spring #naukaprogramowania
nick230 - Mam problem z cykliczną zależnością referencji w hibernate tzn. przykładowo...

źródło: comment_16723132476Py2lH6WOTAGD1yafCfdLH.jpg

Pobierz
  • 19
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

Jak to zrobic?


@nick230: W toString() autora nie wypisuj jego książek a jak już musisz to nie rób tego przy użyciu toString() tylko pola które Cię interesują. O ile faktycznie masz problem z toString().
  • Odpowiedz
@nick230: W toString powinny być tylko i wyłącznie pola należące do tej encji, bez dociągania zależności z innych. Pchasz się w N+1.... Nie panujesz nad wykonywanym zapytaniem. Włącz wypisywanie zapytań hibernate w konfiguracji springa.
  • Odpowiedz
via Wykop Mobilny (Android)
  • 0
@SendMeAnAngel: tak średnio. Z samym kodem mało ale kilka problemów z importami które nie działają za dobrze razem. Wiremock z Java 17 czy jooq z micrometerem
  • Odpowiedz
Mirki z #programista15k , wiem że "rychło w czas", ale mam budżet szkoleniowy do wydania do końca roku, a czasu na szkolenia brakuje ¯\_(ツ)_/¯ ... Podrzucicie mi, proszę, jakieś sensowne kursy, np. na #udemy (ale niekoniecznie), z tematów w stylu:
- zaawansowane rzeczy w #java
- zaawansowane rzeczy w #spring
- coś fajnego o JPA / #hibernate / Spring Data itd
-
  • 7
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

Jest sens używać WebClient, jeśli aplikacja stoi na servlecie i wszystkie inne operacje (np. na bazie) są blokujące? Kiedyś może i tak trzeba będzie przepisać wszystko na Reactive. Na początku klient chciał gRPC, ale ze względu na brak wsparcia zmienił na REST.

Generalnie to jeśli apka stoi na servlecie, to operacje są blokujące i raczej nie ma znaczenia, czy obsługą zapytań do zewnętrznych usług zajmie się WebClient, czy RestTemplate, czy nawet natywny HttpClient. Tak mi się przynajmniej wydaje, ale może czegoś nie zauważam.

Użytkownik uderza pod adres ---> Tomcat ---> Spring ---> WebClient ---> block() bo wątek musi dostać odpowiedź.

I
  • 7
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

@SendMeAnAngel: sens używania jest taki, że Spring team sam oficjalnie mówi, że RestTemplate jest w maintenance mode i nie będą wspiera tego dalej (ostatecznie, w którejś wersji będzie już jako deprecated) i w tym momencie zalecanym jest używanie WebClienta zarówno w aplikacjach reaktywnych i niereaktywnych. Różnica jest tylko taka, że w przypadku aplikacji niereaktywnych webclient zachowa się identycznie jak resttemplate w przypadku .block().
  • Odpowiedz
Przypominam, że dziś o godzinie 19:00 spotykamy się na szkoleniu Live z Kubernetesem! W trakcie tego spotkania będziemy tworzyć deployment obiektów oraz wdrażać aplikację Spring Boot połączoną z bazą danych MySQL do klastra Kubernetesowego.

Niestety, dzisiejszy LiveStream będzie dość krótki, ponieważ OpenAI zrealizuje dużo roboty za nas - pokażę Ci jak to osiągnąć Dlatego tym bardziej zachęcam, bo nauczymy się dużo nowych rzeczy, a po szkoleniu każdy będzie w stanie wdrożyć swoje
SoftBull - Przypominam, że dziś o godzinie 19:00 spotykamy się na szkoleniu Live z Ku...
  • 6
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

@SoftBull: odpaliłem na chwilę to Twoje "szkolenie", nigdy wcześniej Cię nie oglądałem i nie wiem jak wygląda reszta Twojej działalności, ale to "szkolenie" z Kubernetesa w Twoim wykonaniu było moim zdaniem tragiczne.

Dlaczego szkolisz ludzi z czegoś, czego sam do końca nie rozumiesz?
Może to też kwestia stresu, bo widać że Cię stres zjadł jak CLI zaczęło Ci sypać błędami, ale w ciągu mniej niż 30
minut spokojnie można było wyłapać,
  • Odpowiedz
@SoftBull: byłem praktycznie do końca. Nie uszczegółowiłeś żadnego z wymienionych przeze mnie punktów, a jeżeli już jakiś z nich się pojawił to albo temat był poruszony bardzo pobieżnie, albo był przedstawiony w błędny sposób.
Pod koniec pojawiły się także smaczki typu "jeden Deployment z trzema ReplicaSet'ami", czy "Mam swoją domenę i nie ma portu, a strona działa". No działa, ale dlatego że port jest domyślny i jest podawany w sposób
  • Odpowiedz
Cześć Mireczki, mam pytanie odnośnie aplikacji w javie, którą tworzę. Mam wprowadzone spring security, mimo wielu przejrzanych tutoriali nie mogę poradzić sobie z implementacją ról i ustawieniami dostępu. Czy moglibyście spojrzeć na kod i pomóc? Czego mi brakuje? Podpowie ktoś?

Link do src: https://github.com/kaszaaa/ReimbApp/tree/main/src/main/java/com/revature

#programowanie #java #springboot #spring
  • 13
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach