1.比如有一个接口如下:
public interface UserDao {public User getUser(User user);
public List<User> getUserAll();
public Page<User> findPageUserByIntegrateds(Page<User> page, Map<String, Object> conditions);
}
2.有如下接口实现类:
public class UserDaoImpl extends BaseJPADao<User, Long> implements UserDao{
/**
*
*/
public User getUser(User user) {
Map<String, Object> userMap = new HashMap<String, Object>();
userMap.put("username", user.getUsername());
userMap.put("mm", user.getMm());
return findUniqueBy(userMap);
}
3.使用方式:在接口实现类定义位置添加注解 @Service("userDao"),如下:
@Service("userDao")
public class UserDaoImpl extends BaseJPADao<User, Long> implements UserDao{
/**
*
*/
public User getUser(User user) {
Map<String, Object> userMap = new HashMap<String, Object>();
userMap.put("username", user.getUsername());
userMap.put("mm", user.getMm());
return findUniqueBy(userMap);
}
4.在需要注入的地方使用如下方式引入:
@Autowired
@Qualifier("userDao")
private UserDao userDao;
注意:
1.在引用实现类的使用,使用的是实现类的接口(这是因为 springMVC 代理的接口)。
2.在引用实现类的时候,需要使用@Qualifier 注解,注明使用哪个名称的实现类(用来区分哪一个实例)。