0%

1. 概述

在MyBatis中允许使用缓存,缓存一般都放置在可高速读/写的存储器上,比如服务器的内存,它能够有效提高系统的性能。因为数据库大部分场景下是把存储在磁盘上的数据索引出来。从硬件的角度分析,索引磁盘是一个较为缓慢的过程,读取内存或者高速缓存在处理器上得速度要比读取磁盘快得多。缓存就是将那些常用的数据放在内存中,以便将来使用,以此提高系统性能。

MyBatis系统中默认定义了一级缓存和二级缓存两级缓存。

  • 默认情况下,只有一级缓存(SqlSession级别的缓存,也称为本地缓存)开启。
  • 二级缓存需要手动开启和配置,他是基于namespace级别的缓存。
  • 为了提高扩展性。 MyBatis定义了缓存接口Cache。我们可以通过实现Cache接口来自定义二级缓存
阅读全文 »

1. 简介

MyBatis Generator:简称MBG,是一个专门为MyBatis框架使用者定制的代码生成器,可以快速的根据表生成对应的映射文件,接口,以及bean类。支持基本的增删改查,以及QBC风格的条件查询。 但是表连接、存储过程等这些复杂sql的定义需要我们手工编写。

可以到官方工程地址中下载需要的Jar包。

阅读全文 »

掌握MyBatis运行原理是学习MyBatis插件技术的基础。*学习MyBatis运行原理,我们可以使用Debug一步一步地去理解。***

下面分析笔记二的HelloWorld工程,分为如下步骤分析MyBatis的运行原理。

  • 获取sqlSessionFactory对象
  • 获取sqlSession对象
  • 获取接口的代理对象(MapperProxy),即getMapper方法的执行过程。
  • 执行增删改查方法
阅读全文 »

1. 插件原理

MyBatis在四大对象的创建过程中,都会有插件进行介入。 插件可以利用动态代理机制一层层的包装目标对象,而实现在目标对象执行目标方法之前进行拦截的效果 。MyBatis 允许在已映射语句执行过程中的某一点进行拦截调用。

阅读全文 »

1. MyBatis简介

  • MyBatis 是支持定制化 SQL、存储过程以及高级映射的优秀的持久层框架。
  • MyBatis 避免了几乎所有的 JDBC 代码和手动设置参数以及获取结果集
  • MyBatis可以使用简单的XML或注解用于配置和原始映射,将接口和Java的POJO(Plain Old JavaObjects,普通的Java对象)映射成数据库中的记录.
阅读全文 »

1. 表单标签

通过 SpringMVC 的表单标签可以实现将模型数据中的属性和 HTML 表单元素相绑定,以实现表单数据更便捷编辑和表单值的回显

SpringMVC 提供了多个表单组件标签,如 <form:input/>、<form:select/> 等,用以绑定表单字段的属性值,它们的共有属性如下:

  • path:表单字段,对应 html 元素的 name 属性,支持级联属性
  • htmlEscape:是否对表单值的 HTML 特殊字符进行转换,默认值为 true
  • cssClass:表单组件对应的 CSS 样式类名
  • cssErrorClass:表单组件的数据存在错误时,采取的 CSS 样式。

form:input、form:password、form:hidden、form:textarea: 对应 HTML 表单的 text、password、hidden、textarea标签。

阅读全文 »

1. 返回JSON

  1. 加入Jar包:
    在这里插入图片描述

  2. 编写目标方法,使其返回 JSON 对应的对象或集合,并在在方法上添加 @ResponseBody 注解。具体代码如下:

    1
    2
    3
    4
    5
    6
    7
    8
    /**
    * 返回 JSON 对应的对象或集合
    */
    @ResponseBody
    @RequestMapping("/testJackson")
    public User testJackson() {
    return new User(100, "aa", "abc123", true, 1001.2, new Date(), "shoto@gmail.com");
    }
阅读全文 »

1. 简单示例

下面先演示一个示例

1.首先需要在src目录下编写三个国际化资源文件。
在这里插入图片描述
i18n_en_US.properties(i18n.properties)和i18n_zh_CN.properties内容分别如下所示:
在这里插入图片描述
在这里插入图片描述

阅读全文 »