Spring中怎样实现自动扫描

2025-04-24 20:24:56

1、首先 ,在Spring中单独给一个类装配,[html]view plaincopy<beanid="customerDAO"class="com.yiibai.customer.dao.CustomerDAO"/> 。

Spring中怎样实现自动扫描

2、然后,只需要在xml中配置bean即可,但是如果我们有一大推类要配置,那么一个一个配置就太麻烦了,这个时候用Spring中的自动扫描组件就很方便了。

Spring中怎样实现自动扫描

3、然后,共有4种类型的自动扫描:@Component(任意组件)、@Repository(DAO层组件)、@Service(业务层组件)和@Controller(控制层组件)。

Spring中怎样实现自动扫描

4、然后,将Spring的配置文件改为:<?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-4.2.xsd"> <context:component-scan base-package="cn.itcast" /></beans>。

Spring中怎样实现自动扫描

5、然后,然后使用@Service注解标注PersonServiceBean类,如下:@Servicepublic class PersonServiceBean implements PersonService { private PersonDao personDao; public void setPersonDao(PersonDao personDao) { this.personDao = personDao; } @Override public void save() { personDao.add(); } }。

Spring中怎样实现自动扫描

6、最后,修改SpringTest类的代码为:public class SpringTest { @Test public void instanceSpring(像粜杵泳) { AbstractApplicationContext ctx = new ClassPathXmlApplicationContext("beans.xml"); PersonService personService = (PersonService) ctx.getBean("personServiceBean"); PersonDao personDao = (PersonDao) ctx.getBean("personDaoBean"); System.out.println(personService); System.out.println(personDao); ctx.close(); } }。

Spring中怎样实现自动扫描
声明:本网站引用、摘录或转载内容仅供网站访问者交流或参考,不代表本站立场,如存在版权或非法内容,请联系站长删除,联系邮箱:site.kefu@qq.com。
猜你喜欢