自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(26)
  • 资源 (2)
  • 收藏
  • 关注

原创 常见sql技巧 优化

1 正则  regexp 比like更消耗资源           select name, email from t where email REGEXP "@163[.,]com$"           select name, email from t where email like "%@163.com" ro email like "%@163,com" 2 RAND(

2017-08-17 21:21:54 321

原创 mysql 基础操作

1    mysql 表复制  复制结构 + 数据          把表t1 内容复制到 t2            方式1 : insert into t2 select * from t1                         缺点:只复制了数据, 并且错误          方式2:create table t2 like t1;  (复制结构) 

2017-08-16 21:07:57 228

原创 二分查找的三种方式

1 l         while (l <= r) { int m = (l + r) / 2; if (num[m] == target) return m; else if (num[m] > target) r = m - 1; else l = m + 1;}      如果数组中有和target 相等的返回相等位置的下表 , 如果没有相等的l是

2017-08-13 10:25:42 880 1

原创 mysql 优化语句

EXPLAIN  语句结果分析                      id     SELECT识别符。这是SELECT的查询序列号。          select_type   SELECT类型,可以为以下任何一种:                            SIMPLE     简单SELECT(不使用UNION或子查询)               

2017-08-12 22:46:23 226

原创 mysql 锁和范式

1  乐观锁和悲观锁 :         悲观锁(Pessimistic Lock),顾名思义,就是很悲观,每次去拿数据的时候都认为别人会修改,所以每次在拿数据的时候都会上锁,这样别人想拿这个数据就会block直到它拿到锁。传统的关系型数据库里边就用到了很多这种锁机制,比如行锁,表锁等,读锁,写锁等,都是在做操作之前先上锁         乐观锁(Optimistic Lock),顾名思义

2017-08-12 19:43:31 173

原创 mysql总结 事物

1 事物的特性 ACID            原子性:一组更新操作不可再分,要么全做,要么不做            一致性:事务的操作状态是正确的        隔离性: 并发执行的多个事务间互相不影响        持久性:已提交的事物的影响是持久的,被撤销事务的影响可恢复 2 事务的三种不一致性        脏读:读到另一个事务未提交的数据        不可

2017-08-12 17:32:40 178

原创 mysql 子查询

为什么需要子查询?               现实中,很多情况需要进行下述条件的判断              集合成员资格                        某一元素是否是某一个集合的成员              集合之间的比较                       某一个集合是否包含另一个集合等              集合基数的测试    

2017-08-12 14:49:30 338

转载 mysql 结构优化

MySQL的优化主要分为结构优化(Scheme optimization)和查询优化(Query optimization)。     最左前缀原理与相关优化               情况一:全列匹配。         很明显,当按照索引中所有列进行精确匹配(这里精确匹配指“=”或“IN”匹配)时,索引可以被用到。               情况二:最左前缀匹配。    

2017-08-11 23:11:58 276

原创 文件组织和索引

1   数据库存储和查询实现的基本思想       2  数据库表和记录与磁盘块的映射      3  数据库文件组织方法        数据组织要考虑更新(增、删、改)和检索需求                更新将涉及数据存储空间的扩展与回收问题                检索将涉及扫描整个数据库的问题、大批量处理数据问题                不同的需求要

2017-08-11 20:59:14 898

原创 kmp字符串匹配

next数组求解 public int[] makeNext(char[] arr) { int[] next = new int[arr.length]; next[0] = -1; int k = -1, j = 0; while (j < arr.length - 1){ // k 前缀

2017-08-11 13:00:41 157

原创 数据库查询总结

1 基础查询       select 列名 from 表名      2 条件查询        运算符       select  列名 from 表名  where 条件       =、!=、、>=;       BETWEEN…AND;    IN(set);      IS NULL;  AND;   OR; NOT;      3 模糊查询      

2017-08-10 23:02:27 1071

转载 ReentrantLock

在ReentrantLock中很明显可以看到其中同步包括两种,分别是公平的FairSync和非公平的NonfairSync。公平锁的作用就是严格按照线程启动的顺序来执行的,不允许其他线程插队执行的;而非公平锁是允许插队的。         默认情况下ReentrantLock是通过非公平锁来进行同步的,包括synchronized关键字都是如此,因为这样性能会更好。当执行加锁操作时,公平性将由

2017-08-10 20:53:55 221

转载 Java虚拟机字节码执行引擎

1  运行时栈帧结构         栈帧(Stack Frame) 是用于虚拟机执行时方法调用和方法执行时的数据结构,它是虚拟栈数据区的组成元素。每一个方法从调用到方法返回都对应着一个栈帧入栈出栈的过程。       每一个栈帧在编译程序代码的时候所需要多大的局部变量表,多深的操作数栈都已经决定了,并且写入到方发表的 Code 属性之中,一次一个栈帧需要多少内存,不会受到程序运行期变量数

2017-08-09 21:24:03 247

原创 java 序列化

序列化机制允许将实现序列化的Java对象转换为字节序列,字节序列可以保存在磁盘,或通过网络传输,以备以后重新恢复原来的对象,序列化机制使得对象可以脱离程序的运行而独立存在。        对象的序列化指讲一个Java对象写入IO流中,对象的反序列化指从IO流恢复Java对象,为了让某类是可序列化的,该类必须实现如下两个接口之一  Serializable ,Externalizable.

2017-08-09 20:14:11 166

转载 类加载机制

1 类的加载机制      虚拟机把描述类的数据从class文件加载到内存,对数据进行校验,转换解析和初始化,最终形成可以被虚拟机直接使用的Java类型,这就是虚拟机的类加载机制  2 类的生命周期  其中类加载的过程包括了加载、验证、准备、解析、初始化五个阶段。在这五个阶段中,加载、验证、准备和初始化这四个阶段发生的顺序是确定的,而解析阶段则不一定,它在某些情况下可以在初始化

2017-08-08 22:40:37 222

转载 jvm学习笔记

1 HotSpot算法实现                 1 枚举根节点              作为GC Root 的节点主要在全局性的引用(常量或静态属性)与执行上下文(栈帧的本地变量表),现在仅仅方法区就数百兆,如果逐个检测引用,会消耗很多时间,虚拟机应该有办法知道哪些地方存在对象的引用,在HotSpot中使用OopMap数据结构达到目的,在类加载完后,HotSpot就把对象

2017-08-08 15:37:06 243

原创 java 内存区域,垃圾回收

1,jvm内存区域                jvm内存区主要包括线程私有的程序计数器,虚拟机栈,本地方法栈,和线程共有的堆,方法区,                程序计数器:指示当前线程所执行的字节码执行到了第几行,字节码解释器工作时,会改变计数器的值取下条指令。                虚拟机栈:一个线程的每个方法在执行时,都会创建一个栈帧,栈帧存储方法执行所需参数和产

2017-08-07 21:11:40 244

原创 mybits 注解

MyBatis注解位于org.apache.ibatis.annotations包下,常用注解如下             1 select  映射查询sql语句 2 insert 映射插入语句  3  update 映射更新语句  4 delete 映射删除语句  5 result  在列和属性之间的单独结果映射,属性包括id  column one many,等  id是一个布尔值,表示是

2017-08-06 23:32:42 739

转载 mysql 总结

1  概念        mysql是关系型数据库,是由一个一个的表组成,表包括表头,行,列,键,值           表头:每一列的名称       列 : 有相同数据类型的数据的集合,  行:用来描述每个个体的具体信息 ,值:行的具体信息,每个值与该列的数据类型相同,键:标识每个特性的个体,具有唯一性。           2 命令            net

2017-08-06 16:41:18 189

转载 tomcat 总结2

1 配置虚拟主机          配置虚似主机就是配置一个网站。          在Tomcat服务器配置一个虚拟主机(网站),需要修改conf文件夹下的server.xml这个配置文件,使用Host元素进行配置,打开server.xml,可以看到Tomcat服务器自带的一个名称为localhost的虚拟主机(网站),                 平时我们将开发好的Java

2017-08-06 12:01:20 157

转载 tomcat 总结1

1  部署应用到服务器          1  把应用直接复制到tomcat的webapps目录下。           2   用jar -cvf MyApp.war 命令打包,放到webapps目录下

2017-08-05 22:35:00 203

原创 编码

1  简单概念         编码:信息从一种形式或格式转换为另一种形式或格式的过程。就是将我们看到的文字,图片等信息按照某种规则存储在计算机中。         解码:编码的逆过程,将存储在计算机上的二进制转换为我们看到的文子,图片。          字符:一个字符是一个单位的字形、类字形单位或符号的基本信息。字符是指计算机中使用的字母、数字、字和符号。          字

2017-08-04 21:23:06 233

原创 1 Java基础

集合类主要负责保存,承装其他数据,因此集合类也被称为容器类。         Java集合大致上分为Set,List,Map三个体系,Set代表无序,不可重复集合,List代表有序,重复集合。Map代表有映射关系集合。从jdk1.5以后,Java增加了Queue体系集合,代表一种队列。          Java集合类主要由两个接口派生而出,Collection和Map,是集合框架的根

2017-08-03 15:48:31 166

原创 Java基础

1 类的加载,连接和初始化         当我们调用Java命令来运行某个Java程序的时候,该命令会启动你一条Java虚拟机进程,不管该Java程序启动了多少个线程,他们都处于Java虚拟机进程里,他们都使用该Java进程的内存。          当程序运行到最后正常结束,使用System.exit();或Runtime.getRuntime().exit();代码结束,或遇到未捕获

2017-08-02 21:47:36 143

原创 java 基础

1 注解        从jdk5.0开始,Java增加了对元数据的支持,也就是Annotation,元数据就是数据的数据,Annotation就是代码里的特殊标记,这些标记可以在编译,

2017-08-01 21:48:02 163

原创 java 基础

1 异常

2017-08-01 16:10:34 155

W3CSchool全套离线手册

W3CSchool全套离线手册

2016-12-01

Linux常用命令全集

Linux 命令全集

2016-12-01

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除