Первый уровень кеша не работает Spring-Boot с JPA - PullRequest
0 голосов
/ 23 апреля 2019

Я новичок в использовании весенней загрузки и JPA с кешем (кеш 1-го и 2-го уровня) У меня в проекте настроен весенний загрузчик стартера и JPA. Я пытаюсь использовать кэш первого уровня. но это не работает.

@Service
public class CacheService {

@Autowired
EntityManagerFactory emf;

public CacheEntity getAll(){
EntityManager em =emf.createEntityManager();
EntityTransaction emt = em.getTransaction();
emt.begin();
CacheEntity trainer = em.find(CacheEntity.class, "TRAINER-0005");

CacheEntity trainer1 =em.find(CacheEntity.class, "TRAINER-0005");

emt.commit();
em.close();
return trainer;

}
}

Вот мой класс сущности определяется как:

@Entity
@Table(name = "TRAINER")
public class CacheEntity {

@Id
@Column(name = "TRAINIID")
private String trainiId;

@Column(name = "FIRSTNAME")
private String trinifirstname;

@Column(name = "LASTNAME")
private String trainilastname;

@Column(name = "PHONENUMBER")
private String trainiphno;

@Column(name = "STATE")
private String trainistate;

@Column(name = "CITY")
private String trainicity;

@Column(name = "QUALIFICATION")
private String trainiqualification;
}

Я пытаюсь получить данные из базы данных с тем же первичным ключом, но запрос выполняется дважды, поскольку вы, любой из вас, знаете, какую ошибку я допустил, исправьте меня.

Hibernate: выберите cacheentit0_.TRAINIID в TRAINIID1_12_0_, cacheentit0_.CITY как CITY2_12_0_, cacheentit0_.LASTNAME как LASTNAME3_12_0_, cacheentit0_.PHONENUMBER как PHONENUM4_12_0_, cacheentit0_.QUALIFICATION как QUALIFIC5_12_0_, cacheentit0_.STATE как STATE6_12_0_, cacheentit0_.FIRSTNAME как FIRSTNAM7_12_0_ от cacheentit0_ трейнер где cacheentit0_.TRAINIID =?

Hibernate: выберите cacheentit0_.TRAINIID в TRAINIID1_12_0_, cacheentit0_.CITY как CITY2_12_0_, cacheentit0_.LASTNAME как LASTNAME3_12_0_, cacheentit0_.PHONENUMBER как PHONENUM4_12_0_, cacheentit0_.QUALIFICATION как QUALIFIC5_12_0_, cacheentit0_.STATE как STATE6_12_0_, cacheentit0_.FIRSTNAME как FIRSTNAM7_12_0_ от cacheentit0_ трейнер где cacheentit0_.TRAINIID =?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...