2016年1月6日
摘要:
摘要 本文以MySQL数据库为研究对象,讨论与数据库索引相关的一些话题。特别需要说明的是,MySQL支持诸多存储引擎,而各种存储引擎对索引的支持也各不相同,因此MySQL数据库支持多种索引类型,如BTree索引,哈希索引,全文索引等等。为了避免混乱,本文将只关注于BTree索引,因为这是平常使用My
阅读全文
posted @ 2016-01-06 20:16
duanxz
阅读(594)
推荐(0)
摘要:
索引类型: B-TREE索引,哈希索引•B-TREE索引加速了数据访问,因为存储引擎不会扫描整个表得到需要的数据。相反,它从根节点开始。根节点保存了指向子节点的指针,并且存储引擎会根据指针寻找数据。它通过查找节点页中的值找到正确的指针,节点页包含子节点的指针,并且存储引擎会根据指针寻找数据。它通过查...
阅读全文
posted @ 2016-01-06 19:25
duanxz
阅读(2868)
推荐(1)
摘要:
1. 多表连接类型 1. 笛卡尔积(交叉连接) 在MySQL中可以为CROSS JOIN或者省略CROSS即JOIN,或者使用',' 如: SELECT * FROM table1 CROSS JOIN table2; SELECT * FROM table1 JOIN table2; SELECT
阅读全文
posted @ 2016-01-06 19:24
duanxz
阅读(734)
推荐(0)
摘要:
分析SQL执行带来的开销是优化SQL的重要手段。在MySQL数据库中,可以通过配置profiling参数来启用SQL剖析。该参数可以在全局和session级别来设置。对于全局级别则作用于整个MySQL实例,而session级别紧影响当前session。该参数开启后,后续执行的SQL语句都将记录其资源...
阅读全文
posted @ 2016-01-06 19:12
duanxz
阅读(1466)
推荐(0)
posted @ 2016-01-06 18:34
duanxz
阅读(2674)
推荐(0)
2016年1月5日
摘要:
MySQL 当记录不存在时insert,当记录存在时更新 网上基本有三种解决方法。 第一种:示例一:insert多条记录 假设有一个主键为 client_id 的 clients 表,可以使用下面的语句: 示例二:insert单条记录 使用 dual 做表名可以让你在 select 语句后面直接跟上
阅读全文
posted @ 2016-01-05 23:17
duanxz
阅读(1274)
推荐(0)
摘要:
LOCATE、POSITION和INSTR函数相似功能实例 使用LOCATE、POSITION和INSTR函数查找字符串中指定子字符串的开始位置。SQL语句如下: 执行结果如下: 从上图中代码执行的结果可以看出,子字符串“369”在字符串“www.baike369.com”中从第10个字母位置开始,
阅读全文
posted @ 2016-01-05 21:19
duanxz
阅读(4030)
推荐(0)
摘要:
一.填空题:1. 在Linux系统中,以 文件 方式访问设备 。2. Linux内核引导时,从文件 /etc/fstab 中读取要加载的文件系统。3. Linux文件系统中每个文件用 索引节点来标识。Linux文件系统使用索引节点来记录文件信息,作用于Windows的文件分配表类似,索引节点是一个数...
阅读全文
posted @ 2016-01-05 21:11
duanxz
阅读(54450)
推荐(2)
摘要:
问题: 当我们的web应用做成一个大项目之后,里面有很多的bean配置,如果两个bean的配置id是一样的而且实现类也是一样的,例如有下面两份xml的配置文档: beancontext1.xml [html] view plain copy <?xml version="1.0" encoding=
阅读全文
posted @ 2016-01-05 21:09
duanxz
阅读(5992)
推荐(1)
摘要:
DeferredResult高级使用 上篇博文介绍的它的基本使用,那么本文主要结合一些特殊的使用场景,来介绍下它的高级使用,让能更深刻的理解DeferredResult的强大之处。 它的优点也是非常明显的,能够实现两个完全不相干的线程间的通信。处理的时候请注意图中标记的线程安全问题~~~ 实现长轮询
阅读全文
posted @ 2016-01-05 21:09
duanxz
阅读(6495)
推荐(0)
摘要:
一、定时任务调度方式常见的有: 1、cron是一个linux下的定时执行工具,一些重要的任务的定时执行可以通过cron来实现,例如每天凌晨1点备份数据等。 2、在JAVA WEB开发中,我们也经常需要用到定时执行任务的功能,JDK提供了Timer类与ScheduledThreadPoolExecut
阅读全文
posted @ 2016-01-05 21:08
duanxz
阅读(918)
推荐(0)
摘要:
1.1目录1.1 目录1.2 前言1.3 Interceptor接口1.4 注册拦截器1.5 Mybatis可拦截的方法1.6 利用拦截器进行分页1.2前言 拦截器的一个作用就是我们可以拦截某些方法的调用,我们可以选择在这些被拦截的方法执行前后加上某些逻辑,也可以在执行这些被拦截的方法时执行自己的逻...
阅读全文
posted @ 2016-01-05 21:01
duanxz
阅读(835)
推荐(0)
摘要:
与association一样,collection元素也有两种形式,现介绍如下:一、嵌套的resultMap实际上以前的示例使用的就是这种方法,今天介绍它的另一种写法。还是以教师映射为例,修改映射文件TeacherMapper.xml如下(点击此处进入嵌套resultMap形式的示例源码下载页面。注...
阅读全文
posted @ 2016-01-05 21:00
duanxz
阅读(6614)
推荐(0)
摘要:
1.创建SQL脚本:CREATE TABLE t_person(id int(3) not null auto_increment,name varchar(20) default null,age int(3) default 0,primary key (id)) charset="gb2312...
阅读全文
posted @ 2016-01-05 20:59
duanxz
阅读(1466)
推荐(0)
摘要:
今天测试Ibatis的一对一的关联映射时总是出现错误,其中很多的错误都是自己不小心写错的..现把整个Ibatis源代码记录下来,以便以后熟记:1.数据库脚本:CREATE TABLE t_person( id int(3) not null auto_increment, name varchar(...
阅读全文
posted @ 2016-01-05 20:59
duanxz
阅读(2282)
推荐(0)
摘要:
按照mybatis手册中所说的,association有两种实现方式,嵌套查询和嵌套结果映射。如手册中所述,select方式会带来N+1次查询的问题,考虑到效率问题的话建议使用嵌套结果映射。但是在结合使用rowbounds进行分页的时候嵌套结果映射会报Mapped Statements with n...
阅读全文
posted @ 2016-01-05 20:58
duanxz
阅读(590)
推荐(0)
摘要:
对于Mybatis 拥有的Lazy Load(有中文翻译成延迟加载)功能,应该很同学都有听说过,今天主要与大家一起来解读一下Mybatis在Lazy Load功能的实现的代码。Lazy Load实现的功能很好理解,就是在数据与对象进行Mapping操作时,只有当真正使用该对象时,才进行Mapping...
阅读全文
posted @ 2016-01-05 20:58
duanxz
阅读(796)
推荐(0)
摘要:
1.mybatis判断是否为空或null 2.Mybatis中的like查询 今天要做一个模糊查询 用的Mybatis 开始写的是: 最后改为: select id,bookName,author,publisher,donor,status,createDate,lastUpdate from b
阅读全文
posted @ 2016-01-05 20:57
duanxz
阅读(9176)
推荐(1)
摘要:
前言 HDFS 是一个能够面向大规模数据使用的,可进行扩展的文件存储与传递系统。是一种允许文件通过网络在多台主机上分享的文件系统,可让多机器上的多用户分享文件和 存储空间。让实际上是通过网络来访问文件的动作,由程序与用户看来,就像是访问本地的磁盘一般。即使系统中有某些节点脱机,整体来说系统仍然可以持
阅读全文
posted @ 2016-01-05 20:56
duanxz
阅读(4584)
推荐(0)
摘要:
一、单个参数: 二、多参数: 三、Map封装多参数: 四、List封装in: 五、多参数传递之注解方式示: 六、selectList()只能传递一个参数,但实际所需参数既要包含String类型,又要包含List类型时的处理方法: 将参数放入Map,再取出Map中的List遍历。如下:
阅读全文
posted @ 2016-01-05 20:55
duanxz
阅读(937)
推荐(0)
摘要:
概念 如果索引包含所有满足查询需要的数据的索引成为覆盖索引(Covering Index),也就是平时所说的不需要回表操作 判断标准 使用explain,可以通过输出的extra列来判断,对于一个索引覆盖查询,显示为using index,MySQL查询优化器在执行查询前会决定是否有索引覆盖查询 注
阅读全文
posted @ 2016-01-05 20:54
duanxz
阅读(1201)
推荐(0)
摘要:
MySQL有一个内置的BENCHMARK()函数,可以测试某些特定操作的执行速度。 BENCHMARK会重复计算expr表达式count次,通过这种方式就可以评估出mysql执行这个expr表达式的效率。这个函数的返回值始终是0,但可以根据客户端提示的执行时间来得到BENCHMARK总共执行的所消耗
阅读全文
posted @ 2016-01-05 20:52
duanxz
阅读(4998)
推荐(0)
摘要:
一、并集 Union因为要进行重复值扫描,所以效率低。如果合并没有刻意要删除重复行,那么就使用Union All 两个要联合的SQL语句 字段个数必须一样,而且字段类型要“相容”(一致); 如果我们需要将两个select语句的结果作为一个整体显示出来,我们就需要用到union或者union all关
阅读全文
posted @ 2016-01-05 20:43
duanxz
阅读(4342)
推荐(0)