Merge pull request #9518 from md-fork/master
BAEL-4083 - Using XML defined beans in a Spring Boot app
This commit is contained in:
		
						commit
						6aa7c57db6
					
				| @ -62,6 +62,7 @@ | ||||
|         <module>spring-boot-springdoc</module> | ||||
|         <module>spring-boot-testing</module> | ||||
|         <module>spring-boot-vue</module> | ||||
|         <module>spring-boot-xml</module> | ||||
|         <module>spring-boot-actuator</module> | ||||
|     </modules> | ||||
| 
 | ||||
|  | ||||
							
								
								
									
										40
									
								
								spring-boot-modules/spring-boot-xml/pom.xml
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										40
									
								
								spring-boot-modules/spring-boot-xml/pom.xml
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,40 @@ | ||||
| <?xml version="1.0" encoding="UTF-8"?> | ||||
| <project xmlns="http://maven.apache.org/POM/4.0.0" | ||||
|          xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" | ||||
|          xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> | ||||
|     <parent> | ||||
|         <artifactId>parent-boot-2</artifactId> | ||||
|         <groupId>com.baeldung</groupId> | ||||
|         <version>0.0.1-SNAPSHOT</version> | ||||
|         <relativePath>../../parent-boot-2</relativePath> | ||||
|     </parent> | ||||
| 
 | ||||
|     <modelVersion>4.0.0</modelVersion> | ||||
| 
 | ||||
|     <artifactId>spring-boot-xml</artifactId> | ||||
| 
 | ||||
|     <dependencies> | ||||
|         <dependency> | ||||
|             <groupId>org.springframework.boot</groupId> | ||||
|             <artifactId>spring-boot-starter</artifactId> | ||||
|         </dependency> | ||||
|         <dependency> | ||||
|             <groupId>org.springframework.boot</groupId> | ||||
|             <artifactId>spring-boot-starter-test</artifactId> | ||||
|         </dependency> | ||||
|         <dependency> | ||||
|             <groupId>junit</groupId> | ||||
|             <artifactId>junit</artifactId> | ||||
|         </dependency> | ||||
|     </dependencies> | ||||
| 
 | ||||
|     <build> | ||||
|         <plugins> | ||||
|             <plugin> | ||||
|                 <groupId>org.springframework.boot</groupId> | ||||
|                 <artifactId>spring-boot-maven-plugin</artifactId> | ||||
|             </plugin> | ||||
|         </plugins> | ||||
|     </build> | ||||
| 
 | ||||
| </project> | ||||
| @ -0,0 +1,17 @@ | ||||
| package com.baeldung.springbootxml; | ||||
| 
 | ||||
| public class Pojo { | ||||
| 
 | ||||
|     private String field; | ||||
| 
 | ||||
|     public Pojo() { | ||||
|     } | ||||
| 
 | ||||
|     public String getField() { | ||||
|         return field; | ||||
|     } | ||||
| 
 | ||||
|     public void setField(String field) { | ||||
|         this.field = field; | ||||
|     } | ||||
| } | ||||
| @ -0,0 +1,29 @@ | ||||
| package com.baeldung.springbootxml; | ||||
| 
 | ||||
| import org.slf4j.Logger; | ||||
| import org.slf4j.LoggerFactory; | ||||
| import org.springframework.beans.factory.annotation.Autowired; | ||||
| import org.springframework.boot.CommandLineRunner; | ||||
| import org.springframework.boot.SpringApplication; | ||||
| import org.springframework.boot.autoconfigure.EnableAutoConfiguration; | ||||
| import org.springframework.context.annotation.Configuration; | ||||
| import org.springframework.context.annotation.ImportResource; | ||||
| 
 | ||||
| @Configuration | ||||
| @EnableAutoConfiguration | ||||
| @ImportResource("classpath:beans.xml") | ||||
| public class SpringBootXmlApplication implements CommandLineRunner { | ||||
| 
 | ||||
|     private static final Logger logger = LoggerFactory.getLogger(SpringBootXmlApplication.class); | ||||
| 
 | ||||
|     @Autowired private Pojo pojo; | ||||
| 
 | ||||
|     public static void main(String[] args) { | ||||
|         SpringApplication.run(SpringBootXmlApplication.class, args); | ||||
|     } | ||||
| 
 | ||||
|     public void run(String... args) { | ||||
|         logger.info(pojo.getField()); | ||||
|     } | ||||
| 
 | ||||
| } | ||||
| @ -0,0 +1,26 @@ | ||||
| package com.baeldung.springbootxml; | ||||
| 
 | ||||
| import org.junit.Test; | ||||
| import org.junit.runner.RunWith; | ||||
| import org.springframework.beans.factory.annotation.Autowired; | ||||
| import org.springframework.beans.factory.annotation.Value; | ||||
| import org.springframework.boot.test.context.SpringBootTest; | ||||
| import org.springframework.test.context.junit4.SpringRunner; | ||||
| 
 | ||||
| import static org.assertj.core.api.Assertions.assertThat; | ||||
| 
 | ||||
| @RunWith(SpringRunner.class) | ||||
| @SpringBootTest(classes = SpringBootXmlApplication.class) | ||||
| public class SpringBootXmlApplicationIntegrationTest { | ||||
| 
 | ||||
|     @Autowired private Pojo pojo; | ||||
|     @Value("${sample}") private String sample; | ||||
| 
 | ||||
|     @Test | ||||
|     public void whenCallingGetter_thenPrintingProperty() { | ||||
|         assertThat(pojo.getField()) | ||||
|                 .isNotBlank() | ||||
|                 .isEqualTo(sample); | ||||
|     } | ||||
| 
 | ||||
| } | ||||
| @ -0,0 +1 @@ | ||||
| sample=string loaded from properties! | ||||
| @ -0,0 +1,11 @@ | ||||
| <?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:context="http://www.springframework.org/schema/context" | ||||
|        xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd | ||||
| 	http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context.xsd"> | ||||
| 
 | ||||
|     <bean class="com.baeldung.springbootxml.Pojo"> | ||||
|         <property name="field" value="${sample}"></property> | ||||
|     </bean> | ||||
| </beans> | ||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user