当前位置: 首页 > news >正文

wordpress建数据库天津网站优化多少钱

wordpress建数据库,天津网站优化多少钱,网站关键词推广企业,wordpress 微信小程序特别说明#xff1a;由于二级缓存是基于Mapper的#xff0c;当你在不同的mapper中查询了相同的数据#xff0c;例如不同的Mapper中有多表查询时结果中有相同的数据#xff0c;当其中一个Mapper进行插入更新缓存时#xff0c;另一个并没有插入更新#xff0c;那么使用两个…特别说明由于二级缓存是基于Mapper的当你在不同的mapper中查询了相同的数据例如不同的Mapper中有多表查询时结果中有相同的数据当其中一个Mapper进行插入更新缓存时另一个并没有插入更新那么使用两个mapper查询出来的数据会出现数据不一致的情况所以MyBatis默认的二级缓存的实现方式需要慎用也因此MyBatis的二级缓存都默认关闭。主要步骤(基于springbootmybatis)1 导入依赖org.mybatis.spring.bootmybatis-spring-boot-starter1.3.2mysqlmysql-connector-java5.1.8org.mybatis.cachesmybatis-ehcache1.1.02 开启全局缓存开启全局配置3 配置ehcache.xml注意ehcache.xml必须放在classpath路径下并且名字必须是ehcache.xml(因为CacheManager默认就是加载classpath路径下的ehcache.xml文件当然也可以自己设置这就需要自己继承EhcacheCache自己写逻辑)maxElementsInMemory10000maxElementsOnDisk0eternaltrueoverflowToDisktruediskPersistenttruetimeToIdleSeconds0timeToLiveSeconds0diskSpoolBufferSizeMB50diskExpiryThreadIntervalSeconds120memoryStoreEvictionPolicyLFU/nameuser_cachemaxElementsInMemory5000overflowToDiskfalsediskPersistenttruetimeToIdleSeconds1800timeToLiveSeconds1800memoryStoreEvictionPolicyLRU/这里最重要的就是默认缓存配置因为CacheManager.addCache(name)添加的缓存就是通过默认配置创建的具体每个属性代表的意思可以查询Ehcache的属性配置网上很多这里不细述。4 在mapper中开启缓存并指定使用Ehcache在一个mapper中通过以下代码添加缓存。假设通过引入缓存的mapper的namespache为“com.dahuici.zyb.Dao.UserDao”其他mapper可以通过如下标签与其共享缓存。通过与配合使用可以让所有的mapper都共用一个缓存。特别提示如果使用的是mybatis-plus使用上面的步骤配置的话会发现调用mybatis-plus已经封装好的api缓存无效只有自己在mapper中定义的sql方法才有效。个人理解就是这些api是mybatis-plus自己封装好的封装的时候没有开启缓存解决办法是如下在dao层使用注解引用其他mapper的缓存共享缓存mybatis-plus共享缓存EhcacheCache源代码研究public class EhcacheCache extends AbstractEhcacheCache {public EhcacheCache(String id) {super(id);if (!CACHE_MANAGER.cacheExists(id)) {//根据默认配置创建缓存CACHE_MANAGER.addCache(id);}this.cache CACHE_MANAGER.getEhcache(id);}}对于mybatis也可以自定义缓存只需实现org.apache.ibatis.cache接口需要注意的是必须要有一个传入String类型的一个构造方法mybatis会自动调用并将namespace的值作为id传入。package org.apache.ibatis.cache;import java.util.concurrent.locks.ReadWriteLock;public interface Cache {//获取缓存idString getId();//往缓存中放入对象void putObject(Object key, Object value);//获取对象Object getObject(Object key);//移除对象Object removeObject(Object key);//清除缓存数据void clear();//获取缓存尺寸int getSize();//获取读写锁ReadWriteLock getReadWriteLock();}
http://www.pierceye.com/news/436191/

相关文章:

  • 怎么做提货网站auto post wordpress
  • 销售网站怎么做的购物网站建设多少钱
  • 泉州网站关键词排名新乡手机网站建设公司
  • 服务器网站建设软件有哪些电子公章在线制作网站
  • 临沂定制网站建设公司金蝶erp软件
  • 企业网站建设需要提供什么内容电子商务网站搜索引擎设计
  • 免费关键词挖掘网站微信网页版下载 官方
  • 品牌设计公司品牌设计公司排名百家号优化上首页
  • 广州网站车管所深圳东门大厦
  • 门户网站 建设商 排名网站下载的视频怎么变成本地视频
  • 国外品牌设计网站中华始祖堂室内设计
  • 建设网站服务无极最新招聘
  • 广东省建设教育协会是什么网站揭东建设局网站
  • 那家专门做特卖的网站godaddy 搭建网站
  • 网络舆情处置的五个步骤新人学会seo
  • 网站开发要做什么在线网页转pdf
  • 购物网站开发教程中文如何调整wordpress页面的顺序
  • 网站网页设计制作教程成都外贸seo
  • 网站开发的资料设备英国搜索引擎
  • 什么样企业需要网站建设网络规划毕业设计
  • 广东制作公司网站和谐校园网站建设
  • 找潍坊做网站的h5用什么软件做的
  • 南宁网站推广费用0505网页制作与网站建设
  • 2345电视剧网站免费电子营业执照
  • 河北省沧州建设厅网站怎样保存网站资料 做证据
  • 网站同时做竞价和优化可以吗做网站游戏推广赚钱吗
  • 台州建站模板搭建上海远程教育网站设计与开发公司
  • 网站如何做淘客类似58同城分类信息网站开发
  • 网站源码文件安装教程苏州网站建设致宇
  • 免费注册域名网站知乎做网站做图电脑需要什么配置