Mis colegas muy a menudo el uso de la palabra «contexto de aplicación». En muchos artículos de esta colocación se utiliza muy a menudo demasiado.

Mi comprensión actual: en el contexto de aplicación es de un solo archivo xml.

Pero entiendo que si yo estaba en lo correcto, la gente no los uso «contexto de aplicación» en lugar de archivo de configuración xml.

Me pueden ayudar a lidiar con este problema?

  • No tengo oportunidad de hacerlo
  • Creo que homeAccount entendí demasiado bien. Por qué no responder a la pregunta, más bien apareciendo una nueva?
InformationsquelleAutor homeAccount | 2013-10-27

2 Comentarios

  1. 25

    @feak da una respuesta clara sobre el significado de ApplicationContext en términos de la Primavera. En definitiva, es un objeto que se carga la configuración (normalmente un archivo XML anotación) y, a continuación, la Primavera va a iniciar la gestión de los granos y sus beneficios:

    • Frijoles declarado en el paquete
    • Frijoles declarado por anotaciones
    • Constructor y el método autowiring
    • Bean inyección
    • Configuración .propiedades y .yaml de carga
    • etc

    Para iniciar el contexto de una aplicación, puede utilizar uno de los siguientes:

    • Cargar manualmente el contexto de aplicación en el comienzo de su aplicación. Esto se hace para la muestra con fines o en aplicaciones independientes:

      public class Foo {
          public static void main(String[] args) {
              ApplicationContext context =
                  new ClassPathXmlApplicationContext("path/to/applicationContext.xml");
              //use the context as you wish...
          }
      }
    • En el caso de aplicaciones web Java con Spring MVC, la DispatchServlet se carga el contexto de la aplicación para usted, así que usted sólo tiene que crear un springapp-servlet.xml archivo en WEB-INF de la carpeta de la aplicación.

    Nota que el contexto de una aplicación está asociada a una única configuración (basado en XML o no). Período.


    Después de entender esto, también se podría entender que se puede tener más de un solo contexto de aplicación por aplicación. Esto es, el hecho de tener dos o más ApplicationContexts en la misma aplicación. Desde el último ejemplo en la aplicación de consola, esto es fácil de comprobar:

    public class Foo {
        public static void main(String[] args) {
            ApplicationContext context =
                new ClassPathXmlApplicationContext("path/to/applicationContext.xml");
            ApplicationContext context2 =
                new ClassPathXmlApplicationContext("path/to/applicationContext.xml");
            //use the context as you wish...
        }
    }

    Tenga en cuenta que tenemos dos contextos de aplicación utilizando la misma configuración XML. Puede usted hacer esto? Sí, en realidad se está viendo aquí. ¿Cuál es la diferencia, entonces? El principal diferencia es que la Primavera frijoles singleton ámbitos singleton por el contexto de aplicación, esto significa que al recuperar un Bar bean, que se configura en applicationContext.xml archivo de context no será el mismo como la recuperación de context2, pero varios recupera de context devolverá la misma Bar bean instancia.

    Es esta considerado como una buena o mala práctica? Ni, dependerá del problema a ser resuelto (en el caso del último ejemplo, yo diría que es un mal la práctica). La mayoría de la gente recomienda que todos tus frijoles configurada en un solo lugar (a través de XML o de otro) y cargado por un único contexto de la aplicación.

    • Puede usted explicar las diferencias individuales en el contexto de aplicación y de un solo archivo xml
    • lo que no entiendes? El archivo XML que define la configuración, el contexto de aplicación de la carga de la configuración de este archivo y la Primavera de empezar a manipular su definidos los frijoles.
    • Un contexto puede utiliza muchos archivos xml. Cómo? No entiendo cuando yo uso muchos contextos y cuando uso solo contexto
    • ¿Cómo puedo entender a los que contexto esta xml preocupaciones?
    • respuesta actualizada. Espero que resuelve sus inquietudes.
    • es útil, pero tengo más preguntas. ¿Qué acerca de las diferencias ApplicationContext y WebApplicationContext ?
    • usted debe usar su favorito SEO (por ejemplo, google) para la búsqueda de este. Como se puede leer en WebApplicationContext javadoc, se trata de una interfaz que se extiende desde ApplicationContext y se utiliza en aplicaciones web internamente por DispatchServlet.
    • la última pregunta por favor. todos los granos de ApplicationContext existen en WebApplicationContext?
    • hacer una prueba y obtener su respuesta…
    • No estoy seguro de que puedo revisar todos los casos
    • si usted entiende lo que es el contexto de aplicación y de entender que el contexto de aplicación web es sólo el contexto de una aplicación para una aplicación web, entonces te darías cuenta de que todos los granos en el contexto de la aplicación existe en el contexto de aplicación web así (suponiendo que la carga de la configuración de la misma fuente). Cómo probar esto? Crear una sencilla configuración XML, crear dos proyectos, una consola y una web de java, utilizar la misma configuración para ambos (siguiendo las reglas respectivas), luego de la prueba de la existencia de los granos en cada uno.

  2. 1

    Supongo que usted colegas significó la carga de la primavera en el contexto de aplicación, que permite el acceso a:

    • de configuración de la aplicación,
    • inicializado frijoles,
    • aplicación api de eventos,
    • etc
    • el que las diferencias entre el archivo xml y el «contexto de aplicación»
    • En el contexto de aplicación y la primavera archivo xml es diferente términos. Un contexto de aplicación se puede inicializar el uso de una, dos y más archivos xml. También, para la inicialización de la aplicación de contexto puede ser utilizado /@de Configuración de clases sin los archivos xml. Por lo tanto, quiero decir que xml y /@de Configuración de su enfoque para configurar contexto.
    • ok. ¿Qué significa cuando escucho «contextos diferentes» ?
    • La aplicación puede tener varios contextos de aplicación. Cada contexto tiene ciertos ajustes. hay tareas que requieren un enfoque(varios contextos).

Dejar respuesta

Please enter your comment!
Please enter your name here