Я новичок в весенней загрузке jpa. Я хотел бы получить тип возврата в виде списка, но я получаю только список
Мой класс сущностей
@Component
@Entity
@Table(name = "USERDB.USERS")
public class User() {
@Id
@GeneratedValue(strategy = GenerationType.SEQUENCE, generator = "MY_SEQ")
@SequenceGenerator(sequenceName = "MY_SEQ_NAME", allocationSize = 1), name = "MY_SEQ")
@Column(name = "userId")
private long id;
@Column(name = "firstName")
private String fName;
@Column(name = "midName")
private String mName;
@Column(name = "lastName")
private String lName;
@Column(name = "email")
private String email;
@Column(name = "createdDate")
private Timestamp createdOn;
public User() {
this.createdOn = new Timestamp(System.currentTimeMillis()
}
//SETTERS & GETTERS
}
Мой репозиторий;
public interface UserRepository extends JpaRepository<User, String> {
@Query("SELECT id fName, lastName, email FROM User u WHERE u.fName=(:fName)")
public List<User> findByEmail(@Param("fName") String fName);
}
Все, что я хотел, это получить ответ json в виде массива пользователя с парой ключ-значение, как показано ниже
[
[
"id": 1001,
"fName": John",
"lName": "Doe",
"email": "johnd@example.com"
],
[
"id": 1002,
"fName": "John",
"lName": "Simmons",
"email": "johns@example.com"
],
]
, но я получаю список с только значениями, как показано ниже.
[
[
1001,
"John",
"Doe",
"johnd@example.com"
],
[
1002,
"John",
"Simmons",
"johns@example.com"
],
]
Я не уверен, где я делаю неправильно, или это то, как я должен получить? Это гипотетический пример моей настоящей программы. Пожалуйста, извините за любые ошибки.
Вот мой класс контроллера
@Restcontroller
public class UserController {
@Autowired
UserRepository repo;
@GetMapping("/user/{fname}")
public List<User> getUserByName(
@PathVariable("fname") String fname) {
return repo.findByEmail(fname);
}
}