使用Spring注解,首先需要安装spring-aop.jar包,在配置文件中添加开启注解的配置
<?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"> <!-- 使用spring注解 --> <!-- <context:annotation-config/> --> <!-- 下面的配置告诉spring容器自动scanner用注解标注bean --> <context:component-scan base-package="org.lian"/> </beans>
下面是使用注解的简单的实例
@Service("contactsManagerService") public class ContactsManagerServiceImpl implements ContactsManagerService { private ContactsManagerDao contactsManagerDao; public ContactsManagerDao getContactsManagerDao() { return contactsManagerDao; } @Qualifier("contactsManagerDao") @Autowired public void setContactsManagerDao(ContactsManagerDao contactsManagerDao) { this.contactsManagerDao = contactsManagerDao; } @Override public String getContacts() { return contactsManagerDao.get(); } }
@Component("contactsManagerDao") public class ContactsManagerDaoImpl implements ContactsManagerDao { @Override public String get() { String value = "ContactsDao.get()"; return value; } }
单元测试类
public class App { public static void main(String[] args) { String classPath = "classpath*:conf/spring/app_*.xml"; // ApplicationContext context = new ClassPathXmlApplicationContext( // new String[] { "services.xml", "daos.xml" }); ApplicationContext context = new ClassPathXmlApplicationContext(classPath); GroupManagerService service = context.getBean(GroupManagerService.class); System.out.println(service.getGroup()); ContactsManagerService service2 = context.getBean("contactsManagerService", ContactsManagerService.class); System.out.println(service2.getContacts()); } }