Spring – utilisation des champs finaux statiques (constantes) pour l’initialisation du bean

est-il possible de définir un bean avec l’utilisation des champs finaux statiques de la classe CoreProtocolPNames comme ceci:


     

 public interface CoreProtocolPNames { public static final Ssortingng PROTOCOL_VERSION = "http.protocol.version"; public static final Ssortingng HTTP_ELEMENT_CHARSET = "http.protocol.element-charset"; } 

Si c’est possible, quelle est la meilleure façon de le faire?

Quelque chose comme ça (Printemps 2.5)

      

Où espace de noms util est de xmlns:util="http://www.springframework.org/schema/util"

Mais pour Spring 3, il serait plus @Value d’utiliser l’annotation @Value et le langage d’expression. Qui ressemble à ceci:

 public class Bar { @Value("T(java.lang.Integer).MAX_VALUE") private Integer myValue; } 

Ou, en alternative, en utilisant Spring EL directement en XML:

  

Cela présente l’avantage supplémentaire de travailler avec la configuration de l’espace de noms:

  

N’oubliez pas de spécifier l’emplacement du schéma.

    

Un autre exemple à append pour l’instance ci-dessus. Voici comment vous pouvez utiliser une constante statique dans un bean en utilisant Spring.

      
 package org.example; public class Bar { public static Ssortingng myValue = "SOME_CONSTANT"; } package someorg.example; public class Foo { Ssortingng someOrgValue; foo(Ssortingng value){ this.someOrgValue = value; } }