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

南京网站建设 雷相册制作软件

南京网站建设 雷,相册制作软件,网软志成个人商城网站,外贸公司推广方案1. 循环分页或者循环进行部分读取处理数据的时候#xff0c;使用 session.clear() ; 2. 对应1N#xff08;N1#xff09;问题使用如下解决方式#xff1a; 1#xff09;#xff1a; 使用createCriteria进行查询(join fetch) 2#xff09;#xff1a;HQL - joi… 1.   循环分页或者循环进行部分读取处理数据的时候使用 session.clear() ;   2.    对应1NN1问题使用如下解决方式 1 使用createCriteria进行查询(join fetch) 2HQL - join fetch 3 使用fetch设置LAZY 4在Entity下使用注解BatchSize(size5) BatchSize  指定每次 读 取数据的数量   3. List 与 iterate 进行遍历取出数据库数据的list(); 区别1List 直接取出对象       iterate先会取出组件需要使用才会使用   区别2同一个session中每次执行list()取出数据时都会发送SQL语句但是iterate只会发出一条默认会去session缓存去找   4. 缓存session级别的缓存称为一级缓存每个session都有独立的一级缓存例如多个线程同时取同一个对象数据 解决方案建立一个共用的总缓存总缓存二级缓存如果找不到然后再到各自的session一级混村中寻找具体操作如下首先看缓存策略 type 其中memory支持缓存内存中disk支持缓存存放硬盘中 Cluster Safe 是否支持使用在集群环境 Query Cache Supported是否支持查询缓存3级缓存 假设使用EhCacheProvider二级缓存 1修改hibernate.cfg.xml配置文件 ? 1 2 property namecache.use_second_level_cachetrue/property property namecache.provider_classorg.hibernate.cache.EhCacheProvider/property 2 在/hibernate-distribution-3.3.2.GA/project/etc/ehcache.xml 配置文件拷贝到项目中 在ehcache.xml中默认如下设置 ? 1  diskStore pathjava.io.tmpdir/ ? 1 2 3 4 5 6 7 defaultCache    maxElementsInMemory10000    eternalfalse    timeToIdleSeconds120    timeToLiveSeconds1200    overflowToDisktrue    / maxElementsInMemory:在内存中最多缓存的对象数量 eternal: 缓存内存对象是否永久保存不删除 timeToIdleSeconds:  当timeToIdleSeconds 周期时间没有被使用过自动清除掉秒 timeToLiveSeconds: 缓存对象的生存时间秒后自动清楚 overflowToDisk溢出的时候是否放置在硬盘上 diskStore  path:默认临时存放硬盘缓存的路径 注意cache namesampleCache1    / 可以自定义cache名不自定义不指定默认是用 defauleCache   ..... / 3将类使用二级缓存直接在Entity下使用注解    Cache  其设置如下 常用的READ_ONLY (只读), READ_WRITE读写 其中Cache(region) 使用自定义ehcache.xml的自定义缓存策略设置 4加入ehcache的jar包路径如下/hibernate-distribution-3.3.2.GA/lib/optional/ehcache/ehcache.jar 加入 commons-logging.jar包              1.    放入二级缓存如下规则                    a)   经常访问  b) 不经常改动改动不大 c) 数据不是很大 例如用户权限 2.     load 默认使用二级缓存iterate 默认使用二级缓存 3. list 默认往二级缓存加数据list查询的使用不使用缓存 4. 如果要 query 查询语句使用二级缓存需要打开查询缓存同样的重复的查询 1 hibernate.cfg.xml配置文件加入配置 property namecache.use_query_cachetrue/property 2) 使用Query的setCachable(true) 方法指明使用二级缓存 ;   5.    缓存算法LRU 、 LFU 、 FIFO LRU 最近最少被使用的 时间 LFU 使用率比较少的次数 FIFO按照数据从0开始拿走堆栈 设置方法在ehcache.xml继续设置一个参数 memoryStoreEvictionPolicyLRU   6. 事务隔离机制为了避免事务并发出现的问题 1. read-uncommitted : 能读取没有提交的数据 【会出现脏读等问题一般不设置此种】 2. read-committed :  只有提交后才读Hibernate建议使用【能解决脏读但会出现不可重复读和幻读问题手动解决】 3. repeatable read :      加锁MySQL默认使用 repeatable read  4. serializable :   序列化解决任何问题但是效率最低 MySQL 支持这四种事务隔离机制 事务隔离级别越高效率越慢 使用 select tx_isolation;  查询事务隔离机制      设置隔离机制 set session tx_isolationxxx;     Hibernate解决并发事务方案使用Hibernate悲观锁和乐观锁进行设置 1事务机制的值为1248 ps. 二进制为0001 ,0010,0100,1000 这样算法效率高 1.a使用悲观锁(依赖于数据库的锁 解决 repeatable read问题) 在读取load数据的时候加入第三个参数 session.load(xxx.class, 1,LockMode.xxx); LockMode的值如下 一般只设置LockMode.UPGRADE 原因 NONE 无锁的机制Transaction结束时切换到此模式 READ 在查询的时候 hibernate会自动获取锁 write insert update hibernate 会自动获取锁 以上 3种锁的模式是hibernate内部使用的 UPGRADE—NOWAIT -是oracle数据库 支持的锁        1.b使用乐观锁(程序内使用字段version进行加锁与数据库没有关系) 可以定义一个version属性然后在getVersion上使用注解 Version 注意当并发的时候会报错那么找个错误交给我们自己来处理          悲观与乐观悲观一开始就进行加锁不论是否有其他事务来同时并发但是乐观锁则不进行直接加锁而是等待更新时候进行检查对比下如果与去之前version不一致那么更新下即可乐观锁效率高 本文转自 xiaominghimi 51CTO博客原文链接http://blog.51cto.com/xiaominghimi/969788如需转载请自行联系原作者
http://www.sadfv.cn/news/229382/

相关文章:

  • 产品网站设计理念外贸网站建设软件
  • 官方网站的必要性wordpress商城建站教程
  • 昆明建站专家网站做网络营销
  • 外贸自建网站wordpress 页面404
  • 网站制作的分割线怎么做淘宝关键词排名
  • 自助搭建网站centos wordpress安装教程
  • 免费申请网站 主机 空间跟我一起做网站 下载
  • 手机网站建设哪家优惠校园网站建设价格
  • 郑州做网站电话深圳画册设计印刷公司
  • 1 建设网站目的是什么意思wordpress 禁用响应
  • 做户外的网站合肥最新消息今天
  • 常州市中大建设工程有限公司网站建筑网络工程教程
  • 营销型网站审定标准建设网站需要准备什么手续
  • 做的网站打不开百度网址是多少
  • jsp网站 值班功能微信h5页面制作小程序
  • 电子商务网站开发计划书中学生在哪里学编程最好
  • 淘宝做导航网站有哪些功能网站源模板
  • 做网站每天任务及实训过程安卓排名优化
  • 分销平台网站建设如何打造网站
  • 宜昌商城网站建设阳江房产网签
  • 怎么给网站做备案做视频网站什么平台好
  • 怎样提高网站转化率网站接入服务提供商
  • 免费空间网站怎么做的建设银行移动门户网站
  • 网站里添加百度地图企业展厅设计公司哪家好怎么样
  • 网站推广站群晖wordpress只能访问首页
  • 找人做彩票网站有哪些平面设计师必看的网站
  • 网站友情链接购买网站dns
  • 网站平台建设所需开发工具seo上海培训
  • asp.net网站开发 pdf网址信息查询
  • 文本文档写入代码做网站网站定制设计价目表