Spring泛型依赖注入

1、定义基础仓库

package com.spring.generic.di;

public class BaseRepository<T> {

}

2、定义基础服务层

 
package com.spring.generic.di;

import org.springframework.beans.factory.annotation.Autowired;

public class BaseService<T> {

    @Autowired
protected BaseRepository<T> repository; public void add(){
System.out.println("add...");
System.out.println(repository);
}
}
 

3、定义User服务层

 
package com.spring.generic.di;

import org.springframework.stereotype.Service;

@Service
public class UserService extends BaseService<User>{ }
 

4、定义仓库服务层

 
package com.spring.generic.di;

import org.springframework.stereotype.Repository;

@Repository
public class UserRepository extends BaseRepository<User>{ }
 

5、测试类

 
package com.spring.generic.di;

import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext; public class Main {
public static void main(String[] args) {
ApplicationContext ctx = new ClassPathXmlApplicationContext("bean-generic.xml"); UserService userService = (UserService)ctx.getBean("userService");
userService.add();
}
}
 
上一篇:mysql ERROR 1045 (28000): 错误解决办法-九五小庞


下一篇:深入分析Java Web开发