java学习笔记2 - Spring Autowired之批量用法

写批量用法之前先写个单个用法的例子作为对比,如下一段代码:

1.bean文件配置:

<bean id="userDao" class="..."/>
<bean id="userService" class="...">
    <property name="userDao">
      <ref bean="userDao"/>
    </property>
</bean>
2.Java代码
@Autowired
private UserDao userdao;
这样就可以调用UserDao里的方法了


因为dao和service在一个项目中会有多个,这就要写很多个类似的配置,下面以service为例说下如何实现批量自动装载,我们假设所有service文件放在com.test.biz下

1.目录结构



2.bean文件配置

<?xml version="1.0" encoding="UTF-8" ?>
<beans xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
       xmlns="http://www.springframework.org/schema/beans"
       xmlns:context="http://www.springframework.org/schema/context"
       xmlns:p="http://www.springframework.org/schema/p"
       xsi:schemaLocation="
        http://www.springframework.org/schema/beans http://localhost:8080/schema/www.springframework.org/schema/beans/spring-beans.xsd
        http://www.springframework.org/schema/context http://localhost:8080/schema/www.springframework.org/schema/context/spring-context.xsd
    "
       default-autowire="byName"> ①

    <context:component-scan base-package="com.test.biz.impl"> ②
        <context:include-filter type="regex" expression=".*Impl" /> ③
    </context:component-scan>

</beans>

①设置自动装载为按名称

②扫描的包

③配置的文件

3. User.java

package com.test.biz;

public interface User {
	String getName();
}

4. UserImpl.java

package com.test.biz.impl;

import com.test.biz.User;
public class UserImpl implements User{
	private String name = "aaa";
	public String getName(){
		return this.name;
	}
}


5. Java中使用

@Autowired
private User user;

6.这样就完成了,以后如果有新的service只要在biz目录里写server文件即可,不需要再配置bean文件了,方便吧~

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值