Mybatis 优化:
Mybatis 的优化:
** 第一个 对于数据库配置的优化:
创建一个 DB.properties 的文件
里面编写Key = value 形式的数据库信息
比如:
driver = com.mysql.jdbc.Driver
注意没有有引号 写完换行 不写分号
我的文件叫 【db.properties】
driver=com.mysql.jdbc.Driver url=jdbc:mysql://127.0.0.1:3306/stu username=root password=gubin
这个文件使用的话 在mybatis的核心配置文件里面直接引入就行:
使用<properties resource="文件位置"></properties> 注意要在<configuration>标签内 不能包括在其他标签!!
使用的话类似于el表达式 使用${key} 通过key获取value
** 第二个 mybatis的全局参数 :
配置mybatis可能对mybatis的运行出现问题!!谨慎使用!!
参数 |
简介 |
有效值 |
cacheEnabled |
在全局范围内,启用或禁用缓存 |
true(默认)、false |
lazyLoadingEnabled |
在全局范围内启用或禁用延迟加载。当禁用时,所有相关联的对象都将立即加载(热加载)。 |
true(默认)、false |
aggressiveLazyLoading |
启用时,有延迟加载属性的对象,在被调用时将会完全加载所有属性(立即加载)。否则,每一个属性都将按需加载(即延迟加载)。 |
true(默认)、false |
multipleResultSetsEnabled |
允许或禁止执行一条单独的SQL语句后返回多条结果(结果集);需要驱动程序的支持 |
true(默认)、false |
autoMappingBehavior |
指定数据表字段和对象属性的映射方式。 NONE:禁止自动映射,只允许手工配置的映射 PARTIAL:只会自动映射简单的、没有嵌套的结果 FULL:自动映射任何结果(包含嵌套等) |
NONE、 PARTIAL(默认)、 FULL |
defaultExecutorType |
指定默认的执行器。 SIMPLE:普通的执行器。 REUSE:可以重复使用prepared statements语句。 BATCH:可以重复执行语句和批量更新。 |
SIMPLE(默认)、 REUSE、 BATCH |
defaultStatementTimeout |
设置驱动器等待数据库回应的最长时间 |
以秒为单位的,任意正整数。无默认值 |
safeRowBoundsEnabled |
允许或禁止使用嵌套的语句 |
true、false(默认) |
mapUnderscoreToCamelCase |
当在数据表中遇到有下划线的字段时,自动映射到相应驼峰式形式的Java属性名。例如,会自动将数据表中的stu_no字段,映射到POJO类的stuNo属性。 |
true、false(默认) |
lazyLoadTriggerMethods |
指定触发延迟加载的对象的方法 |
equals、clone、hashCode、toString |
如何使用?在mybatis的和核心配置文件中 注意要在<configuration>标签内 不能包括在其他标签!!
<settings>
<setting name="参数" value="值"></setting>
</setting>
** 第三个 mybatis的全局参数 :
在配置mapper文件中 通常都要写特别长的包名 或者是 标签中的返回值类型 需要写全路径特别长 特别麻烦!!
如图:在写 resultType的时候 需要学全类名 很长 因此 mybatis提供了设置别名
如何设置别名? 注意要在<configuration>标签内 不能包括在其他标签!!
<typeAliases>
<!-- 设置单个别名 注意是单标签 别名使用不区分大小写 -->
<typeAlias type="全类名" alias="要设置的名字"/>
<!-- 批量设置 单标签 别名不区分大小写 别名为类的名称-->
<package type="包名"/>
</typeAliases>
除了自定义别名外,MyBatis还内置了一些常见类的别名:《了解》
注意一个问题 idea+log4j 设置别名控制台 会有部分乱码 不过不碍事 但是我这个强迫症受不了!!有些抓狂!
:Reader entry: ���� 4 -
转载于:https://www.cnblogs.com/gu-bin/p/10493314.html
Mybatis 优化:相关推荐
- 03.Mybatis优化
对动态代理方式的代码进行进一步优化: 1.将conf.xml文件中对数据库的配置信息以db.properties的形式抽离出来 driver=com.mysql.jdbc.Driver url=jdb ...
- mysql和mybatis优化_MySQL + mybatis的SQL优化方案
sql优化方案: 1.添加索引,在条件参数,关联参数上建立参数, 2.字段优化,需要什么字段查什么字段 3.模糊查询尽量使用: select * from tableName a where a.na ...
- 软件框架技术1(MyBatis)
目录 1.软件框架技术概述: 1.1为什么会出现软件框架技术? 1.2框架概述 1.3框架的优势 2.Maven 2.1.maven是什么 2.2maven依赖管理 2.3仓库 编辑2.4maven ...
- 3、JavaWeb中Service层的作用、MyBatis的重要组件、mybatis-config.xml中的别名映射、properties配置、#{}和${}的区别、获取插入数据的主键值
文章目录 1.Service层的作用 2.MyBatis重要组件 Resources SqlSessionFactoryBuilder SqlSessionFactory SqlSession 针对上 ...
- 4、MyBatis + Log4j日志查看Sql参数、结果集元数据、Mapper代理开发、JDK的动态代理与CGLib代理
文章目录 MyBatis优化开发 日志 ResultSet如何转换为Java对象 数据库元数据 结果集元数据 Fastjson 基于MyBatis的DAO开发(传统) 推荐mapper代理开发 JDK ...
- MyBatis学习记录
前言 本人学习内容,跟随尚硅谷2022版MyBatis课程学习 文中相当一部分代码和注释来自尚硅谷资料 本文用以记录自身学习和经验总结 课程链接 MyBatis项目搭建(更标准,更好用) 1.创建Ma ...
- MyBatis快速上手与知识点总结
目录 阅读提示: 本文默认已经预装预装maven 1.MyBatis概述 1.1 MyBatis概述 持久层框架,用于简化JDBC开发,是对JDBC的封装 持久层: 负责将数据保存到数据库的代码部分 ...
- MyBatis快速上手与知识总结
原文地址: https://www.cnblogs.com/dandelion-000-blog/p/16636393.html 文章目录 @[toc] 1.MyBatis概述 1.1 MyBatis ...
- 【学习笔记】Mybatis框架学习及个人感悟
文章目录 一.简介 1.1.什么是Mybatis 1.2.持久化 1.3.为什么需要Mybatis 二.第一个Mybatis程序 2.1.搭建环境 2.2.创建一个子模块 2.3.编写代码 2.4.测 ...
- JavaWeb(四)——MyBatis(持久层框架)
Mybatis--持久层框架(用于简化JDBA) Mybatis概述 Mybatis概念 JDBC 缺点 Mybatis 优化 Mybatis快速入门 创建user表,添加数据 创建模块,导入坐标(p ...
最新文章
- OpenDigg前端开源项目月报201704
- 在linux c 以结构体形式写文件 结构体参数如何在函数中传递,Linux安全审计机制模块实现分析(16)-核心文件之三auditsc.c文件描述及具体变量、函数定义...
- php网站灰颜色代码,css取消Safari浏览器链接点击颜色变灰-webkit-tap-highlight-color_html/css_WEB-ITnose...
- [dp][前缀和] Jzoj P5907 轻功(qinggong)
- NAO机器人学习小计
- pjsip for Android的编译
- Javascript中数组去重的六种方法
- mysql视图转sql server视图_SQL Sever MYSQL 视图实现的 2 种方式
- 配置Windows server 用户和组权限实验详解
- linux线程调度与rtos,实时Linux和RTOS的基本特性及技术进行比较
- 使用for循环遍历文件、使用while循环遍历文件
- linux下安装mysql5.7.11全纪录_简单几步在Linux环境下安装MySQL5.7(附踩坑记录)
- 鱼眼相机矫正,按经纬度展开为环视图
- 五步轻松搞定QGIS三维地形浏览
- 免费天气API,全国天气 JSON API接口,可以获取五天的天气预报
- 弘辽科技:揭秘淘宝直通车更深层的秘密,你开对车了吗?
- react-hooks之useEffect
- 什么是5G SAR测试,FCC/CE中5G Sub-6GHz与5G 毫米波测试,5G毫米波测试
- sqlmap 注入教程 常用命令大全
- jsp用户注册简单实例
热门文章
- 2021-06-20----CSS三种选择器
- mysql 程序编码_MySql编码
- 关键词词云怎么做_网友问:做独立站,怎么做关键词排名,怎么做客户流量?...
- python deque索引超出范围_python的常用内建模块与常用第三方模块
- $.ajax跳入error之 async
- SpringMVC学习(一)SpringMVC入门 、HelloSpringMVC程序、SpringMVC执行原理
- Leetcode之插入区间
- java 通配符泛型_java泛型常用通配符实例解析
- trie树 java 开源_用于实现Trie的内存java应用程序中的最佳开源
- rails mysql优化_Ruby on Rails中的MySQL性能