[Desde la entrada de primavera de aprendizaje cero hasta la entrada avanzada] día 2: programa de entrada de primavera

Capítulo 3 "Programa de introducción de Spring"

 

1. Descarga de primavera

Puede ir al sitio web oficial para descargar el paquete comprimido, también hay un manual en inglés, puede ver todos los paquetes jar e importarlo directamente a Maven cuando lo use.

2. Paquete de tarro de primavera

Esta sección explica las funciones correspondientes de los paquetes jar importantes incluidos en Spring. No presto mucha atención en esta etapa y básicamente la omito. La imagen de abajo es parte de ella.

Nota: Si solo desea utilizar la función loC de Spring, solo necesita introducir: spring-context. Agregue este paquete jar al classpath. Si usa maven, solo necesita introducir dependencias de contexto.

        <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-context</artifactId>
            <version>6.0.3</version>
        </dependency>

3. Primer programa de primavera

configuración experta

<packaging>jar</packaging>
    <properties>
        <maven.compiler.source>17</maven.compiler.source>
        <maven.compiler.target>17</maven.compiler.target>
        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
    </properties>
    <dependencies>
        <!-- https://mvnrepository.com/artifact/org.springframework/spring-context -->
        <!--当你引入Spring context依赖之后,表示将Spring的基础依赖引入了-->
        <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-context</artifactId>
            <version>6.0.3</version>
        </dependency>
        <!--junit依赖-->
        <dependency>
            <groupId>junit</groupId>
            <artifactId>junit</artifactId>
            <version>4.13.2</version>
            <scope>test</scope>
        </dependency>

    </dependencies>

 Cree un paquete de bean, agregue una clase de usuario y déjelo vacío

 Haga clic con el botón derecho en el directorio de recursos, cree un archivo de configuración Spring, colóquelo en el directorio de recursos, compílelo y empáquelo, y finalmente colóquelo en la ruta raíz de la clase.

configuración de spring.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"
       xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd">

    <!--bean标签的两个重要属性:
        id:是这个bean的身份证号,不能重复,是唯一的标识。
        class:必须填写类的全路径,全限定类名。(带包名的类名)
    -->
    <bean id="userBean" class="com.xue.spring6.bean.User" />

</beans>

Entre ellos, la clase se puede copiar rápidamente de esta manera: haga clic con el botón derecho en la clase que se va a configurar -> copiar ruta/referencia -> como se muestra en la figura a continuación

 Junto a la prueba,

4. Análisis detallado del primer programa

1. La identificación del bean de configuración debe ser única

2. ¿Cómo instancia Spring los objetos?
De forma predeterminada, Spring instanciará los objetos llamando al constructor sin parámetros de la clase a través del mecanismo de reflexión. El principio de implementación es el siguiente:
class clazz = Class.forName( "com.powernode .spring6.bean.User" );0bject obj = clazz.newInstance();

3. El nombre del archivo de configuración de Spring es arbitrario, puede haber más de uno, separados por comas al importar

4. La clase configurada en el archivo de configuración no necesita ser personalizada, puede usar la clase en el JDK

5. Si el nombre del bean está mal escrito, se informará directamente de un error en lugar de devolver nulo

6. El tipo devuelto por el método getBean() es Object. Si accede a las propiedades y métodos únicos de la subclase, debe reducir la conversión, y hay otra forma

User user = applicationContext.getBean( "userBean" ,User.class );

7. La capa inferior del contenedor IoC de Spring en realidad usa: modo de fábrica. ¿Cómo se implementa el IoC subyacente en Spring?Análisis XML + modo de fábrica + mecanismo de reflexión

8. En lugar de crear un objeto al llamar al método getBean(), se creará una instancia del objeto cuando se ejecute el siguiente código. getBean solo obtiene el valor de la colección Map de acuerdo con la clave

new classPathXmlApplicationContext("spring6.xml");

5. Spring6 habilita el marco de registro de Log4j2

1. Introducir dependencias

        <!--log4j2的依赖-->
        <dependency>
            <groupId>org.apache.logging.log4j</groupId>
            <artifactId>log4j-core</artifactId>
            <version>2.19.0</version>
        </dependency>
        <dependency>
            <groupId>org.apache.logging.log4j</groupId>
            <artifactId>log4j-slf4j2-impl</artifactId>
            <version>2.19.0</version>
        </dependency>

2. Proporcionar archivos de configuración

recursos nuevo -> archivo -> log4j2.xml

<?xml version="1.0" encoding="UTF-8" ?>
<configuration>
    <loggers>
        <!--
        level指定日志级别,从低到高的优先级:
        ALL < TRACE < DEBUG < INF0 < WARN< ERROR < FATAL <OFF
        -->
        <root level="DEBUG">
            <appender-ref ref="spring6log"/>
        </root>
    </loggers>
    <appenders>
        <!--输出日志信息到控制台-->
        <console name="spring6log" target="SYSTEM_OUT">
            <!--控制日志输出的格式-->
            <PatternLayout pattern="%d{yyyy-MM-dd HH:mm:ss sss} [%t] %-3level %logger{1024} - %msg%n"/>
        </console>
    </appenders>
</configuration>

3. Cuando lo use usted mismo (no entiendo muy bien esta parte, así que primero tome una captura de pantalla simple)

Supongo que te gusta

Origin blog.csdn.net/m0_48385518/article/details/128541029
Recomendado
Clasificación