Potrzebuję pracować z długimi ciągami zawierającymi podziały wierszy w Javie. Są one przeznaczone do generowania HTML, ale nie jest to najważniejsze.Praca z długimi łańcuchami (heredocs) w Javie - czytelne podejście?
Wiem, że Java jest kaleką w sposób, w jaki nie ma ona heredocs. Ale istnieją inne mechanizmy, których mógłbym użyć:
1) String konkatenacja (lub StringBuilders), niezbyt czytelna i możliwa do skopiowania.
2) Zapisywanie ciągów w plikach .properties, niezbyt czytelnych, ale o wyższej dokładności.
3) Przechowywanie każdego pliku "heredoc" w osobnym pliku .txt, całkiem czytelnym i możliwym do skopiowania, ale skutkującym hordą plików txt.
silniki 4) Szablon, jak Velocity lub Freemarker - Przesuwa design Java, wymaga wielu operacji map, to byłoby całkiem dobre, ale składnia Velocity i pętla/czy umiejętności nie są tak czytelne jak na przykład te z Smarty
Każdy ma plusy i minusy, chciałbym wybrać 3, ale kierownictwo preferuje 1 z czysto ideologicznych powodów. Chciałbym mieć jakiś standard do pracy z heredocs w Javie, być może biblioteką, która ułatwia sprawę. Byłbym wdzięczny za wszelkie sugestie (z dobrymi argumentami), jak pracować z heredorkami.
Niż
Czy istnieje powód nie można użyć jednego z istniejących narzędzi generacji szablonów/html dla Java? Jest ich wiele: Velocity, FreeMarker itp. –
Giant powiązane wątki tutaj: http://stackoverflow.com/questions/878573/java-multiline-string/5069681#5069681 – scorpiodawg
I kolejny wątek heredoc: http://stackoverflow.com/questions/2678483/simple-direct-heredoc-way-of-constructing-a-html-string-in-java –