我使用註釋創建服務:同時使用註釋和一個實例豆XML配置
@Service
@Repository
public class UserServiceImpl implements UserService {
private String defaultPassword;
@Autowired
private UserRepository userRepository;
// ...
@Override
public void setDefaultPassword(String defaultPassword) {
this.defaultPassword = defaultPassword;
}
@Override
public String getDefaultPassword() {
return defaultPassword;
}
}
我想用Spring XML配置不是通過註釋配置defaultPassword
價值,所以我加入XML以下定義:
<bean id="userServiceImpl" class="com.test.service.UserServiceImpl">
<property name="defaultPassword" value="youmustchangethis" />
</bean>
然後,我寫測試,如:
public class UserServiceImplTest extends AbstractServiceImplTest {
@Autowired
private UserService userService;
// ...
}
我在註解和XML聲明(使用bean id)中匹配了bean名稱。我的問題是userService
變量UserServiceImplTest
總是由同一個配置爲XML和註解的singleton bean注入?我搜索了文檔,但沒有找到像這樣的「混合」方法的解釋。
刪除'@ Repository'註釋,你應該使用'stereotype'註解 –
我想在這裏使用Spring unchecked exception,因爲我在我的服務層注入了Spring Data repository。如果我必須刪除'@ Repository'註釋,是否有另一種方法來使用Spring unchecked exception? – user1629558