【发布时间】:2021-07-22 07:16:17
【问题描述】:
我正在学习 Spring boot 中的 Udemy 教程。有一部分@Query 没有用于存储库界面中的用户创建的方法。它有效,但我想了解何时 JpaRepository 负责创建查询。在下面的 User 类中,@Table 没有被使用。
findByEmail(String email) 方法无需任何实现/定义即可工作。所以,我的印象是,JpaRepository 自动创建了Select from User where email = emailargument
这就是我所拥有的
一个名为reservation 的数据库与表User
application.properties
spring.datasource.url=jdbc:mysql://localhost:3306/reservation
spring.datasource.username=root
User.java
import javax.persistence.Entity;
@Entity
public class User extends AbstractEntity{
private String firstName;
private String lastName;
private String email;
private String password;
public String getFirstName() {
return firstName;
}
public void setFirstName(String firstName) {
this.firstName = firstName;
}
public String getLastName() {
return lastName;
}
public void setLastName(String lastName) {
this.lastName = lastName;
}
public String getEmail() {
return email;
}
public void setEmail(String email) {
this.email = email;
}
public String getPassword() {
return password;
}
public void setPassword(String password) {
this.password = password;
}
}
UserRepository.java
import org.springframework.data.jpa.repository.JpaRepository;
import com.project.flightreservation.entities.User;
public interface UserRepository extends JpaRepository<User, Long> {
User findByEmail(String email);
}
【问题讨论】:
标签: java spring-boot spring-data-jpa