假设我有这张表
CREATE TABLE person(
person_id INT AUTO_INCREMENT PRIMARY KEY,
first_name VARCHAR(50),
last_name VARCHAR(50),
x_cordinates INT,
y_cordinates INT
);
我以前用过
Person person = EntityManager.find(Person.class, primaryKey);
但是这个实例中的主键是自动递增的,是否可以使用其他列(例如 first_name 和 last_name)来获取主键以及其他值?
最佳答案
您可以像这样创建一个 NamedQuerry:
@NamedQuery(name="person.findAll", query="SELECT p FROM Person p WHERE like :first_name")
并且可以像这样给“first_name”赋值:
query.setParamter("fist_name", "%name%");
你可以阅读这个 documentation .
关于java - 当主键自动递增时,如何使用 JPA (EclipseLink) 从数据库中获取特定的 "row"?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36886016/