Mybatis配置之properties和settings标签的用法

Mybatis是一种非常流行的Java ORM框架,用于快速方便地映射Java程序和数据库表之间的关系。其中,Mybatis配置文件中的properties和settings标签用来设置Mybatis框架和数据库连接的相关参数。下面详细介绍这两个重要标签的用法:

properties标签

Mybatis框架中,properties标签是用于设置框架中所需要的全局变量的标签。全局变量的值可以通过${key}的方式在配置文件中引用。properties标签可以被放置在任何位置,但必须在所有使用到变量的set中包含。其基本语法如下:

<properties resource="classpath:jdbc.properties"/>

其中,resource属性指定了一个classpath下的资源文件,用于存放需要的变量。在变量文件jdbc.properties中,可以设置多个properties值,格式如下:

jdbc.driverClass=com.mysql.jdbc.Driver
jdbc.url=jdbc:mysql:///test
jdbc.username=root
jdbc.password=123456

在Mybatis的配置文件中,可以通过${key}的方式引用这些properties中的变量,示例如下:

<dataSource type="PooledDataSource">
  <property name="driver" value="${jdbc.driverClass}"/>
  <property name="url" value="${jdbc.url}"/>
  <property name="username" value="${jdbc.username}"/>
  <property name="password" value="${jdbc.password}"/>
</dataSource>

这里,PooledDataSource是Mybatis提供的一种连接池类型。上述的示例代码中,我们使用了${key}的方式引用了jdbc.properties文件中的变量。

settings标签

settings 标签是指 MyBatis 的设置,这个标签有多个属性用于配置整个 MyBatis 的设置,从而改变 MyBatis 的运行时行为。它的基本语法如下:

<settings>
  <setting name="jdbcTypeForNull" value="NULL" />
  <setting name="mapUnderscoreToCamelCase" value="true" />
  <setting name="logPrefix" value="mybatis_" />
</settings>

其中,name属性指定要进行设置的属性名称,value属性为该属性的值。常见的settings属性包括:

  • cacheEnabled - 全局地开启或关闭所有的缓存,其默认值为 true 。mybatis框架内置了一个高速缓存,并自动进行实现,如果不需要使用,可以将其关闭。
  • lazyLoadingEnabled - 设置为 true 启用懒加载特性。默认值是 false ,懒加载会在被主动调用(例如通过属性访问)时触发查询加载。
  • defaultStatementTimeout - 设置超时时间,用于控制数据库查询语句的运行时间,以毫秒为单位。如果查询超时,则会自动切断查询。
  • mapUnderscoreToCamelCase - 将驼峰式命名属性映射成下划线风格的列名字。默认值为 false。
  • logImpl - 指定 MyBatis 所用日志的具体实现,例如 SLF4J 或者 LOG4J。

示例代码如下:

<settings>
  <setting name="cacheEnabled" value="true" />
  <setting name="lazyLoadingEnabled" value="false" />
  <setting name="defaultStatementTimeout" value="2000" />
  <setting name="mapUnderscoreToCamelCase" value="true" />
  <setting name="logImpl" value="LOG4J" />
</settings>

在上述示例中,我们设置了开启缓存,禁用懒加载,超时时间为 2 秒,将模式下划线改为驼峰式,使用 LOG4J 作为日志实现。

综上,properties和settings标签都是Mybatis配置文件中非常重要的标签。通过这两个标签,我们可以灵活配置Mybatis框架中使用的全局变量和运行时属性,从而实现更加高效的数据库访问和操作。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:Mybatis配置之properties和settings标签的用法 - Python技术站

(0)
上一篇 2023年5月21日
下一篇 2023年5月21日

相关文章

  • SQL语句执行顺序详解

    下面我将为您详细讲解SQL语句执行顺序。 首先,SQL语句的执行顺序分为以下几个步骤: FROM子句中的表被返回,并生成一个虚拟表。这个虚拟表包含了所有从FROM子句中选择的表,并于其他关联表组成的列进行组合(如果有的话)。在这一步中,服务器还会检查该用户是否具有访问表的权限。 WHERE子句中的所有条件会被检查,只有那些能够得到true或不为false的条…

    database 2023年5月21日
    00
  • postgresql synchronous_commit参数的用法介绍

    下面是 “postgresql synchronous_commit参数的用法介绍” 的完整攻略: 一、概述 postgresql synchronous_commit 是用来控制事务提交的方式。如果此参数设置为 ON,则所有事务的提交将会等待数据同步到磁盘上才会返回完成结果,这样可以保证提交的数据不会丢失。如果此参数设置为 OFF,则事务提交后不会等待数据…

    database 2023年5月21日
    00
  • sql与mysql有哪些区别

    SQL与MySQL有哪些区别 SQL是什么 SQL是Structured Query Language的简称,即结构化查询语言。它是一种专门用来管理和操作关系型数据库的标准语言。 SQL可以进行增、删、改、查等操作,用于数据的存储、检索、更新和删除等操作。 SQL语言标准由ISO组织制定和管理。各种数据库管理系统都必须遵循SQL标准,但不同厂商的数据库管理系…

    database 2023年5月22日
    00
  • sql server编写archive通用模板脚本实现自动分批删除数据

    一、背景和目的SQL Server是微软的关系型数据库管理系统,使用广泛。随着数据量的增加,库中不少数据已经不再使用,但是不删除的话会影响数据库性能和运行效率。因此,分批删除数据是一种非常必要的操作。但是手动逐条删除非常麻烦,而且容易出错。本文将介绍如何编写SQL Server的archive通用模板脚本,实现自动删除数据的操作。 二、设计方案1. 批量删除…

    database 2023年5月21日
    00
  • oracle中利用关键字rownum查询前20名员工信息及rownum用法

    关键字ROWNUM是Oracle中非常常用的一种方式来限定查询的结果集,它可以返回一个表中满足某种条件的前N行,我们可以利用它来查询前N名员工信息。下面是具体的步骤: 创建员工表 我们先创建一个员工表,表中包含员工编号、姓名、所属部门、工资等字段,以便后续查询操作。创建表的SQL语句如下: CREATE TABLE employee( emp_id NUMB…

    database 2023年5月21日
    00
  • Python连接Redis的基本配置方法

    当你要在Python中连接Redis数据库时,需要按照以下步骤进行配置: 步骤一:安装redis-py 如果你还没有安装Redis的Python客户端库redis-py,可以使用以下命令进行安装: pip install redis 步骤二:连接Redis 连接Redis需要指定Redis数据库的主机名、端口号和密码等参数,代码如下: import redi…

    database 2023年5月22日
    00
  • Linux下安装mysql-5.6.12-linux-glibc2.5-x86_64.tar.gz

    下面是“Linux下安装mysql-5.6.12-linux-glibc2.5-x86_64.tar.gz”的完整攻略: 准备工作 在官网下载mysql-5.6.12-linux-glibc2.5-x86_64.tar.gz文件 确保系统已安装gcc编译器 安装步骤 进入下载目录,使用下面命令解压文件: tar -xzvf mysql-5.6.12-linu…

    database 2023年5月22日
    00
  • Shell脚本连接oracle数据库的实现代码

    连接Oracle数据库的Shell脚本可以使用Oracle提供的客户端工具sqlplus或者使用开源的jdbc等工具实现。下面将介绍两种方法。 1. 使用sqlplus连接Oracle数据库的Shell脚本 使用sqlplus连接Oracle数据库可以执行Oracle的SQL脚本文件或者执行单独的SQL语句。 #!/bin/bash # Oracle数据库配…

    database 2023年5月21日
    00
合作推广
合作推广
分享本页
返回顶部