在我的项目中,我有两个servlet和两个servlet的公共数据源。 第一个servlet是mvc,第二个是JAXWS。 对于@Autowired字段,第二个servlet始终为null。 我决定将此字段检查为null是这样的:
public class InRequestServiceImpl implements InRequestService {
@Autowired
public InRequestDao inRequestDao;// = new InRequestDaoImpl();
public InRequestServiceImpl() {
if (inRequestDao == null) inRequestDao = new InRequestDaoImpl();
}
@Override
@Transactional
public void insertData(InRequest doc) throws IOException {
inRequestDao.insertData(doc);
}
...
}
参考问题:SPRING: visibility of autowired beans in services
问题是:这种情况有好的做法吗? 帮助编写干净的代码。