属性优化

properties
  • 外部配置文件【db.properties】
driver=com.mysql.jdbc.Driver
url=jdbc:mysql://localhost:3306/mybatis?useSSL=true&useUnicode=true&characterEncoding=UTF8&serverTimezone=UTC
username=root
password=admin#1234
  • 引入外部配置文件
<!--    引入外部配置文件,也可以加入一些属性,当两者冲突时,以外部文件为准-->
<properties resource="db.properties">
<property name="username" value="root"/>
<property name="password" value="123456"/>
</properties>
environments
<!--可以配置多个环境变量,但是同时只能选择一个环境  <environments default="test">-->
<environments default="test">
<environment id="development">
<transactionManager type="JDBC"/>
<dataSource type="POOLED">
<property name="driver" value="com.mysql.jdbc.Driver"/>
<property name="url" value="jdbc:mysql://localhost:3306/mybatis?useSSL=true&amp;useUnicode=true&amp;characterEncoding=UTF8&amp;serverTimezone=UTC"/>
<property name="username" value="root"/>
<property name="password" value="admin#1234"/>
</dataSource>
</environment> <environment id="test">
<transactionManager type="JDBC"/>
<dataSource type="POOLED">
<property name="driver" value="${driver}"/>
<property name="url" value="${url}"/>
<property name="username" value="${username}"/>
<property name="password" value="${password}"/>
</dataSource>
</environment>
</environments>
settings
    <settings>
<!-- 是否开启缓存-->
<setting name="cacheEnabled" value="true"/>
<!-- 是否开启懒加载-->
<setting name="lazyLoadingEnabled" value="true"/>
<!--允许 JDBC 支持自动生成主键,需要数据库驱动支持。如果设置为 true,将强制使用自动生成主键。尽管一些数据库驱动不支持此特性,但仍可正常工作(如 Derby)-->
<setting name="useGeneratedKeys" value="false"/>
<!--是否开启驼峰命名自动映射,即从经典数据库列名 A_COLUMN 映射到经典 Java 属性名 aColumn。-->
<setting name="mapUnderscoreToCamelCase" value="false"/>
<!-- 指定 MyBatis 所用日志的具体实现,未指定时将自动查找。 SLF4J | LOG4J | LOG4J2 | JDK_LOGGING | COMMONS_LOGGING | STDOUT_LOGGING | NO_LOGGING-->
<!-- <setting name="logImpl" value="LOG4J "/>-->
</settings>

别名优化

<!--    给实体类加别名-->
<typeAlias type="com.yeyue.pojo.User" alias="User"></typeAlias> <!-- <package name="com.yeyue.pojo"/> 指定一个包名,会在包下扫描实体类,默认以类名的首字母小写作为别名,不可以自定义别名,但可以借助注解来实现
@Alias("RealUser")
public class User {}
-->
<typeAliases>
<package name="com.yeyue.pojo"/>
</typeAliases>

映射器

  • UserMapper.xml直接在核心配置文件中注册
<mapper resource="com\yeyue\dao\UserMapper.xml"/>
  • 通过接口类来映射

    • 类和mapper配置文件需要同名
    • 类和mapper配置文件必须在同一包下
  <mapper class="com.yeyue.dao.UserMapper"/>
  • 通过包来映射

    • 类和mapper配置文件需要同名
    • 类和mapper配置文件必须在同一包下
<package name="com.yeyue.dao"/>

mybatis之配置优化的更多相关文章

  1. Mybatis入门(四)配置优化(一)

    这一章主要实验Mybatis的引入外部配置文件,属性(properties)这个属性都是可外部配置且可动态替换的,既可以在典型的 Java 属性文件中配置,亦可通过 properties 元素的子元素 ...

  2. Spring+SpringMVC+MyBatis+easyUI整合优化篇(二)Log4j讲解与整合

    日常啰嗦 上一篇文章主要讲述了一下syso和Log间的一些区别与比较,重点是在项目的日志功能上,因此,承接前文<Spring+SpringMVC+MyBatis+easyUI整合优化篇(一)Sy ...

  3. Spring+SpringMVC+MyBatis+easyUI整合优化篇(四)单元测试实例

    日常啰嗦 前一篇文章<Spring+SpringMVC+MyBatis+easyUI整合优化篇(三)代码测试>讲了不为和不能两个状态,针对不为,只能自己调整心态了,而对于不能,本文会结合一 ...

  4. Spring+SpringMVC+MyBatis+easyUI整合优化篇(七)图片上传功能

    日常啰嗦 前一篇文章<Spring+SpringMVC+MyBatis+easyUI整合优化篇(六)easyUI与富文本编辑器UEditor整合>讲了富文本编辑器UEditor的整合与使用 ...

  5. SpringMVC+Mybatis+MySQL配置Redis缓存

    SpringMVC+Mybatis+MySQL配置Redis缓存 1.准备环境: SpringMVC:spring-framework-4.3.5.RELEASE-dist Mybatis:3.4.2 ...

  6. mybatis使用枚举优化

    文章转自: https://segmentfault.com/a/1190000010755321 问题 在编码过程中,经常会遇到用某个数值来表示某种状态.类型或者阶段的情况,比如有这样一个枚举: p ...

  7. MyBatis项目配置案例详解与Web下的增删改查实现[附项目源码]

    MyBatis项目案例 项目图示: 项目源码地址:https://github.com/JluTiger/mybatispro 1.项目功能 项目案例:后台管理系统用户数据维护平台 所有用户数据查询 ...

  8. Mybatis XML配置

    Mybatis常用带有禁用缓存的XML配置 <?xml version="1.0" encoding="UTF-8" ?> <!DOCTYPE ...

  9. MyBatis Cache配置

    @(MyBatis)[Cache] MyBatis Cache配置 MyBatis提供了一级缓存和二级缓存 配置 全局配置 配置 说明 默认值 可选值 cacheEnabled 全局缓存的开关 tru ...

  10. VS2010/2012配置优化记录笔记

    VS2010/2012配置优化记录笔记 在某些情况下VS2010/2012运行真的实在是太卡了,有什么办法可以提高速度吗?下面介绍几个优化策略,感兴趣的朋友可以参考下,希望可以帮助到你   有的时候V ...

随机推荐

  1. Abp Vnext Vue Element UI实现

    Abp Vnext Vue Element UI实现版本开箱即用的中后台前端/设计解决方案 链接 AbpPro Vben5 Vue Element Plus 预览 点击查看效果 文档地址 点击查看文档 ...

  2. Node.js 文件读写

    1.fs模块 在node.js中,所有文件的操作都是通过fs模块来实现的.包括文件目录的创建,删除,查询以及文件的读取,写入. 在fs模块中,所有的方法都分成同步和异步两种实现,具有sync后缀的为同 ...

  3. YashanDB V23.3重磅发布,持续深化1:1替代产品力

    11月14日,YashanDB在"2024国产数据库创新生态大会"上正式发布YashanDB V23.3版本,定位为面向企业核心的通用数据库,具备1:1替代Oracle的能力. 当 ...

  4. uni-app小程序(快手)日志打印坑位记录

    前情 uni-app是我比较喜欢的跨平台框架,它能开发小程序/H5/APP(安卓/iOS),重要的是对前端开发友好,自带的IDE让开发体验也挺棒的,公司项目就是主推uni-app. 坑位 最近在开发一 ...

  5. 解读GaussDB的BTree索引和UBTree索引,如何带来更强并发能力

    本文分享自华为云社区<[GaussTech技术专栏]GaussDB的BTree索引和UBTree索引>,作者:GaussDB 数据库. 1. 简介 数据库通常使用索引来提高业务查询的速度. ...

  6. 圆梦:借助云开发 CloudBase实现你的游戏开发梦想

    最近我发现AI产品在不断涌现新动向,尤其是一些技术巨头推出的创新产品.例如,今天我们要探讨的是腾讯云开发的云开发 CloudBase,如果你之前没有听说过这个名字,那可能还记得腾讯云推出的另一个产品- ...

  7. .NET Core 异常(Exception)底层原理浅谈

    中断与异常模型图 内中断 内中断是由 CPU 内部事件引起的中断,通常是在程序执行过程中由于 CPU 自身检测到某些异常情况而产生的.例如,当执行除法运算时除数为零,或者访问了不存在的内存地址,CPU ...

  8. Java JUC&多线程 基础完整版

    Java JUC&多线程 基础完整版 目录 Java JUC&多线程 基础完整版 1. 多线程的第一种启动方式之继承Thread类 2.多线程的第二种启动方式之实现Runnable接口 ...

  9. Qt编写地图综合应用3-省市区域图

    一.前言 省市区域图也可以叫省市轮廓图,就是将每个省份.市区的边界区域变成轮廓展示,只是个大概的轮廓,和真是的地图基本一致,毕竟都是一个个点堆起来的,可能会有很小很小的误差,之前做大屏系统中间那个中国 ...

  10. Qt音视频开发43-人脸识别服务端

    一.前言 上一篇文章写道人脸识别客户端程序,当然要对应一个服务端程序,客户端才能正常运行,毕竟客户端程序需要与服务端程序进行交互他才能正常工作.通常人脸识别服务端程序需要和人脸识别的相关处理库在一起, ...