1. Spring
Spring é uma estrutura leve, equivalente a uma plataforma, que simplifica muito o desenvolvimento de aplicativos Java de nível empresarial e fornece funções poderosas e estáveis. O framework Spring consiste em aproximadamente 20 módulos funcionais, que são divididos em 6 partes, conforme mostrado na figura:
Spring Core é a parte mais básica, fornecendo recursos IOC; Spring AOP é uma implementação de programação orientada a aspectos compatível com o padrão baseada no Spring Core.
Spring IOC container é a parte central do Spring. IOC (Inversão de Controle), inversão de controle, também conhecida como injeção de dependência, é um conceito de design em programação orientada a objetos que é usado para reduzir a complexidade do programa código. grau de acoplamento entre.
Em termos leigos, em aplicações práticas, múltiplas classes precisam depender umas das outras para completar certos negócios específicos, e a injeção de dependência consiste em manter o relacionamento entre as classes na forma de arquivos de configuração. de codificação rígida, reduzindo assim o acoplamento entre sistemas e aumentando a capacidade de manutenção.
2. Construa o ambiente
Vamos começar com um simples HelloWorld
1. Baixe o pacote spring jar: http:// projetos .spring.io/spring-framework/ (Este artigo usa a versão 4.1.4)
2. Crie um projeto java comum (não precisa ser um projeto web, para simplificar)< /a >
3. Adicione o pacote jar:
4.Crie o arquivo spring-config.xml em src (você mesmo pode escolher o nome) e crie a classe Student e a classe de teste
(1) Turma de alunos:
public class Student {
private int id;
private String name;
//省略get、set方法
//为了方便显示,重写了toString方法
@Override
public String toString() {
return "Student [id=" + id + ", name=" + name + "]";
}
}
(2) Configuração do arquivo spring-config.xml:
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:p="http://www.springframework.org/schema/p"
xmlns:util="http://www.springframework.org/schema/util"
xmlns:aop="http://www.springframework.org/schema/aop"
xmlns:tx="http://www.springframework.org/schema/tx"
xsi:schemaLocation="
http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans-4.0.xsd
http://www.springframework.org/schema/util
http://www.springframework.org/schema/util/spring-util-4.0.xsd
http://www.springframework.org/schema/p
http://www.springframework.org/schema/p/spring-p-4.0.xsd">
<!-- 以这种方式来声明Student类的实例 -->
<bean id="student" class="com.wzj.entity.Student">
<!-- 为Student对象的属性赋值 -->
<property name="id" value="1"/>
<property name="name" value="好人"/>
</bean>
</beans>
aula de teste:
import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;
import com.wzj.entity.Student;
public class Test {
public static void main(String[] args) {
//通过ApplicationContext接口的实现类实例化Spring上下文对象
ApplicationContext context=new ClassPathXmlApplicationContext("spring-config.xml");
//通过getBean()方法来获取到Student类的对象
Student student=(Student)context.getBean("student");
System.out.println(student);
}
}
4) Resultados da corrida: Aluno [id=1, nome=mocinho]
3. Configuração do Bean
1.BeanFactory e ApplicationContext
A estrutura Spring fornece duas implementações de contêineres IOC:
(1) BeanFactory: a implementação básica do contêiner IOC
(2) ApplicationContext (recomendado): fornece recursos mais avançados e é uma subinterface do BeanFactory
BeanFactory é a infraestrutura do framework Spring, orientada para o próprio Spring;
ApplicationContext é orientado para desenvolvedores que usam o framework Spring. Quase todos os aplicativos usam ApplicationContext diretamente em vez do BeanFactory subjacente
Classe de implementação ApplicationContext:
—— ClassPathXmlApplicationContext: Carregue o arquivo de configuração do caminho de classe
— FileSystemXmlApplicationContext: Carregue o arquivo de configuração do sistema de arquivos
2. Configure o Bean — — Baseado no formato do arquivo xml
(1) Use o elemento <bean> no arquivo de configuração do Spring para configurar a instância do Bean, como:
<!--
id:Bean的名称,在IOC容器中必须是唯一的,还可以指定多个名字,名字之间用英文逗号、分号或空格隔开
class:Bean所对的类的全名,其实内部是通过反射来动态创建对象的
-->
<bean id="student" class="com.hy.entity.Student">
<!-- 为Student对象的属性赋值,value也可以作为子标签 -->
<property name="id" value="1"/>
</bean>
(2) Obtenha a instância do bean:
//O nome do parâmetro getBean() deve corresponder ao ID do bean no arquivo de configuração
Student student=(Student)context.getBean("student");< /uma >
Acima estão alguns dos meus insights sobre o Spring. Até o próximo artigo.