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

有服务器域名源码怎么做网站平台输入搜索内容

有服务器域名源码怎么做网站平台,输入搜索内容,平面设计有哪些,wordpress批量信息导入工具MyBatis不仅提供了一级缓存和二级缓存机制,还支持延迟加载(Lazy Loading),以进一步优化性能。 1. 延迟加载(Lazy Loading) 延迟加载是在需要时才加载数据,而不是在查询时立即加载所有相关数据。…

 MyBatis不仅提供了一级缓存和二级缓存机制,还支持延迟加载(Lazy Loading),以进一步优化性能。

 1. 延迟加载(Lazy Loading)
延迟加载是在需要时才加载数据,而不是在查询时立即加载所有相关数据。这对于提高性能和减少不必要的数据加载有很大的帮助。

配置延迟加载:

在MyBatis的全局配置文件中启用延迟加载:
xml
<settings>
  <setting name="lazyLoadingEnabled" value="true"/>
  <setting name="aggressiveLazyLoading" value="false"/>
</settings>

- `lazyLoadingEnabled`:启用延迟加载。
- `aggressiveLazyLoading`:设置为`false`表示在真正需要时才加载关联对象,设置为`true`则在加载主对象时就立即加载所有关联对象。

 2. 一级缓存(Local Cache)
一级缓存是默认开启的,无需特别配置。它的特性如下:
- 范围:Session级别。
- 生命周期:Session的生命周期内有效,Session关闭或清空时,一级缓存也被清空。
- 刷新机制:执行更新操作后,一级缓存自动清空。

 3. 二级缓存(Global Cache)
二级缓存需要显式配置,适用于跨Session的缓存共享。

配置二级缓存:

在MyBatis的XML映射文件中启用二级缓存:
xml
<mapper namespace="com.example.MyMapper">
  <!-- 启用二级缓存 -->
  <cache/>
  
  <!-- 其他映射配置 -->
</mapper>

在MyBatis的全局配置文件中启用缓存:
xml
<settings>
  <setting name="cacheEnabled" value="true"/>
</settings>

缓存策略和冲突解决:

可以在具体的SQL映射中通过`flushCache`和`useCache`属性来控制缓存的使用和刷新:
xml
<select id="selectUser" resultType="User" useCache="true">
  SELECT  FROM user WHERE id = {id}
</select>

<insert id="insertUser" parameterType="User" flushCache="true">
  INSERT INTO user (name, age) VALUES ({name}, {age})
</insert>

- `useCache`:是否使用二级缓存。
- `flushCache`:执行后是否刷新缓存。

手动清空缓存:

在需要的情况下,可以手动清空缓存来解决数据不一致问题:
java
// 清空一级缓存
sqlSession.clearCache();

// 清空二级缓存
sqlSession.getConfiguration().getCache("com.example.MyMapper").clear();

 配置示例整合

全局配置文件(mybatis-config.xml):
xml
<configuration>
  <settings>
    <setting name="cacheEnabled" value="true"/>
    <setting name="lazyLoadingEnabled" value="true"/>
    <setting name="aggressiveLazyLoading" value="false"/>
  </settings>
</configuration>

映射文件(Mapper XML):
xml
<mapper namespace="com.example.MyMapper">
  <!-- 启用二级缓存 -->
  <cache/>

  <!-- 查询,使用二级缓存 -->
  <select id="selectUser" resultType="User" useCache="true">
    SELECT  FROM user WHERE id = {id}
  </select>
  
  <!-- 插入,刷新缓存 -->
  <insert id="insertUser" parameterType="User" flushCache="true">
    INSERT INTO user (name, age) VALUES ({name}, {age})
  </insert>
</mapper>

通过合理配置延迟加载、一级缓存和二级缓存,MyBatis可以显著提高数据库操作的性能,并减少数据库的负担。在实际应用中,需要根据业务需求和数据访问特点灵活调整这些设置。

http://www.ds6.com.cn/news/101749.html

相关文章:

  • 做暧在线观看网站东莞市民最新疫情
  • 上海网站建设公司电话聊城网站seo
  • 网站建设排序题友情链接交换软件
  • wordpress 数据交互网站seo诊断工具
  • h5动态网站开发全球搜钻是什么公司
  • 做视频链接的网站吗seo优化是什么职业
  • 网站发布到ftp易观数据app排行
  • 联想桥做网站公司天津推广的平台
  • 无锡阳山镇网站建设链接交易网
  • 唐尧文化 网站建设工作总结我国的网络营销公司
  • 百度网站如何做运营长春模板建站代理
  • 用html做简单网站培训机构招生方案
  • 中国室内设计师联盟seog
  • 鲜花网站建设主要内容网页搭建
  • 烟台网站制作效果百度网址链接是多少
  • 网站建设方案平台架构哪里有培训网
  • 电子商务战略选择 网站建设建议外贸自建站的推广方式
  • 做赚钱网站企业网站建设报价
  • phpcms wap网站搭建成品网站源码在线看
  • 平面设计网站有哪些比较好的百度标注平台怎么加入
  • 网址域名注册费用站长工具seo综合查询收费吗
  • 网站提示域名重定向怎么做互联网营销外包公司
  • dw网站制作的一般流程百度网盘登陆入口
  • 开店装修话做那个网站找工人网推公司干什么的
  • 网站top排行榜石家庄百度快照优化排名
  • 深圳做企业网站公司专业seo关键词优化
  • h5网站模板开发关联词有哪些 全部
  • 做网站品牌公司seo网络推广是干嘛的
  • 做网站需要懂什么技术十大营销策划公司排名
  • 在南海建设工程交易中心网站google store