微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Mapper的XML配置文件之设置settings

这是MyBatis 修改操作运行过程细节的重要的步骤。下方这个表格描述了这些设置项、含义和认值。


下面列出关于设置的完整例子:

<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE sqlMapConfig PUBLIC "-//iBATIS.com//DTD sql Map Config 2.0//EN" "http://www.ibatis.com/dtd/sql-map-config-2.dtd">
<sqlMapConfig>
    <!-- 参数说明: cacheModelsEnabled: 启用或禁用sqlMapClient的所有缓存model。调试程序时使用。 enhancementEnabled: 启用或禁用运行时字节码增强,以优化访问Java Bean属性性能,同时优化延迟加载 的性能。 lazyLoadingEnabled: 启用或禁用sqlMapClient的所有延迟加载。调试程序时使用。 maxRequests: 同时执行sql语句的最大线程数。大于这个值的线程将阻塞直到另一个线程执行完成。 不同的DBMS有不同的限制值,但任何数据库都有这些限制。通常这个值应该至少是 maxTransactions的10倍,并且总是大于maxSessions和maxTranactions。减小这个参数值通常能提高性能。 maxSessions: 同一时间内活动的最大session数。一个session可以是代码请求的显式session, 也可以是当线程使用sqlMapClient实例(即执行一条语句)自动获得的session。 它应该总是大于或等于maxTransactions并小于maxRequests。减小这个参数值通常能 减少内存使用。 maxTransactions: 同时进入sqlMapClient.startTransaction()的最大线程数。大于这个值的线程将阻塞 直到另一个线程退出。不同的DBMS有不同的限制值,但任何数据库都有这些限制。这个 参数值应该总是小于或等于maxSessions并总是远远小于maxRequests。减小这个参数值 通常能提高性能。 useStatementNamespaces: 如果启用本属性,必须使用全限定名来引用mapped statement。Mapped statement的 全限定名由sql-map的名称和mapped-statement的名称合成,例如 queryForObject(“sqlMapName.statementName”) -->
    <settings cacheModelsEnabled="true" enhancementEnabled="false" lazyLoadingEnabled="false" maxRequests="3000" maxSessions="3000" maxTransactions="3000" useStatementNamespaces="false"/>
    <sqlMap resource="sqlmap-mapping-auto.xml"/>
    <sqlMap resource="sqlmap-mapping-pcs.xml" />
    <sqlMap resource="sqlmap-mapping-offer.xml"/>
    <sqlMap resource="sqlmap-mapping-order.xml"/>
    <sqlMap resource="sqlmap-mapping-payment.xml"/>
    <sqlMap resource="sqlmap-mapping-task.xml"/>
    <sqlMap resource="sqlmap-mapping-renewal.xml"/>
    <sqlMap resource="sqlmap-mapping-service-collection.xml"/>

</sqlMapConfig>

原文地址:https://www.jb51.cc/xml/294614.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。