我有这个实体,它的ID定义在可识别类。
InventoryLoad的主键为InventoryLoadID
public class InventoryLoad extends AbstractIdentifiable<InventoryLoadId> implements Auditable {
@OneToMany(mappedBy = "inventoryLoad")
private Set<InventorySubLoad> inventorySubLoads = Sets.newLinkedHashSet();
@ManyToOne(fetch = FetchType.LAZY, optional = false)
@JoinColumns({
@JoinColumn(name = "stoloc", referencedColumnName = "stoloc"),
@JoinColumn(name = "wh_id", referencedColumnName = "wh_id")
})
private Location location;
@Column(name = "lodwgt")
private Double loadWeight;
@Column(name = "prmflg")
private Boolean permanentLoadSubFlag;
}
这是上述类的ID
@Embeddable
public class InventoryLoadId extends AbstractIdentifiableId {
private static final long serialVersionUID = 1L;
@Column(name = "lodnum")
private String loadNumber;
// some another code below
}
我正在使用Criteria builder访问ID类的列。
要使用 Path 来获取此信息以获取 PK 的库存 ID 的路径。
Session session = new HibernateTools().getSession();
CriteriaBuilder criteriaBuilder = session.getCriteriaBuilder();
CriteriaQuery<Object[]> criteriaQuery = criteriaBuilder.createQuery(Object[].class);
Root<InventoryLoad> inventoryLoadRoot = criteriaQuery.from(InventoryLoad.class);
Path<InventoryLoadId> inventoryLoadIdPath = inventoryLoadRoot.get("id");
criteriaQuery.multiselect(inventoryLoadIdPath.get("loadNumber"),
获取此错误
无法定位属性
hibernate中的条件可以与JPA静态元模型配合使用。试着使用它
@Embeddable
public class InventoryLoadId extends AbstractIdentifiableId {
private static final long serialVersionUID = 1L;
@Column(name = "lodnum")
private String loadNumber;
}
@Generated(value = "org.hibernate.jpamodelgen.JPAMetaModelEntityProcessor")
@StaticMetamodel(InventoryLoadId.class)
public abstract class InventoryLoadId_ {
public static volatile SingularAttribute<InventoryLoadId, String> loadNumber;
}
Session session = new HibernateTools().getSession();
CriteriaBuilder criteriaBuilder = session.getCriteriaBuilder();
// create the query
CriteriaQuery<InventoryLoadId> query = criteriaBuilder.createQuery(InventoryLoadId.class);
// set the root class
Root<InventoryLoadId> inventoryLoadRoot = query.from(InventoryLoadId.class);
query.multiselect(inventoryLoadRoot.get(InventoryLoadId_.loadNumber).alias("loadNumber"));
我有一个实体叫做 我正在尝试使用criteriaBuilder和谓词进行搜索 我在这里得到了例外 我曾提出一些类似的问题,但我没有得到任何解决办法。
冬眠5.2.12.1决赛 我想用CriteriaBuilder替换depreracted session.createCriteria(参见org.hibernate.Criteria),我有以下异常 在此ManagedType[com…DonneReference]上找不到具有给定名称[filtre]的属性 上: 其中(builder.equal(root.get(“filter”),filte
所以我有这个kotlin项目: 获取此异常: 有一个小型演示项目:https://github.com/TomGrill/spring-hibernate-bug 应要求:
我试图提供应用程序在Spring与懒惰取实体之间的关系。 模型"用户": “跟踪器”模型 继承了带有@EntityGraph的JPA存储库。通过这一点,我试图为select用户提供与以下相关的所有跟踪器: 存储库类: 和控制器: 查询“/customers/1”可以正常工作。它返回没有跟踪器的所有客户(相应地,延迟获取)。 但是"/顾客/1/with Tracker"返回以下异常:
我的服务类 和我的控制器类:
我正在用JPA和Spring数据映射Hibernate中的实体,当我运行应用程序时,我得到 我有一个超类baseEntity: Spring Boot 2.1.9.发布 Java 11 Hibernate Core 5.3.12.final JPA 2.2