我是 Kotlin 和 Spring Boot 的新手。我正在尝试通过 Serviceclass 调用带有初始化构造函数的 SearchService 类,一切都很好,直到需要访问 SearchService 中的 Autowired 环境变量 - 它抛出空指针异常。我假设我必须在 Serviceclass 中自动装配 SearchService,但是我将如何在 performSearch 方法中初始化构造函数和 name/isAlive 变量。
@Service
class Serviceclass {
@Autowired
lateinit var env: Environment
fun performSearch(req: String): String {
var searchService = SearchService("John",false)
result = searchService.searchAsync()
...
return result
}
}
@Repository
class SearchService(name: String = "",isAlive: Boolean = true) {
private var name: String = name
private var isAlive: Boolean = isAlive
@Autowired
lateinit var env: Environment
fun searchAsync(): String {
var endpoint = env.getProperty("endpoint").toString() + name //Error here
// makes call to get endpoint with Name and isAlive as params
...
return result
}
}