jpa缓存导致无法查询到更新后的数据&android出现ANR的一个解决办法

Posted f91og

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了jpa缓存导致无法查询到更新后的数据&android出现ANR的一个解决办法相关的知识,希望对你有一定的参考价值。

1. 向服务器更新记录后查询,始终查询不到更新后的信息

只能查到更新之前的,马上推断出是缓存的问题。网上搜索一番,将问题定位为jpa缓存,我们要设置jpa查询时不从缓存中取,直接从数据库中取,这样便能保证查询到的结果是最新的,但是性能可能会有所影响。参考资料:https://en.wikibooks.org/wiki/Java_Persistence/Caching#JPA_2.0_Cache_APIs

 如上图提示,我在restful服务器做了如下设置后便可以了。

 

2. 安卓app注册界面出新了ANR(应用程序无法响应)问题

原因在于邮箱验证的正则表达式写的太复杂,再加上学校的邮箱太长,导致验证操作很耗时,在安卓的ui线程(主线程)中如果有什么耗时导致阻塞的操作的话貌似就会产生这个问题。解决方法很简单:简化正则表达式。

 

以上是关于jpa缓存导致无法查询到更新后的数据&android出现ANR的一个解决办法的主要内容,如果未能解决你的问题,请参考以下文章

变异后的Apollo缓存未更新

mybatis缓存问题导致无法查询到数据

IE浏览器下AJAX缓存问题导致数据不更新的解决办法

Redis缓存穿透 解析

在 Spring Data JPA 中更新和返回数据

Spring data jpa删除元素时必须先查询出来吗