Comment utiliser par programme du Printemps JdbcTemplate?

Nous utilisons du Printemps JdbcTemplate qui est configuré par le biais de Printemps config comme illustré ci-dessous. Est-il un moyen de le faire sans l'injection de la source de données? Je voudrais juste créer le JdbcTemplate instance par programme et "initalize" la source de données à l'aide de TheOracleDS.

Notre config actuelle:

Classe Java

private JdbcTemplate jdbcTemplate;

@Resource(name = "myDataSource")
public void setDataSource(DataSource dataSource) {
     this.jdbcTemplate = new JdbcTemplate(dataSource);
}

Printemps config

<jee:jndi-lookup id="myDataSource" jndi-name="java:/TheOracleDS"/>

Source de données Oracle config

<xa-datasource>
      <jndi-name>TheOracleDS</jndi-name>
      ...
</xa-datasource>

Mise à jour: Pourquoi je vous pose cette question c'est que je ne suis pas un total croyant en l'injection de dépendances /avoir le Printemps de gérer les haricots..

  • La vraie question est: pourquoi est-injection pas souhaitable ici? Qu'est-ce que le fais de la façon dont vous êtes en proposant l'achat vous?
  • Je suis allé la non-injection de route avant avec Spring JDBC, mais seulement pour l'utilité des classes où je tiens juste à exécuter une méthode main pour vérifier quelque chose dans la base de données. Dans ce cas, l'écriture d'un fichier XML et de la recherche il ne semble un peu exagéré. Cependant, une fois que JNDI est dans le mélange, il semble comme il n'est pas vraiment un cas à éviter l'utilisation de l'injection.
InformationsquelleAutor Marcus Leon | 2009-11-22