2010-07-25 8 views
8

Mam pewien dziwny problem i naprawdę mnie to frustruje. Mam listę fasoli samochodów w żądaniu atrybutu -Uzyskiwanie przecinka wewnątrz wartości długiego typu na stronie freemarkera

List<Car> cars = myservice.getCars(); 
request.setAttribute("cars", cars); 

Kiedy drukować identyfikatory Car (typ długi), to daje mi prawidłową wartość -

for(Car car: cars) { 
System.out.println(car.id); 
} 
// It gives me - 11231, 11245, 11253 

Ale gdy próbuję uzyskać ten sam na freemarker strona resutl.ftl, dając mi jej wartości jako -

11,231 
11,245 
11,253 

Kod jest -

<#list cars as car> 
<span>Car Id:</span>${car.id} 
<#list> 

Odpowiedz

20

Formatowanie liczb wydaje się być zależne od ustawień narodowych. Ten wpis FAQ wydaje się dać poprawkę:

http://freemarker.sourceforge.net/docs/app_faq.html#faq_number_grouping

z tej strony (i to sam stronę, nigdy nie słyszałem o Freemarker przed pytaniem), wydaje się, że może to zrobić, co chcesz:

<span>Car Id:</span>${car.id?c} 

Można również dostosować ustawienia regionalne lub format liczb, aby uzyskać coś, czego można się spodziewać. Dokładnie, jak to zrobić, jest opisane w powyższym linku.

Powiązane problemy