spring2.5的通过在classpath自动扫描方式把组件纳入spring容器中管理


************

beans.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"
       xmlns:context="http://www.springframework.org/schema/context"
       xsi:schemaLocation="
       	   http://www.springframework.org/schema/beans
           http://www.springframework.org/schema/beans/spring-beans-2.5.xsd
           http://www.springframework.org/schema/context 
           http://www.springframework.org/schema/context/spring-context-2.5.xsd">
           
          <context:component-scan base-package="blog"/>
          
</beans>

*****************

PersonServiceBean.java

****************

package blog.service.impl;

import javax.annotation.PostConstruct;
import javax.annotation.PreDestroy;

import org.springframework.stereotype.Service;

import blog.dao.PersonDao;
import blog.service.PersonService;

@Service("personService") //@Scope("prototype")
public class PersonServiceBean implements PersonService {
	private PersonDao personDao;
	
	
	public void setPersonDao(PersonDao personDao) {
		this.personDao = personDao;
	}
	
	@PostConstruct
	public void init() {
		System.out.println("in init method......");
	}

	public PersonServiceBean() {
		System.out.println("in PersonServiceBean'constructor method!");
	}

	public void save() {
		personDao.save();
	}
	
	@PreDestroy
	public void destroy() {
		System.out.println("in destroy method......");
	}
}

注意:@PreDestory注解只有当类是单例的时候才会执行,是prototype的时候不会执行


posted @ 2012-08-04 17:51  xzf007  阅读(153)  评论(0编辑  收藏  举报