I need to get user information by ID and by Username. Can I have 2 requests like this?
@GetMapping("/user/{id}")
public User getUser(@PathVariable Long id) {
return userRepository.getOne(id);
}
@GetMapping("/user/{username}")
public User getUser(@PathVariable String username) {
return userRepository.findUserByUsername(username);
}
public interface UserRepository extends JpaRepository<User,Long>{
@Query("SELECT u FROM u WHERE username= :#{username}")
User findUserByUsername(@Param("username") String username);
}
Error: findUserByUsername(java.lang.String) but parameter 'Optional[username]' not found in annotated query 'SELECT u FROM u WHERE username= :#{username}'!