spring

Añadir dependencias al pom.xml

 

<!-- https://mvnrepository.com/artifact/org.springframework/spring-context -->
<dependency>
   <groupId>org.springframework</groupId>
   <artifactId>spring-context</artifactId>
   <version>6.0.9</version>
</dependency>

 

Creamos el paquete com.spring.beans y la clase Mundo

package com.spring.beans;

public class Mundo {
   private String saludo;

   public String getSaludo() {
       return saludo;
   }

   public void setSaludo(String saludo) {
       this.saludo = saludo;
   }
}

Creamos directorio src/main/resources y el paquete com.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="mundo" class="com.spring.beans.Mundo">
       <property name="saludo" value="Hola Mundo!!"></property>
   </bean>

</beans>

 

Creamos la clase App que contendrá el Main del programa:

 

package com.spring.beans;

import org.springframework.context.ApplicationContext;
import org.springframework.context.ConfigurableApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;

public class App {
   public static void main(String[] args) {
       //REMPLAZAMOS POR SPRING
       //Mundo m = new Mundo(); //
       //m.getSaludo();         //
       //**//

       ApplicationContext appContext = new ClassPathXmlApplicationContext("com/spring/xml/beans.xml");
       Mundo m = (Mundo) appContext.getBean("mundo");
       System.out.println(m.getSaludo());
       ((ConfigurableApplicationContext)appContext).close();

   }
}

 

Añadir anotaciones para hacer más dinámico la programación.

 

Crear la clase Appconfig en el paquete principal del proyecto

 

package com.spring.beans;

import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;

@Configuration
public class AppConfig {
   @Bean //la anotación es similar al bean del archivo beans.xml
   public Mundo mundo(){
       return new Mundo();
   }
}

 

Modificamos el archivo Mundo.java añadiendo la etiqueta @Value y el valor "Hola Mundo"

(...)

public class Mundo{

@Value("Hola Mundo!!")

private Strring saludo;

}

(...)