Ograniczenie wyświetlania zawartości pola bazy

Ograniczenie wyświetlania zawartości pola bazy
KM
  • Rejestracja: dni
  • Ostatnio: dni
  • Lokalizacja: Łomża
  • Postów: 34
0

Cześć, mam prośbę zaczynam programować w javie ee przy pomocy Spring Boot i chcę zrobić coś takiego, poniższa metoda pobiera wszystkie dane z tabeli i przekazuje wynik do strony html i na stronie wychodzi mi całkiem łądna tabelka z danymi z bazy danych, ale jest jeden problem. Mam w bazie danych dwa pola z dużą ilością tekstu i bym chciał żeby przy pobieraniu danych z bazy do tabelki na stronie trafiało np: pierwsze 20 liter + napis "Więcej >>" będący linkiem do strony gdzie będzie ten wpis z cała prezentacją tych pól. Tak wygląda moja metoda:

Kopiuj
        public List<Task> getList() {
            Query query = entityManager.createQuery("FROM Task t");
            List<Task> resultList = (List<Task>) query.getResultList();
            return resultList;
        }

Pomożecie mi ?

W0
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 3755
0

Masz do wyboru dwie opcje:

  1. Albo ograniczać po stronie front-endu.
  2. Albo przygotować odpowiednią listę już po stronie back-endu, tzn. wysyłasz listę: ID (link/parametr) + tekst (skrócony jeśli trzeba).

W przypadku pierwszym to zależy od technologii jakiej piszesz front-end.

W przypadku drugim masz dwie metody, które ciebie interesują:

Kopiuj
String s = "abcdefghij";
int len = s.length(); 
System.out.println("len=" + len); // wypisze len=10, bo "abcdefghij" ma 10 znaków 

oraz substring:

Kopiuj
String s = "abcdefghij";
String s2 = s.substring(0, 3); 

System.out.println("s2=" + s2); // wypisze "s2=abc"
PW
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 159
0

Mozesz zrobic dwa stringi, jeden "pelny", drugi skrocony. I w frontendzie sprawdzasz stringa, jezeli jego dlugosc jest wieksza niz 20 to pobierasz drugiego stringa i dodajesz button z odnośnikiem.

Zarejestruj się i dołącz do największej społeczności programistów w Polsce.

Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.