我是 java EE 的初学者,我需要知道如何在此标准代码中设置分句
public <T> List<T> findEntity(Class<T> entityClass) {
CriteriaQuery<T> criteria = builder.createQuery(entityClass);
Root<T> entityRoot = criteria.from(entityClass);
criteria.select(entityRoot);
criteria.orderBy(order);
return em.createQuery(criteria).getResultList();
}
他们会注意到我在 java ( <T>
) 中使用模板来使此代码与我的数据库中的各种实体一起工作。
然后我传递 sql(在 postgresql 中)代码和实体类。
SQL:
CREATE TABLE activity
(
id integer NOT NULL,
name text NOT NULL,
_modified timestamp without time zone,
_user integer,
_enable boolean,
)
和类实体
public class activity implements Serializable {
private static final long serialVersionUID = 1L;
@Id
@GeneratedValue( strategy = GenerationType.SEQUENCE, generator = "activity_id_activity_seq" )
@SequenceGenerator( name = "actividad_id_actividad_seq", sequenceName = "actividad_id_actividad_seq", allocationSize = 1, initialValue = 110 )
@Column(name = "id")
private Integer id;
@Column(name = "name")
private String name;
@Column(name = "_modified")
@Temporal(TemporalType.TIMESTAMP)
private Date modified;
@Column(name = "_enable")
private Boolean enable;
@Column(name = "_user")
private Integer user;
.......
}
我需要知道的是如何使用方法模板在函数findEntity的代码中添加 where 子句。
条件的 where 子句应该匹配列_Enable,这个列提到的这个列在我的数据库的 4 个表中重复,所以你注意到最好在那个函数中重用代码。
谢谢