У меня есть таблица tbl_user, я пытаюсь получить один объект, в то время как я даю идентификатор из переменной пути. Но он выдает ошибку в служебной части всякий раз, когда я пытаюсь создать метод с помощью findById ().
таблица
CREATE TABLE `tbl_user` (
`id` BIGINT(20) NOT NULL AUTO_INCREMENT,
`name` VARCHAR(100) DEFAULT NULL,
`email` VARCHAR(255) NOT NULL,
`contact` VARCHAR(255) NOT NULL,
`status` ENUM('active','inactive') NOT NULL,
UNIQUE KEY `email` (`email`),
UNIQUE KEY `contact` (`contact`),
PRIMARY KEY (`id`)
);
Контроллер
@RequestMapping(value = "/find/user/{id}", method = RequestMethod.GET)
public JsonNode getUser(HttpServletRequest httpServletRequest, @PathVariable(value = "id") long userId) throws IOException {
JSONObject response = new JSONObject();
User user = new User();
try {
user = userService.getUserByUserId(userId);
if (user != null) {
response = utility.createResponseObject(200, KeyWord.SUCCESS, new JSONObject(utility.convertPOJOtoString(user)));
} else {
response = utility.createResponseObject(500, KeyWord.ERROR, new JSONObject());
}
} catch (Exception e) {
return objectMapper.readTree(utility.createResponse(500, KeyWord.ERROR, e.toString()).toString());
}
return objectMapper.readTree(response.toString());
}
Услуги
public User getUserByUserId(long userId) {
return userRepository.findById(userId);
}
Репозиторий
@Repository
public interface UserRepository extends JpaRepository<User, Long> {
}
Я подчеркиваю красным над
public User getUserByUserId(long userId) {
return userRepository.findById(userId);
}
здесь.
Что я делаю неправильно? было бы здорово, если бы вы могли помочь.