siye@r480:~/svlution/workspace/springcore4322$ tree src/
src/
├── main
│ ├── java
│ │ ├── log4j.properties
│ │ └── ocn
│ │ └── site
│ │ └── springioc
│ │ └── domain
│ │ ├── Person.java
│ │ └── User.java
│ └── resources
└── test
├── java
│ └── ocn
│ └── site
│ └── springioc
│ └── domain
│ └── Runtest.java
└── resources
└── config
└── application.xml
15 directories, 5 files
< dependency>
< groupId> org.springframework</ groupId>
< artifactId> spring-context</ artifactId>
< version> 4.3.22.RELEASE</ version>
</ dependency>
< dependency>
< groupId> log4j</ groupId>
< artifactId> log4j</ artifactId>
< version> 1.2.17</ version>
</ dependency>
< dependency>
< groupId> junit</ groupId>
< artifactId> junit</ artifactId>
< version> 4.12</ version>
< scope> test</ scope>
</ dependency>
< dependency>
< groupId> org.springframework</ groupId>
< artifactId> spring-test</ artifactId>
< version> 4.3.22.RELEASE</ version>
< scope> test</ scope>
</ dependency>
package ocn. site. springioc. domain;
public class Person {
}
package ocn. site. springioc. domain;
public class User {
private Person person;
public Person getPerson ( ) {
return person;
}
public void setPerson ( Person person) {
this . person = person;
}
@Override
public String toString ( ) {
return "User [person=" + person + "]" ;
}
}
package ocn. site. springioc. domain;
import org. apache. log4j. Logger;
import org. junit. Test;
import org. junit. runner. RunWith;
import org. springframework. beans. factory. annotation. Autowired;
import org. springframework. test. context. ContextConfiguration;
import org. springframework. test. context. junit4. SpringRunner;
@RunWith ( SpringRunner. class )
@ContextConfiguration ( "classpath:config/application.xml" )
public class Runtest {
private final Logger logger = Logger. getLogger ( this . getClass ( ) ) ;
private @Autowired User user;
private @Autowired Person person;
@Test
public void run ( ) throws Exception {
logger. info ( user) ;
logger. info ( person) ;
}
}
<?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 class = " ocn.site.springioc.domain.Person" > </ bean>
< bean class = " ocn.site.springioc.domain.User" autowire = " byType" autowire-candidate = " default" > </ bean>
</ beans>
19-09-07 20:31:04 org.springframework.test.context.support.DefaultTestContextBootstrapper =====>>> Loaded default TestExecutionListener class names from location [META-INF/spring.factories]: [org.springframework.test.context.web.ServletTestExecutionListener, org.springframework.test.context.support.DirtiesContextBeforeModesTestExecutionListener, org.springframework.test.context.support.DependencyInjectionTestExecutionListener, org.springframework.test.context.support.DirtiesContextTestExecutionListener, org.springframework.test.context.transaction.TransactionalTestExecutionListener, org.springframework.test.context.jdbc.SqlScriptsTestExecutionListener]
19-09-07 20:31:04 org.springframework.test.context.support.DefaultTestContextBootstrapper =====>>> Using TestExecutionListeners: [org.springframework.test.context.support.DirtiesContextBeforeModesTestExecutionListener@783e6358, org.springframework.test.context.support.DependencyInjectionTestExecutionListener@17550481, org.springframework.test.context.support.DirtiesContextTestExecutionListener@735f7ae5]
19-09-07 20:31:04 org.springframework.beans.factory.xml.XmlBeanDefinitionReader =====>>> Loading XML bean definitions from class path resource [config/application.xml]
19-09-07 20:31:05 org.springframework.context.support.GenericApplicationContext =====>>> Refreshing org.springframework.context.support.GenericApplicationContext@36d4b5c: startup date [Sat Sep 07 20:31:05 CST 2019]; root of context hierarchy
19-09-07 20:31:05 ocn.site.springioc.domain.Runtest =====>>> User [person=ocn.site.springioc.domain.Person@240237d2]
19-09-07 20:31:05 ocn.site.springioc.domain.Runtest =====>>> ocn.site.springioc.domain.Person@240237d2
19-09-07 20:31:05 org.springframework.context.support.GenericApplicationContext =====>>> Closing org.springframework.context.support.GenericApplicationContext@36d4b5c: startup date [Sat Sep 07 20:31:05 CST 2019]; root of context hierarchy