Tworzę aplikację internetową w Spring. Jeden z moich projektów:
https://github.com/JonkiPro/REST-Web-Services.
Chcę zacząć nowy projekt, ale mam kilka pytań.
1. Ostatnio użyłem w swoim projekcie AngularJS do pobierania danych z RESTowych metod Springa. Wszystko jest OK. Działą bez problemu, jednak jest mały haczyk. Sprawa tyczy się wyświetlania danych z Angulara za pomocą '{{variable}}'. Chodzi o to, że podczas ładowania strony internetowej na ułamek sekundy zawsze wyświetlają się ten zmienne Angulara razem z nawiasami. Nie powoduje to żadnych błędów, ale psuje to estetykę. Czy coś załaduje do tej zmiennej, czy warunkowo to zniknie, to i tak na ten ułamek sekundy jest to pokazane. Można to jakoś ukryć, czy mu si to tak być?
2. Zawsze używałem w swoich projektach bazy MySQL. Teraz chciałbym spróbować czegoś nowego. Jaką polecacie szybką bazę danych SQL? Najlepiej darmową. PostgreSQL nadaje się?
3. Zawsze robiłem walidację wprowadzanych danych na poziomie encji(adnotacje) lub jakichś warunków w kontrolerze. Zastanawiam się, czy zastosować również walidację na poziomie logiki biznesowej w serwisach. Bez sensu jest, aby serwisy służyły tylko do pobierania danych z bazy. Wydaje mi się, że również dobrym pomysłem jest zastosowanie walidacji również w serwisie. Jednak nie wiem, czy nie będzie to trochę obciążające, walidacja w encjach, kontrolerach i serwisach.
4. Macie jakieś porady w stosunku do mojego obecnego kodu projektu? Coś należałoby zmienić w przyszłym projekcie, aby nie powielać błędów?