<settings
cacheModelsEnabled="true"
lazyLoadingEnabled="false"
enhancementEnabled="true"
maxSessions="64"
maxTransactions="8"
maxRequests="128"
useStatementNamespaces="false"
classInfoCacheEnabled="true"
errorTracingEnabled="true"
defaultStatementTimeout=""
statementCachingEnabled="true"
/>
<!--
maxRequests
同时执行 SQL 语句的最大线程数。大于这个值的线程将阻塞直到另一个线程执行完成。不同的 DBMS有不同的限制值,但任何数据库都有这些限制。通常这个值应该至少是maxTransactions(参见以下)的 10 倍,并且总是大于 maxSessions 和maxTranactions。减小这个参数值通常能提高性能。
例如:maxRequests=“256”
缺省值:512
maxSessions
同一时间内活动的最大 session 数。一个 session 可以maxSessions是代码请求的显式 session,也可以是当线程使用SqlMapClient 实例(即执行一条语句)自动获得的session。它应该总是大于或等于 maxTransactions 并小于 maxRequests。减小这个参数值通常能减少内存使用。
例如:maxSessions=“64”
缺省值:128
maxTransactions
同时进入 SqlMapClient.startTransaction()的最大线程maxTransactions 数。大于这个值的线程将阻塞直到另一个线程退出。不同的 DBMS 有不同的限制值,但任何数据库都有这些限制。这个参数值应该总是小于或等于maxSessions 并总是远远小于 maxRequests。减小这个参数值通常能提高性能。
例如:maxTransactions=“16”
缺省值:32
cacheModelsEnabled
全局性地启用或禁用 SqlMapClient 的所有缓存cacheModelsEnabled model。调试程序时使用。
例如:cacheModelsEnabled=“true”
缺省值:true(启用)
lazyLoadingEnabled
全局性地启用或禁用SqlMapClient的所有延迟加载。lazyLoadingEnabled 调试程序时使用。
例子:lazyLoadingEnabled=“true”
缺省值:true(启用)
enhancementEnabled
全局性地启用或禁用运行时字节码增强,以优化访enhancementEnabled
问Java Bean属性的性能,同时优化延迟加载的性能。
例子:enhancementEnabled=“true”
缺省值:false(禁用)
useStatementNamespaces
如果启用本属性,必须使用全限定名来引用 mapped useStatementNamespaces
statement。Mapped statement 的全限定名由 sql-map 的名称和 mapped-statement 的名称合成。例如: queryForObject("sqlMapName.statementName");
例如:useStatementNamespaces=“false”
缺省值:false(禁用)
defaultStatementTimeout
此设置值必须为一个整数,作为JDBC连接超时的时间,这个值可以被任意一个映射文件的statement属性来重新设置,
如果没有指明,查询将无超时时间限制除非在映射文件中设置statement属性值。被设置的值以秒为单位等待连接失效
classInfoCacheEnabled
With this setting enabled, iBATIS will maintain a cache of introspected
classes. This will lead to a significant reduction in startup time if many
classes are reused.
例如: classInfoCacheEnabled=“true”
缺省值: true (启用)
statementCachingEnabled (iBATIS 2.3.0以后版本中有)
With this setting enabled, iBATIS will maintain a local cache of
prepared statements. This can lead to significant performance
improvements.
例如: statementCachingEnabled=“true”
缺省值: true (启用)
-->
分享到:
相关推荐
在深入探讨SqlMapConfig.xml这个全局配置文件之前,我们先简单回顾一下MyBatis的基本概念和作用。MyBatis避免了几乎所有的JDBC代码和手动设置参数以及获取结果集。MyBatis可以使用简单的XML或注解来配置和映射原生...
SqlSessionFactory sqlSessionFactory = new SqlSessionFactoryBuilder().build(Resources.getResourceAsStream("SqlMapConfig.xml")); SqlSession sqlSession = sqlSessionFactory.openSession(true); dao = new...
4. 编写sqlmapconfig.xml,这是全局配置文件,用于定义数据源、事务管理器等。 5. 编写sqlmap.xml,这是具体的SQL映射文件,包含了SQL语句和结果映射。 6. 编写Java代码,调用iBATIS接口执行SQL操作。 与传统的JDBC...
新的sqlMapConfig.xml DTD为: ``` <!DOCTYPE configuration PUBLIC "-//mybatis.org//DTD Config 3.0//EN" "http://mybatis.org/dtd/mybatis-3-config.dtd"> ``` 新的sqlMap (*.map.xml) DTD为: ``` <!DOCTYPE ...
然后,我们需要创建一个MyBatis的配置文件sqlMapConfig.xml: ``` <!-- 全局的 setting 配置,根据需要加 --> <!-- 配置别名 --> <!-- 批量扫描别名 --> <package name="com.whr.pojo"/> <!-- 配置 mapper...
3. **配置 MyBatis 和 Spring MVC**:编写相应的配置文件,如 SqlMapConfig.xml、applicationContext-dao.xml 等。 4. **实现 DAO 层**:通过 MyBatis 来完成数据访问对象的设计和实现。 5. **实现 Service 层**:在...
- `<properties>`:用于加载外部属性文件,如DataBase.config,可以设置数据库连接相关的变量。 - `<settings>`:配置Ibatis的行为,如`useStatementNamespaces`设置为false意味着不使用命名空间,`...
MyBatis 的延迟加载功能默认是关闭的,需要在 SqlMapConfig.xml 文件中通过 setting 标签配置来开启延迟加载功能。开启延迟加载的属性包括: * lazyLoadingEnabled:全局性设置懒加载。如果设为‘false',则所有相...
SqlMapClient sqlMap = SqlMapClientBuilder.buildSqlMapClient(Resources.getResourceAsStream("SqlMapConfig.xml")); sqlMap.update("insertPerson", new Person("John Doe", "john@example.com")); // 示例2:...
MyBatis支持延迟加载,需要在SqlMapConfig.xml中配置全局参数。例如: <!-- 全局配置参数 --> <!-- 延迟加载总开关 --> <setting name="lazyLoadingEnabled" value="true" /> <!-- 设置按需加载 --> <setting ...
为了使用MyBatis的二级缓存,需要在核心配置文件SqlMapConfig.xml中加入<setting name="cacheEnabled" value="true"/〉,并在Mapper映射文件中添加一行:,表示此mapper开启二级缓存。此外,查询结果映射的pojo需要...
在MyBatis中,二级缓存的启用是默认开启的,可以通过全局配置文件`sqlMapConfig.xml`中的`<setting name="cacheEnabled" value="true"/>`来控制。每个namespace下的Mapper都有自己的独立缓存空间,这意味着如果两个...
- 在ibatis中,设置属性的方式通常是直接在`<sqlMapConfig>`元素内使用属性,如`<sqlMapConfig props1="value1" props2="value2"/>`。 - 而myBatis采用了更灵活的配置方式,即使用`<settings>`标签包裹多个`...
- **<setting> 元素**:设置 SQL Map 的运行时行为,例如开启/关闭日志记录、设置默认的事务处理方式等。 - **<typeAlias> 元素**:定义 Java 类型的别名,简化 XML 映射文件中的类型引用。 - **...
- **`<properties>`元素**:用于定义和加载外部属性文件,这些属性可以被配置文件中的其他元素引用。 - **`<setting>`元素**:配置运行时环境,如开启或关闭懒加载等。 - **`<typeAlias>`元素**:为Java类型定义...