标签:泛型
泛型依赖注入为spring4.0版本新增加的特性。
目录结构
BaseService.java类
public class BaseService<T> {
@Autowired
private BaseRespository baseRespository;
public void save() {
System.out.println("Base Class save method");
System.out.println(baseRespository);
}
}
输出baseRespository对象。
BaseRespository.java类
public class BaseRespository<T> {
}
UserRespository.java
@Repository
public class UserRespository extends BaseRespository<User> {
}
UserService.java
@Service
public class UserService extends BaseService<User> {
}
User.java
public class User {
}
IOC容器配置
<context:component-scan base-package="com.gp.spring.annotation.fanxing"></context:component-scan>
配置注解的扫描包
测试方法
public static void main(String[] args) {
ApplicationContext context = new ClassPathXmlApplicationContext(
"spring_fanxing.xml");
UserService us = (UserService)context.getBean("userService");
us.save();
}
输出结果
Base Class save method
com.gp.spring.annotation.fanxing.UserRespository@13b64a1
最后结果我们注意到BaseRespository对象类型变成UserRespository子类对象类型。
使用了泛型的好处就是,代码简洁,仅通过一个BaseService我们就可以实现类的共性方法,比如增删改查。
版权声明:本文为博主原创文章,未经博主允许不得转载。
标签:泛型
原文地址:http://blog.csdn.net/gaopeng0071/article/details/47088129