Printemps de démarrage de l'initialisation du haricot au démarrage avec les paramètres du constructeur

J'ai besoin d'initialiser le suivant PointQuadTree classe au démarrage à l'aide de Printemps de Démarrage avec les paramètres du constructeur, et de faire l'objet dans l'application. Les paramètres du constructeur de 'minX, maxX, ..." besoin de venir de l'application.fichier de propriétés.

PointQuadTree

public class PointQuadTree<T extends PointQuadTree.Item> {

   private final Bounds mBounds;

   public PointQuadTree(double minX, double maxX, double minY, double maxY) {
      this(new Bounds(minX, maxX, minY, maxY));
   }

   ...

}

Limites

public class Bounds {
   public final double minX;
   public final double minY;

   public final double maxX;
   public final double maxY;

   public final double midX;
   public final double midY;

   public Bounds(double minX, double maxX, double minY, double maxY) {
      this.minX = minX;
      this.minY = minY;
      this.maxX = maxX;
      this.maxY = maxY;

      midX = (minX + maxX) / 2;
      midY = (minY + maxY) / 2;
   }

   ...
}

J'ai essayé de l'annotation PointQuadTree avec @Component, mais il n'y a pas de constructeur sans paramètres. Même si j'ajoute un constructeur sans paramètres Bounds est final, de sorte qu'il ne peut pas être défini après PointQuadTree est initialisé. Aussi Bounds a un constructeur avec paramètres seulement.

Après PointQuadTree est initialisé, j'ai besoin d'elle pour s'asseoir dans la mémoire, et ont besoin d'être en mesure de autowire dans d'autres composants de lire/supprimer/ajouter des éléments. Je n'ai aucune idée de comment faire cela avec le Printemps de Démarrage. Toute aide grandement appréciée.

Je n'ai pas le temps pour une réponse complète, mais l'utilisation JavaConfig pour construire les haricots et un @ConfigurationProperties pour les valeurs.

OriginalL'auteur Jerry | 2015-01-21