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

企业为什么要建站台呢免费创意logo一键生成器

企业为什么要建站台呢,免费创意logo一键生成器,黄浦企业网站制作,wordpress 压缩图片延迟加载 分步查询的优点#xff1a;可以实现延迟加载#xff0c;但是必须在核心配置文件中设置全局配置信息#xff1a;lazyLoadingEnabled#xff1a;延迟加载的全局开关。当开启时#xff0c;所有关联对象都会延迟加载 aggressiveLazyLoading#xff1a;当开启时可以实现延迟加载但是必须在核心配置文件中设置全局配置信息lazyLoadingEnabled延迟加载的全局开关。当开启时所有关联对象都会延迟加载 aggressiveLazyLoading当开启时任何方法的调用都会加载该对象的所有属性。 否则每个属性会按需加载 此时就可以实现按需加载获取的数据是什么就只会执行相应的sql。此时可通过association和collection中的fetchType属性设置当前的分步查询是否使用延迟加载fetchType“lazy(延迟加载)|eager(立即加载)” settings!--开启延迟加载--setting namelazyLoadingEnabled valuetrue/ /settingsTest public void getEmpAndDeptByStepOne() {获取mappermapper.getEmpAndDeptByStepOne(1);System.out.println(emp.getEmpName()); }关闭延迟加载两条SQL语句都运行了 开启延迟加载只运行获取emp的SQL语句 Test public void getEmpAndDeptByStepOne() {获取mapperEmp emp mapper.getEmpAndDeptByStepOne(1);System.out.println(emp.getEmpName());System.out.println(----------------);System.out.println(emp.getDept()); }开启后需要用到查询dept的时候才会调用相应的SQL语句 fetchType当开启了全局的延迟加载之后可以通过该属性手动控制延迟加载的效果fetchType“lazy(延迟加载)|eager(立即加载)” resultMap idempAndDeptByStepResultMap typeEmpid propertyeid columneid/idresult propertyempName columnemp_name/resultresult propertyage columnage/resultresult propertysex columnsex/resultresult propertyemail columnemail/resultassociation propertydeptselectcom.mybatis.mapper.DeptMapper.getEmpAndDeptByStepTwocolumndidfetchTypelazy/association /resultMapMyBatis的缓存 MyBatis的一级缓存 一级缓存是SqlSession级别的通过同一个SqlSession查询的数据会被缓存下次查询相同的数据就会从缓存中直接获取不会从数据库重新访问 使一级缓存失效的四种情况 不同的SqlSession对应不同的一级缓存同一个SqlSession但是查询条件不同同一个SqlSession两次查询期间执行了任何一次增删改操作同一个SqlSession两次查询期间手动清空了缓存 MyBatis的二级缓存 二级缓存是SqlSessionFactory级别通过同一个SqlSessionFactory创建的SqlSession查询的结果会被缓存此后若再次执行相同的查询语句结果就会从缓存中获取 二级缓存开启的条件 在核心配置文件中设置全局配置属性cacheEnabled“true”默认为true不需要设置在映射文件中设置标签二级缓存必须在SqlSession关闭或提交之后有效查询的数据所转换的实体类类型必须实现序列化的接口 使二级缓存失效的情况两次查询之间执行了任意的增删改会使一级和二级缓存同时失效 二级缓存的相关配置 在mapper配置文件中添加的cache标签可以设置一些属性eviction属性缓存回收策略LRULeast Recently Used – 最近最少使用的移除最长时间不被使用的对象。 FIFOFirst in First out – 先进先出按对象进入缓存的顺序来移除它们。SOFT – 软引用移除基于垃圾回收器状态和软引用规则的对象。WEAK – 弱引用更积极地移除基于垃圾收集器状态和弱引用规则的对象。默认的是 LRU flushInterval属性刷新间隔单位毫秒默认情况是不设置也就是没有刷新间隔缓存仅仅调用语句增删改时刷新size属性引用数目正整数代表缓存最多可以存储多少个对象太大容易导致内存溢出readOnly属性只读true/falsetrue只读缓存会给所有调用者返回缓存对象的相同实例。因此这些对象不能被修改。这提供了很重要的性能优势。 false读写缓存会返回缓存对象的拷贝通过序列化。这会慢一些但是安全因此默认是false MyBatis缓存查询的顺序 先查询二级缓存因为二级缓存中可能会有其他程序已经查出来的数据可以拿来直接使用如果二级缓存没有命中再查询一级缓存如果一级缓存也没有命中则查询数据库SqlSession关闭之后一级缓存中的数据会写入二级缓存 整合第三方缓存EHCache了解 添加依赖 !-- Mybatis EHCache整合包 -- dependencygroupIdorg.mybatis.caches/groupIdartifactIdmybatis-ehcache/artifactIdversion1.2.1/version /dependency !-- slf4j日志门面的一个具体实现 -- dependencygroupIdch.qos.logback/groupIdartifactIdlogback-classic/artifactIdversion1.2.3/version /dependency各个jar包的功能 jar包名称作用mybatis-ehcacheMybatis和EHCache的整合包ehcacheEHCache核心包slf4j-apiSLF4J日志门面包logback-classic支持SLF4J门面接口的一个具体实现 创建EHCache的配置文件ehcache.xml 名字必须叫ehcache.xml ?xml version1.0 encodingutf-8 ? ehcache xmlns:xsihttp://www.w3.org/2001/XMLSchema-instancexsi:noNamespaceSchemaLocation../config/ehcache.xsd!-- 磁盘保存路径 --diskStore pathD:\atguigu\ehcache/defaultCachemaxElementsInMemory1000maxElementsOnDisk10000000eternalfalseoverflowToDisktruetimeToIdleSeconds120timeToLiveSeconds120diskExpiryThreadIntervalSeconds120memoryStoreEvictionPolicyLRU/defaultCache /ehcache设置二级缓存的类型 在xxxMapper.xml文件中设置二级缓存类型 cache typeorg.mybatis.caches.ehcache.EhcacheCache/加入logback日志 存在SLF4J时作为简易日志的log4j将失效此时我们需要借助SLF4J的具体实现logback来打印日志。创建logback的配置文件logback.xml名字固定不可改变 ?xml version1.0 encodingUTF-8? configuration debugtrue!-- 指定日志输出的位置 --appender nameSTDOUTclassch.qos.logback.core.ConsoleAppenderencoder!-- 日志输出的格式 --!-- 按照顺序分别是时间、日志级别、线程名称、打印日志的类、日志主体内容、换行 --pattern[%d{HH:mm:ss.SSS}] [%-5level] [%thread] [%logger] [%msg]%n/pattern/encoder/appender!-- 设置全局日志级别。日志级别按顺序分别是DEBUG、INFO、WARN、ERROR --!-- 指定任何一个日志级别都只打印当前级别和后面级别的日志。 --root levelDEBUG!-- 指定打印日志的appender这里通过“STDOUT”引用了前面配置的appender --appender-ref refSTDOUT //root!-- 根据特殊需求指定局部日志级别 --logger namecom.atguigu.crowd.mapper levelDEBUG/ /configurationEHCache配置文件说明 属性名是否必须作用maxElementsInMemory是在内存中缓存的element的最大数目maxElementsOnDisk是在磁盘上缓存的element的最大数目若是0表示无穷大eternal是设定缓存的elements是否永远不过期。 如果为true则缓存的数据始终有效 如果为false那么还要根据timeToIdleSeconds、timeToLiveSeconds判断overflowToDisk是设定当内存缓存溢出的时候是否将过期的element缓存到磁盘上timeToIdleSeconds否当缓存在EhCache中的数据前后两次访问的时间超过timeToIdleSeconds的属性取值时 这些数据便会删除默认值是0,也就是可闲置时间无穷大timeToLiveSeconds否缓存element的有效生命期默认是0.,也就是element存活时间无穷大diskSpoolBufferSizeMB否DiskStore(磁盘缓存)的缓存区大小。默认是30MB。每个Cache都应该有自己的一个缓冲区diskPersistent否在VM重启的时候是否启用磁盘保存EhCache中的数据默认是falsediskExpiryThreadIntervalSeconds否磁盘缓存的清理线程运行间隔默认是120秒。每个120s 相应的线程会进行一次EhCache中数据的清理工作memoryStoreEvictionPolicy否当内存缓存达到最大有新的element加入的时候 移除缓存中element的策略。 默认是LRU最近最少使用可选的有LFU最不常使用和FIFO先进先出
http://www.dnsts.com.cn/news/235786.html

相关文章:

  • 保定网络营销网站网站开发工具 枫子科技
  • 个人承接网站开发项目wordpress 用途
  • 网站建设与维护 许宝良青岛网站建设软件下载
  • 免费数据统计网站做国外的营销的网站
  • 永久不收费免费的软件网站关键词seo推广公司哪家好
  • wordpress 4.9.8官方版哈尔滨百度关键词优化
  • 服装毕业设计代做网站竞价培训哪家比较好
  • 中山祥云网站建设电子商务网站建设实训过程
  • 网站开发当前城市定位功能网站型营销
  • 网站空间域名申请网站wordpress修改页面标题显示
  • 如何创建个人网站英语作文桂林网站开发公司
  • 有没有免费制作网站的wordpress后台登陆地址修改
  • 网站主机要怎么做吉林住房和城乡建设部网站
  • 宁波网站建设xpckj响应式网页怎么设计
  • 网站怎么搭建wordpress不填标题无法发布
  • 做国际网站注册网站费用明细
  • 公司部门解散员工赔偿站长seo软件
  • 县科协微网站建设怎样建立一个营销网站
  • 做seo时网站发文目的贵阳网站建设兼职
  • 免费网站入口网站免费进ps软件怎样制作网页新手自学入门
  • wordpress多页面在一个页面优化网站排名怎么样
  • 运营好网站简述网站推广方式
  • 多语种网站怎么做搜索引擎排名西安网站开发公司地址
  • 怎么登录住房城乡建设部网站页游中心
  • 比较好的室内设计网站东莞市做网络维护的公司
  • 网站到期续费通知谷歌seo网站怎么做产品分类
  • 公司销售网站怎么做wordpress divi 教程
  • jquery网站模板下载西安公司网站如何建设
  • 电商网站建设方案邢台网络招聘
  • 企业网站模板下载网站模板下载仿牌外贸网站推广