鉴于此 Hibernate 代码段
@org.hibernate.annotations.NamedQueries({
@org.hibernate.annotations.NamedQuery(
name = "ASSIGNED_CONTINGENCIES",
query = "select ctg.id from Cont ctg join ctg.labels cl where cl.id = :label_id and ctg.datasetId = tscommon.rdsidtodsid(:datasetting_id)...."
)
})
这是否意味着每次我执行此操作时,每次都会创建“查询”字符串还是这是字符串驻留的情况?在 final static String QUERY
中进行查询,然后在 @NamedQuery
中使用它是否有益?那么同样的情况也适用于“name”吗?
最佳答案
字符串是字符串文字,因此在加载类时始终会被保留。
关于java - 关于 Hibernate 中查询的字符串创建以及这些查询如果是最终静态是否会减少对象创建,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1506865/