2010-11-05 9 views
1

J'ai actuellement du code écrit en utilisant JAVA Spring 2.5.2 et JDBC pour me connecter à la base de données et exécuter des procédures de stockage qui renvoient un ResultSet. Étant donné que toutes les colonnes de la base de données sont définies en tant que char (longueur fixe), les valeurs que je récupère à partir du jeu de résultats contiennent des espaces à la fin.Spring StoredProcedure Résultats de la valeur Resultset

J'étend actuellement la classe org.springframework.jdbc.object.StoredProcedure pour accéder au databse et un simple org.springframework.jdbc.core.SqlReturnResultSet et org.springframework.jdbc.core.RowMapper combinaison itérer sur l'ensemble de résultats.

Y at-il une fonction intégrée dans Spring pour faire cela sans avoir à appeler org.springframework.util.StringUtils.trimWhitespace(String) pour chaque paramètre de chaîne dans le jeu de résultats?

Répondre

1

Je pense qu'il n'y a pas de façon automatisée de le faire puisque vous obtenez le ResultSet brut et qu'il est de votre responsabilité de lire les données et de les convertir comme vous le souhaitez afin de correspondre aux propriétés de votre DAO.

+0

Pour le pire, il n'y a pas de meilleure façon de le faire. J'ai fini par décorer le ResultSet avec une autre implémentation qui diffère tous ses appels de méthode au ResultSet d'origine mais qui effectue également un trim String lorsque la méthode getString est appelée. – Eric