Rob*_*Jan 6 java websphere openjpa
我正在使用带有buildin OpenJPA 1.2.3和Oracle数据库的Websphere Application Server 7.我有以下实体:
@NamedNativeQuery(name=Contract.GIVE_ALL_CONTRACTS,
query="SELECT number, name \n" +
"FROM contracts \n" +
"WHERE startdate <= ?1 \n" +
"AND enddate > ?1",
resultSetMapping = Contract.GIVE_ALL_CONTRACTS_MAPPING)
@SqlResultSetMapping(name = Contract.GIVE_ALL_CONTRACTS_MAPPING,
entities = { @EntityResult(entityClass = Contract.class, fields = {
@FieldResult(name = "number", column = "number"),
@FieldResult(name = "name", column = "name")
})
})
@Entity
public class Contract {
public static final String GIVE_ALL_CONTRACTS = "Contract.giveAllContracts";
public static final String GIVE_ALL_CONTRACTS_MAPPING = "Contract.giveAllContractsMapping";
@Id
private Integer number;
private String name;
public Integer getNumber() {
return number;
}
public String getName() {
return name;
}
}
Run Code Online (Sandbox Code Playgroud)
以下代码检索合同:
Query query = entityManager.createNamedQuery(Contract.GIVE_ALL_CONTRACTS);
query.setParameter(1, referenceDate);
List contracts = query.getResultList();
entityManager.clear();
return contracts;
Run Code Online (Sandbox Code Playgroud)
检索到的合同将传递给Web服务.
在Oracle开发人员中执行此查询大约需要0.35秒才能获得3608条记录.对query.getResultList()的调用大约需要4秒.
使用实体的构造函数中的记录器,它记录了使用相同时间戳创建的大约10-20个实体.然后0,015秒它做了别的事情.我想OpenJPA的东西.
有没有办法加快OpenJPA?或者是唯一的缓存解决方案?
| 归档时间: |
|
| 查看次数: |
2327 次 |
| 最近记录: |