spring注解方式在一个普通的java类里面注入dao
@RepositorypublicclassBaseDaoImplimplementsBaseDao{这是我的dao如果在service层注入的话很简单publiccla...
@Repository
public class BaseDaoImpl implements BaseDao {
这是我的dao
如果在service层注入的话很简单
public class BaseServiceImpl implements BaseService {
@Autowired
public BaseDao baseDao;
这样就可以了
现在我想在一个普通的java类中注入进来改怎么写
比如我的普通java类是
public class UseCarManager implements AssignmentHandler {
在这个UseCarManager 中我想获得那个dao改如何写。 展开
public class BaseDaoImpl implements BaseDao {
这是我的dao
如果在service层注入的话很简单
public class BaseServiceImpl implements BaseService {
@Autowired
public BaseDao baseDao;
这样就可以了
现在我想在一个普通的java类中注入进来改怎么写
比如我的普通java类是
public class UseCarManager implements AssignmentHandler {
在这个UseCarManager 中我想获得那个dao改如何写。 展开
4个回答
展开全部
不知道你说的“普通的java类”是什么。
在spring里要注入的话,相应的类都要纳入spring的管理,对象由spring创建,对象从spring获取。就像你上面的BaseDaoImpl和BaseServiceImpl。
如果UserCarManager也是由spring管理的话,那同样适用@autowired就可以注入。
看你的提问,应该是指没有纳入spring管理的类如何注入spring管理的对象,这种情况可以用srping相关的静态方法达到目的。
比如:
WebApplicationContext webAppContext = WebApplicationContextUtils.getWebApplicationContext(getServletContext());
BaseDaoImpl baseDao = (BaseDaoImpl) BeanFactoryUtils.beanOfTypeIncludingAncestors(webAppContext, BaseDaoImpl.class);
在spring里要注入的话,相应的类都要纳入spring的管理,对象由spring创建,对象从spring获取。就像你上面的BaseDaoImpl和BaseServiceImpl。
如果UserCarManager也是由spring管理的话,那同样适用@autowired就可以注入。
看你的提问,应该是指没有纳入spring管理的类如何注入spring管理的对象,这种情况可以用srping相关的静态方法达到目的。
比如:
WebApplicationContext webAppContext = WebApplicationContextUtils.getWebApplicationContext(getServletContext());
BaseDaoImpl baseDao = (BaseDaoImpl) BeanFactoryUtils.beanOfTypeIncludingAncestors(webAppContext, BaseDaoImpl.class);
展开全部
@Component
public class UseCarmanager implements AssignmentHandler {
@Autowired
public BaseDao baseDao;
}
在spring的配置文件里要配置 base-scan 包含 UseCarManager的包路径。
public class UseCarmanager implements AssignmentHandler {
@Autowired
public BaseDao baseDao;
}
在spring的配置文件里要配置 base-scan 包含 UseCarManager的包路径。
追问
哥们,我试了试不行啊。还是baseDao还是null
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
在类里面这样写。
public class UseCarManager implements AssignmentHandler {
private BaseDao baseDao;
public void setBaseDao(BaseDao baseDao){
this.baseDao = baseDao;
}
public BaseDao getBaseDao(){
return baseDao;
}
}
=======================================
然后你在spring的配置文件里,将BaseDaoImpl 配置给BaseDao 即可
public class UseCarManager implements AssignmentHandler {
private BaseDao baseDao;
public void setBaseDao(BaseDao baseDao){
this.baseDao = baseDao;
}
public BaseDao getBaseDao(){
return baseDao;
}
}
=======================================
然后你在spring的配置文件里,将BaseDaoImpl 配置给BaseDao 即可
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
你应该把spring配置也贴出来,光这样,看不出来个撒子
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询