我有这个实体:
@Entity
@Table
public class Terminals implements Serializable {
private static final long serialVersionUID = 5288308199642977991L;
@Id
@GeneratedValue(strategy = GenerationType.AUTO)
@Column(name = "id", updatable = false, nullable = false)
private Long id;
@Column
private int merchant_id;
@Column
private String terminalToken;
.....
}
我尝试使用此查询:
public Terminals getTerminalToken(String terminalToken) throws Exception {
return entityManager.find(Terminals.class, terminalToken);
}
看起来它只选择了表键。
如何选择表格列terminalToken
?
最佳答案
你最好使用Spring data与 JPA Repositories 一起构建您的查询。您只需要扩展 JpaRepository
接口(interface),并遵循命名约定来命名您的方法。
您的方法将如下所示:
public List<Terminal> findByTeminalToken(String TerminalToken);
否则,您将需要使用 entityManager.createQuery()
方法而不是 entityManager.find()
,因为后者仅与 id< 一起使用
列。
关于java - JPA中使用WHERE查询实体,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51515556/