关于Action注入ServiceImpl。求帮忙。
@Controller("loginAction")
public class LoginAction extends ActionSupport{
/**
*
*/
private static final long serialVersionUID = 7714793956302762476L;
private User user;
private UserService userService = new UserServiceImpl();
//public UserService getUserService() {
//return userService;
//}
//
//@Autowired
//public void setUserService(UserServiceImpl userService) {
//this.userService = userService;
//}
/*---------------------------------------------------------------*/
以上是Action的部分代码,我想在此利用spring在Action里面注入UserServiceImpl,结果存在异常说,类型不匹配。然后我把依赖注入的代码注释掉,直接new一个UserServiceImpl,问题就解决,其中,UserService是接口。我想问一下各位大神,为什么出现这种情况?怎样做才能实现依赖注入。(ps:依赖注入我用的是annotation的方式。在service层依赖注入dao的实现类也成功。)求帮忙。。
[解决办法]
这个注解就是spring可以自动帮你把bean里面引用的对象的setter/getter方法省略,它会自动帮你set/get。
[解决办法]
在类开头加个@Result(name="userServiceImpl")
但是前提是UserService的实现类是UserServiceImpl
然后把UserServiceImpl的首字母小写放到Result中Spring自动会去匹配
[解决办法]