28. 2. 3. Search By Base Package |
|
File: context.xml |
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:context="http://www.springframework.org/schema/context"
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
http://www.springframework.org/schema/context
http://www.springframework.org/schema/context/spring-context.xsd">
<context:component-scan base-package="bean"/>
</beans>
|
|
File: Main.java |
import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;
public class Main {
public static void main(String[] args) throws Exception {
ApplicationContext ac = new ClassPathXmlApplicationContext(
"context.xml");
System.out.println(ac.getBean("simplestBean"));
}
}
|
|
File: Magic.java |
package bean;
public @interface Magic {
}
|
|
File: MarkedBean.java |
package bean;
public class MarkedBean implements ComponentMarker {
@Override
public String toString() {
final StringBuilder sb = new StringBuilder();
sb.append("MarkedBean");
sb.append("{}");
return sb.toString();
}
}
|
|
File: SimpleBean.java |
package bean;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;
import org.springframework.util.ObjectUtils;
/**
* @author janm
*/
@Magic
class SimpleBean {
private Dependency dependency;
@Autowired(required = true)
public void setDependency(Dependency dependency) {
this.dependency = dependency;
}
@Override
public String toString() {
final StringBuilder sb = new StringBuilder();
sb.append("SimpleBean");
sb.append(ObjectUtils.identityToString(this));
sb.append("{dependency=").append(dependency);
sb.append('}');
return sb.toString();
}
}
@Component
class Dependency {
@Override
public String toString() {
final StringBuilder sb = new StringBuilder();
sb.append("Dependency");
sb.append(ObjectUtils.identityToString(this));
sb.append("{}");
return sb.toString();
}
}
|
|
File: SimplestBean.java |
package bean;
import org.springframework.context.annotation.Scope;
import org.springframework.stereotype.Component;
/**
* @author janm
*/
@Component("simplestBean")
@Scope("prototype")
public class SimplestBean {
@Override
public String toString() {
final StringBuilder sb = new StringBuilder();
sb.append("SimplestBean");
sb.append("{}");
return sb.toString();
}
}
|
|
File: ComponentMarker.java |
package bean;
public interface ComponentMarker {
}
|
|
Download: Spring-SerachByBasePackage.zip( 4,454 k) |