2010-12-15 24 views
0

Je passe certaines valeurs à la base de données (SQL Server) ici l'un des champs contient des données de type monétaire déposé .. tandis que je passe des valeurs pour par exemple: 25.21, dans la base de données il stocke 25,2100 Ici ma question était, je avoir à montrer la valeur dans la page comme 25.21 (seulement deux valeurs après le point décimal) je dois enlever les valeurs de précision après deux décimales. pouvez-vous envoyer un code pour cela?comment obtenir certaines valeurs de précision dans Java?

note en java POJO je suis en utilisant BigDecimal à cette propriété

+3

'pouvez-vous envoyer un code pour cela?' Vous n'auriez pas dû écrire ceci –

+0

Quelle page? Serait utile d'avoir plus de détails. –

+0

float maxval = Float.parseFloat (request.getParameter ("maxVal")); obj.setMaxVal (nouveau BigDecimal (minval)); – Naresh

Répondre

0

Je suggère que vous essayez soit DecimalFormat ou String.format ou PrintStream.printf selon ce qui est le plus approprié pour vous. Je suggère également que vous essayez d'accepter plus de réponses. ;)

1

S'il s'agit d'un champ numérique dans la base de données, il ne le stocke pas sous 21,2500. Au lieu de cela - il stocke comme 21.25, mais l'interface que vous utilisez est le formatage pour vous. Dans ce cas, il affiche 4 chiffres après la virgule et un , pour le séparateur décimal. Je suggère que vous fassiez exactement ce que fait votre interface de base de données, formatez les données comme vous en avez besoin.

Voir le JavaDoc for DecimalFormat et le Java tutorial on custom formats pour certains détails.