MyBatis配置文件(一)――properties属性
MyBatis配置文件中有很多配置项,这些配置项分别代表什么,有什么作用,需要理一下了。先通过下面这个例子来看都有哪些配置项
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE configuration
PUBLIC "-//mybatis.org//DTD Config 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-config.dtd">
<!-- mybatis的基本配置文件:主要配置基本的上下文参数和运行环境 -->
<configuration>
<!--配置-->
<properties></properties>
<!--设置 -->
<settings></settings>
<!--类型命名 -->
<!--别名:pojo对象的别名 -->
<typeAliases>
<typeAlias alias="user" type="com.daily.pojo.User"></typeAlias>
<typeAlias alias="product" type="com.daily.pojo.Product"></typeAlias>
</typeAliases>
<!--类型处理器 -->
<typeHandlers></typeHandlers>
<!--对象工厂 -->
<objectFactory></objectFactory>
<!--插件 -->
<plugins></plugins>
<!-- 环境模式:development开发模式 work工作模式 -->
<environments default="development">
<!--环境变量 -->
<environment id="development">
<!--事务管理器 -->
<transactionManager type="JDBC" />
<!--数据源 -->
<dataSource type="POOLED">
<property name="driver" value="${db.driver}" />
<property name="url" value="${db.url}" />
<property name="username" value="${db.username}" />
<property name="password" value="${db.pwd}" />
</dataSource>
</environment>
</environments>
<!--数据库厂商标示 -->
<databaseIdProvider></databaseIdProvider>
<!-- 映射器 -->
<mappers>
<mapper resource="com/daily/mapper/UserMapper.xml" />
<mapper resource="com/daily/mapper/ProductMapper.xml" />
</mappers>
</configuration>
以上就是所有的配置项,需要注意的是配置项的顺序不能颠倒,如果颠倒了它们的顺序,在MyBatis的自启动阶段会发生异常,导致程序无法运行。我会一个一个配置地做一下分析和记录,为了避免文章太长导致日后复习或别人阅读时产生疲劳,我决定一个配置项分一篇的方式进行记录。今天先分析一下第一个配置项properties。
首先properties的使用方式有三种:
1⃣️property子元素:就是在properties属性中增加子属性property,从而设置一些配置的key-value;
2⃣️properties文件:就是直接使用properties引入外部配置文件,相当于将子属性抽取成一个独立的外部文件引入;
3⃣️程序代码传递参数:就是通过代码的方式设置该配置相关的信息,如数据库配置文件中的用户名和密码一般是密文,但是连接数据库时需要对配置进行解密,此时就只能通过程序代码的方式配置了;
下面以数据库配置为例,来实现这三种不同的配置方式:
⚠️注意:因为是单独介绍,所以这里显示properties的配置,不显示其他配置项
一、property子元素
<properties>
<property name="db.driver" value="org.postgresql.Driver"></property>
3 <property name="db.url" value="jdbc:postgresql://localhost:5433/postgres"></property>
4 <property name="db.username" value="postgres"></property>
5 <property name="db.pwd" value="postgres"></property>
6 </properties>
这种配置方式的缺点是,如果配置项很多,那么就会让配置文件显得很庞大,为了解决这个缺点,我们可以使用下面的配置方式
MyBatis配置文件(一)――properties属性的更多相关文章
- MyBatis配置文件之properties属性
MyBatis提供3个方式使用properties: 1.property子元素. 2.properties文件. 3.程序代码传递. properties属性系给系统配置一些运行参数,一般放在XML ...
- Spring/Maven/MyBatis配置文件结合properties文件使用
使用properties文件也叫注入,比如把一些常用的配置项写入到这个文件,然后在Spring的XML配置文件中使用EL表达式去获取. 这种方式不只Spring可以使用,同样MyBatis也可以使用, ...
- Mybatis-学习笔记(1)SqlSessionFactory、SqlSession、Mybatis配置文件configuration的属性标签
1.mybatis引入项目,只需要引入mybatis-x.x.x.jar包即可. (当然数据库驱动的引入必不可少) 2.SqlSessionFactory 由SqlSessionFactoryBuil ...
- JAVA MyBatis配置文件用properties引入外部配置文件
方式一:通过properties 元素的子元素来传递数据 例如: <properties> <property name="driver" value=" ...
- 三 MyBatis配置文件SqlMapCofing.xml(属性加载&类型别名配置&映射文件加载)
SqlMapCofing:dtd,属性加载有固定的顺序Content Model properties:加载属性文件 typeAliases:别名配置 1 定义单个别名:不区分大小写 核心配置: 映射 ...
- 【spring boot】配置文件 application.properties 属性解析
1.JPA hibernate命名策略 完整命名策略 ,查看:http://www.cnblogs.com/sxdcgaq8080/p/7910474.html 2.hibernate的DDL执行策 ...
- 02.MyBatis配置文件详解
MyBatis入参考文档:http://mybatis.org/mybatis-3/zh/ 1.properties 属性 1.在MyBatis配置文件中引用属性文件 MyBatis ...
- mybatis学习——properties属性实现引用配置文件
Mybatis核心配置文件中有很多的配置项,配置文档的顶层结构如下: *注意:配置项的顺序不能颠倒,如果颠倒了它们的顺序,在MyBatis的自启动阶段会发生异常,导致程序无法运行. propertie ...
- 【Mybatis】配置文件加载属性
Mybatis将按照下面的顺序来加载属性: 1.在properties文本定义的属性首先被读取, 2.然后读取Mybatis的配置文件sqlConfig.xml配置文件中properties标签属性 ...
随机推荐
- truncate和delete的区别
TRUNCATE 命令用法 语法 TRUNCATE TABLE name 参数 name 是要截断的表的名称或要删除其全部行的表的名称. 注释 TRUNCATE TABLE 在功能上与不带 W ...
- 更改网卡名称以及重启网卡提示Determining if ip address x.x.x.x is already in use for device eth0
安装系统完成后,在CentOS6.6下网卡名称变为em1,有些不太方便,还是改回eth0 修改grub配置文件,vi /boot/grub/grub.conf,增加如下红色字体 kernel /vml ...
- 基于IDEA的SSM配置文件整合基础(有步骤)
今天进行了SSM框架的整合,遇到了很多的错误,但所幸都有解决,以下为基础的整合步骤,后续待完善 1.SSM整合所需要: spring的jar(包含tx).springmvc的jar.mybatis.j ...
- Django之单表查询——神奇的双下划线
1.filter中的单表查询 # 查询id>1且id<4的结果 ret = models.Person.objects.filter(id__gt=1,id__lt=4) print(re ...
- 2018-8-10-win10-uwp-验证输入-自定义用户控件
title author date CreateTime categories win10 uwp 验证输入 自定义用户控件 lindexi 2018-08-10 19:16:51 +0800 201 ...
- C++:多线程002
https://blog.csdn.net/morewindows/article/details/7442333 程序描述:主线程启动10个子线程并将表示子线程序号的变量地址作为参数传递给子线程.子 ...
- BZOJ 2281 消失之物
ftiasch 有 N 个物品, 体积分别是 W1, W2, -, WN. 由于她的疏忽, 第 i 个物品丢失了. "要使用剩下的 N – 1 物品装满容积为 x 的背包,有几种方法呢?&q ...
- canvas石英钟
canvas石英钟:demo <!DOCTYPE html> <html> <head lang="en"> <meta charset= ...
- 用React实现一个自动生成文章目录的组件
原文地址:小寒的博客 功能介绍 这个组件的效果呐,就是你在浏览这个页面的时候点击右上角的叉叉看到的那个文章目录. 功能很简单,就是根据文章内容自动生成这个目录,可以快速跳转. 需要的知识点 正则 do ...
- C# 判断当前请求是GET、还是POST ?
方法一: HttpContext.Current.Request.RequestType == "POST" //当前请求为:POST 方法二: if(Request.Serv ...