aprendizagem da Primavera (a, Primavera aplicação básica)

O que é Primavera

A mola é uma inversão leve de controlo (IOC) e a secção de frente (AOP) da armação do contentor.

A vantagem do Spring Framework

1. Fácil de desacoplamento, o desenvolvimento simplificar: Primavera é uma fábrica grande, você pode criar e manter a dependência da Primavera conseguiu obter todos os objetos.

suporte de programação 2. AOP: Spring fornece programação orientada a aspectos, você pode facilmente implementar uma permissão de programa para interceptar, operação de monitoramento e outras funções.

3. Suporte transações declarativas: única através de gerenciamento de configuração para concluir a transação, sem a necessidade de programação manual.

4. Programa de teste fácil: Primavera de apoio JUnit4, você pode facilmente testar o programa por comentário Primavera.

A fácil integração de vários excelente estrutura: a Primavera não exclui uma variedade de excelente estrutura de fonte aberta, que fornece uma variedade de excelente estrutura interna (struts2, hibernate, MyBatis, quartzo, etc.).

6. Reduzir a dificuldade de usar JavaEE API de: Primavera para algum desenvolvimento API JavaEE é muito difícil de usar (JDBC, JavaMail, chamadas remotas, etc.), fornece embalagens e reduzir consideravelmente a dificuldade de usar esses aplicativos da API.

arquitetura primavera

Quadro mola usando uma arquitetura em camadas que compreende uma série de elementos funcionais, os módulos são divididos em cerca de 20, como mostrado:

 

1. Núcleo de recipiente (recipiente de núcleo)

recipiente de núcleo de mola é a base para outros módulos construídos por feijões, Core (módulos do núcleo), Contexto (módulo contexto), Spel (módulos de linguagem de expressão).

(1) Feijões módulo: Fornece BeanFactory, é um padrão de fábrica clássico foi alcançado, Primavera irá gerenciar objetos chamados Bean.

(2) Núcleo Núcleo Módulo: fornece componentes básicos têm a estrutura da mola, incluindo COI e função DI.

módulo de contexto (3) Contexto: com base no núcleo e feijões obtidos com base no módulo, o qual é definido e configurado para aceder a quaisquer objectos multimédia disponíveis. interface de ApplicationContext é o módulo contexto muito foco.

(4) os módulos Spel: consulta e manipular objectos de desenho foi tão potente tempo de execução linguagem de expressão.

2. Módulo Web

Spring Web camada obtida compreende uma teia, servlet, Struts, Portlet montagem.

(1) módulo Web: características fornece integradas têm desenvolvimento básico web, tais como: função de upload de vários arquivos, o uso de Servlet ouvinte também COI inicialização recipiente e aplicação Web contexto.

(2) módulo de Servlet: Primavera Model - View - Controller (MVC) implementar aplicações web.

(3) Suportes módulo: contém a aplicação ter aulas de apoio da mola, têm integrado camada web Struts clássico.

(4) Portlet Módulo: proporciona o uso de MVC implementado em um ambiente de portlet, semelhante às funções do módulo Web-servlet.

3. Data Access / Integração (Data Access / Integração)

camada de acesso / integração de dados inclui um JDBC, ORM, OXM, JMS e Transações módulo.

módulo JDBC (1.): fornece uma camada de abstracção JDBC, reduzindo grandemente a operação do código de banco de dados durante o desenvolvimento.

(2) ORM módulo: Mapeamento de API compreende camada de integração APP, JDO, hibernação e iBatis fornece um popular objeto-relacional.

(3) OXM módulo: ele fornece um mapeamento de suporte objecto / XML atingir JAXB, rícino, utilizando XMLBeans, JiBX e XStream camada de abstracção.

(4) JMS Módulo: refere-se ao serviço de mensagem Java, que contém funções relativas à produção e consumo de informação.

(5) Transações módulo Transação: apoio à programação e gerenciamento de transações declarativa para atingir classe interface especial, e são aplicáveis ​​a todos POJO.

4. Outros Module

(1) AOP módulo: programação orientada para o Aspecto é fornecido, o método permite que o ponto de definição e interceptores de partida, o código separado por função, para reduzir o acoplamento.

(2) Aspectos Módulo: fornece integração AspectJ, é uma programação orientada a aspectos (AOP) framework poderoso e sofisticado.

(3) Instrumentação módulo: fornece suporte para implementação da ferramenta de classe e carregador de classe pode ser usado em um servidor de aplicação específica.

(4) do módulo de teste: _Spring_ suporte de montagem, utilização ou teste _jUnit_ _TestNG_ quadro.

COI recipiente de mola

1. BeanFactory

BeanFactory é a base do tipo de recipiente do COI, o COI oferece um suporte de serviço completo. Feijão BeanFactory é um projeto de gestão, que é o principal responsável por iniciar todos os tipos de feijão, e chamam a sua abordagem de ciclo de vida. Interface BeanFactory tem várias implementações, o mais comum é montar feijão baseado em XML definições do arquivo de configuração. Quando você cria uma instância BeanFactory, você precisa fornecer informações detalhadas de configuração gerenciada por contêiner Spring, tais informações geralmente sob a forma de um arquivo XML para gerenciar a carga de informações a sintaxe de configuração é a seguinte :( Este desenvolvimento do método são raros aqui, como você pode entender)

BeanFactory BeanFactory = novo XmlBeanFactory ( novo FileSystemResource ( "F: /applicationContext.xml"));

2. ApplicationContext

ApplicationContext BeanFactory é sub-Interface, também conhecido como o contexto da aplicação. Ela não só fornece todas as funções de BeanFactory, mas também em uma abordagem mais orientada para o quadro melhora a funcionalidade BeanFactory. Contexto principalmente nas classes de contexto e pacotes usando a relação hierárquica herança, como segue:

(1) MessageSource, proporcionando acesso a mensagem i18n.

(2) o acesso aos recursos, como arquivos e url.

(3) A entrega do evento para atingir a interface ApplicationListener feijão.

(4) o carregamento de uma pluralidade de (hierárquicos) classes de contexto, de tal modo que cada foco em um contexto de um nível de classe especial, tal como a camada de aplicação da teia.

Criar a instância de interface ApplicationContext, geralmente usando dois métodos, como se segue:

(1) ClassPathXmlApplicationContext: informações de contexto de carregamento de classe do arquivo xml caminho definido, como o contexto dos recursos caminho de arquivo de definição de classe.

ApplicationContext applicationContext = new ClassPathXmlApplicationContext ( "applicationContext.xml");

(2) FileSystemXmlApplicationContext: ficheiro XML a partir do sistema de ficheiros (o caminho especificado) carregar a informação de definição do contexto.

ApplicationContext applicationContext = novo FileSystemXmlApplicationContext ( "F: \\ \\ espaços de trabalho src \\ applicationContext.xml");

Após BeanFactory e ApplicationContext são carregados através de ficheiros de configuração de feijão XML, por contraste, ApplicationContext fornece mais extensões, a principal vantagem de carregamento lento, se não se atribuem injecção feijão é usado BeanFactory carregado, em o método primeiro getBean call () lança uma exceção, enquanto o ApplicationContext na auto-teste de inicialização, que vai ajudar a verificar se a injeção de propriedade de dependência. Portanto, no desenvolvimento real, o sistema normalmente optar por usar ApplicationContext, mas apenas quando há menos recursos do sistema antes de considerar o uso de BeanFactory.

Dependency Injection

Pode ser entendido: Se um objeto Um objeto B é necessária para atingir uma determinada função, então você pode dizer que o objeto A depende de B objeto, o recipiente A Primavera, quando você cria um objeto, o objeto será automaticamente precisa ter B A injeção alvo Um sujeito a este processo é a injeção de dependência. Dependência efeito de injecção é obtida quando o objecto é criado com a estrutura da mola, que depende dinamicamente componente feijão obtida é injectada no sujeito.

injeção de dependência das três maneiras

injecção levantador (1.): meios para método de ajuste utilizando instância recipiente COI é dependente injecção. Chamando o construtor sem argumentos ou sem argumentos método de fábrica estático instanciado Feijão, Feijão do método setter é chamado, o setter pode ser realizado com base no DI.

(2) injecção Construtor: O método refere-se ao COI configurado para utilizar um recipiente exemplo é dependente injecção. -based construtor DI é conseguido chamando o construtor com parâmetros, cada um representando uma dependência.

(3) injecção de interface: recipiente mola não suporta a interface de injecção.

 

 

 

 

 

 

 

referência:

1. quadro SSH para integrar tutorial de combate

Continuamente atualizado! ! !

Acho que você gosta

Origin www.cnblogs.com/flyinghome/p/12550331.html
Recomendado
Clasificación