- 博客(180)
- 资源 (1)
- 收藏
- 关注
原创 【MySQL:性能优化】MySQL 性能优化神器 Explain 使用分析
简介MySQL 提供了一个 EXPLAIN 命令, 它可以对SELECT语句进行分析, 并输出SELECT执行的详细信息, 以供开发人员针对性优化.EXPLAIN 命令用法十分简单, 在 SELECT 语句前加上 Explain 就可以了, 例如:EXPLAINSELECT*fromuser_infoWHEREid<300;准备为了接下来方便演示 EXPLAIN 的使用, 首先我们需要建立两个测试用的表, 并添加相应的数据:CREATE TABLE `...
2020-11-18 00:05:02 281
原创 【数据结构】MySQL数据库索引选择使用B+树?
我们在MySQL中的数据一般是放在磁盘中的,读取数据的时候肯定会有访问磁盘的操作,磁盘中有两个机械运动的部分,分别是盘片旋转和磁臂移动。盘片旋转就是我们市面上所提到的多少转每分钟,而磁盘移动则是在盘片旋转到指定位置以后,移动磁臂后开始进行数据的读写。那么这就存在一个定位到磁盘中的块的过程,而定位是磁盘的存取中花费时间比较大的一块,毕竟机械运动花费的时候要远远大于电子运动的时间。当大规模数据存储到磁盘中的时候,显然定位是一个非常花费时间的过程,但是我们可以通过B树进行优化,提高磁盘读取时定位的效率。为什么
2020-11-18 00:02:53 576
原创 【数据结构】B树与B+树(简单清晰描述)
1 B树在介绍B+树之前, 先简单的介绍一下B树,这两种数据结构既有相似之处,也有他们的区别,最后,我们也会对比一下这两种数据结构的区别。1.1 B树概念B树也称B-树,它是一颗多路平衡查找树。二叉树我想大家都不陌生,其实,B树和后面讲到的B+树也是从最简单的二叉树变换而来的,并没有什么神秘的地方,下面我们来看看B树的定义。每个节点最多有m-1个关键字(可以存有的键值对)。 根节点最少可以只有1个关键字。 非根节点至少有m/2个关键字。 每个节点中的关键字都按照从小到大的顺序排列,每个
2020-11-17 23:43:50 794
转载 jquery解析json数据
[javascript] view plaincopyjquery解析json数据: var data=" { root: [ {name:'1',value:'0'}, {name:'6101',value:'北京市'}, {name:'6102',value:'天津市'}, {name:'6103',
2015-01-21 23:10:45 757
转载 HttpServletResponse得到的四种方法
在struts1.x Action类的execute方法中,有四个参数,其中两个就是response和request。而在Struts2中,并没有任何参数,因此,就不能简单地从execute方法获得HttpServletResponse或HttpServletRequest对象了。 但在Struts2 Action类中仍然有很多方法可以获得这些对象。下面就列出四种获得这些对象的方法。
2015-01-21 14:21:41 5503
转载 jquery ajax后台向前台传list 前台用jquery $.each遍历list
下边是两种前台接收并遍历list Js代码 $.ajax({ type: 'post', url: xxx.action', dataType: 'text', success: function(data){ var dataObj=eval("("+dat
2015-01-03 01:52:29 18877
转载 Session和Application实现网络在线聊天室实例
login.aspx代码如下: body { width:780px; margin:0px auto;} form { width:400px; margin:0px auto;} h3 { margin:10px; padding:10px; text-align:center;}
2014-12-19 16:29:27 2603
转载 MySQL修改root密码的多种方法
方法1: 用SET PASSWORD命令 mysql -u root mysql> SET PASSWORD FOR 'root'@'localhost' = PASSWORD('newpass');方法2:用mysqladmin mysqladmin -u root password "newpass" 如果root已经设置过密
2014-12-18 21:56:07 663
转载 使用JDBC连接SQL Server数据库
1.准备工作: 准备相关的软件(Eclipse除外,开源软件可以从官网下载).Microsoft SQL server 2005 Express Edition下载地址:http://download.microsoft.com/download/0/9/0/09020fab-d2c3-4a8c-b9e0-db53a7a30ae8/SQLEXPR_CHS.EXE.SQL S
2014-12-18 15:54:02 1310
转载 JAVA中浅复制与深复制
1.浅复制与深复制概念⑴浅复制(浅克隆)被复制对象的所有变量都含有与原来的对象相同的值,而所有的对其他对象的引用仍然指向原来的对象。换言之,浅复制仅仅复制所考虑的对象(复制内容,不引用对象地址,即改变复制对象,不改变被复制对象内容),而不复制它所引用的对象(但改变复制对象的引用对象,会改变被复制对象的引用对象内容)。 ⑵深复制(深克隆)被复制对象的所有变量都含有与原来的对象相同
2014-12-08 17:53:15 540
转载 TCP 长连接和短连接
一、长连接与短连接:长连接:client方与server方先建立连接,连接建立后不断开,然后再进行报文发送和接收。这种方式下由于通讯连接一直存在。此种方式常用于P2P通信。短连接:Client方与server每进行一次报文收发交易时才进行通讯连接,交易完毕后立即断开连接。此方式常用于一点对多点通讯。C/S通信。二、长连接与短连接的操作过程:短连接的操作步骤是:建立连接——数据传输—
2014-12-08 14:49:10 729
转载 SQL中索引的原理
(一)深入浅出理解索引结构 实际上,您可以把索引理解为一种特殊的目录。微软的SQL SERVER提供了两种索引:聚集索引(clustered index,也称聚类索引、簇集索引)和非聚集索引(nonclustered index,也称非聚类索引、非簇集索引)。下面,我们举例来说明一下聚集索引和非聚集索引的区别: 其实,我们的汉语字典的正文
2014-10-25 01:58:31 713
转载 集线器、交换机、路由器、网桥、网关之间的区别
集线器(HUB) 集线器就是将网线集中到一起的机器,也就是多台主机和设备的连接器。集线器的主要功能是对接收到的信号进行同步整形放大,以扩大网络的传输距离,是中继器的一种形式,区别在于集线器能够提供多端口服务,也称为多口中继器。集线器在OSI/RM中的物理层。集线器的基本功能是信息分发,它把一个端口接收的所有信号向所有端口分发出去。一些集线器在分发之前将弱信号重新生成,一些集线器整理信号的时序
2014-10-24 18:54:46 880
转载 归并排序
归并排序介绍 前面我们讲了堆排序,因为它用到了完全二叉树,充分利用了完全二叉树的深度是⌊log2n⌋+1的特性,所以效率比较高。不过堆结构的设计本身是比较复杂的,老实说,能想出这样的结构就挺不容易,有没有更直接简单的办法利用完全二叉树来排序呢?当然是有。 先来举一个例子。你们知道高考一本、二本、专科分数线是如何划分出来的吗? 简单地说,如果各高
2014-10-23 21:46:41 786
转载 白话经典算法系列之七 堆与堆排序
堆排序与快速排序,归并排序一样都是时间复杂度为O(N*logN)的几种常见排序方法。学习堆排序前,先讲解下什么是数据结构中的二叉堆。二叉堆的定义二叉堆是完全二叉树或者是近似完全二叉树。二叉堆满足二个特性:1.父结点的键值总是大于或等于(小于或等于)任何一个子节点的键值。2.每个结点的左子树和右子树都是一个二叉堆(都是最大堆或最小堆)。当父结点的键值总
2014-10-23 20:58:51 762
转载 最大堆/最小堆【大根堆/小根堆】
堆的定义是:n个元素的序列{k1,k2,…,kn},当且仅当满足如下关系时被成为堆 (1)Ki 2i 且 ki 2i-1 或 (2) Ki >= k2i 且 ki >= k2i-1 (i = 1,2,…[n/2])当满足(1)时,为最小堆,当满足(2)时,为最大堆。 若将此序列对应的一维数组堪称是一个完全
2014-10-23 20:25:34 4388
转载 RandomAccessFile与内存映射文件
RandomAccessFileRandomAccessFile是用来访问那些保存数据记录的文件的,你就可以用seek( )方法来访问记录,并进行读写了。这些记录的大小不必相同;但是其大小和位置必须是可知的。但是该类仅限于操作文件。RandomAccessFile不属于InputStream和OutputStream类系的。实际上,除了实现DataInput和DataOutput接
2014-10-22 01:36:43 751
转载 Java IO读写大文件的几种方式及测试
本文转自:读取文件大小:1.45G 第一种,OldIO: Java代码 public static void oldIOReadFile() throws IOException{ BufferedReader br = new BufferedReader(new FileReader("G://lily_947.txt"));
2014-10-22 01:35:11 1092
转载 进程和线程的联系和区别
定义:一、进程是具有一定独立功能的程序关于某个数据集合上的一次运行活动,是系统进行资源分配和调度的一个独立单位。二、线程是进程的一个实体,是CPU调度和分派的基本单位,他是比进程更小的能独立运行的基本单位,线程自己基本上不拥有系统资源,只拥有一点在运行中必不可少的资源(如程序计数器,一组寄存器和栈),一个线程可以创建和撤销另一个线程;进程和线程的关系:(1)一个线程只能
2014-10-21 16:17:27 569
转载 PreparedStatement的优点包括两个: 1)会尽可能的提高性能 2)提高安全性(防止SQL Injeciton) 如争光说的二者相差一个单词Prepared,prep
PreparedStatement的优点包括两个: 1)会尽可能的提高性能 2)提高安全性(防止SQL Injeciton) 如争光说的二者相差一个单词Prepared,prepared的意思是准备好的。在处理SQL语句的时候PreparedStatement用于处理动态SQL语句,在执行前会有一个预编译过程,它是有时间开销的,虽然相对数据库的操作该时间开销可以忽
2014-10-17 12:17:19 1480
转载 spring的注入
spring的三种注入方式:接口注入(不推荐)getter,setter方式注入(比较常用)构造器注入(死的应用)关于getter和setter方式的注入: autowire="defualt" autowire=“byName” autowire="bytype"例如:有如下两个类需要注入 1 package org.jia; 2 3 p
2014-10-16 21:41:04 535
转载 图解classloader加载class的流程及自定义ClassLoader
/*** 转载请注明作者longdick http://longdick.iteye.com**/ java应用环境中不同的class分别由不同的ClassLoader负责加载。一个jvm中默认的classloader有Bootstrap ClassLoader、Extension ClassLoader、App ClassL
2014-10-16 21:14:58 806
转载 spring 注解机制和XML配置机制之间的比较
spring的annotation注入机制与XML注入机制本质上是相同的。annnotation简洁一些,遵循一些Coc.有些人喜欢annotation, 这样bean的声明,注册,注入都在“刚好”的地方出现,很自然。也有些人喜欢XML注入机制,认为这种方法集中声明在一起,能一下看到关系网,清晰明了。、从这一点看,这两种选择有点个人口味的意思。刚才自己敲代码分别
2014-09-26 19:52:24 4058
转载 代理后获取客户端IP地址
request方法客户端IP: request.getRemoteAddr() 输出:192.168.0.106 客户端主机名:request.getRemoteHost()输出:abc request.getHeader("Host") 输出:192.168.0.1:8080 Web服务器名字:request.getServerName()输出:192.168.0.1 服务器监
2014-09-10 17:16:31 1294
原创 StringUtils的isEmpty、isNotEmpty、isBlank、isNotBlank区别
isEmpty/isNotEmpty:判断某字符串是否为空,为空的标准是 str==null 或 str.length()==0 ;isBlank/isNotBlank:判断某字符串是否为空或长度为0或由空白符(whitespace) 构成
2014-09-03 17:15:07 1036
转载 关于一道简单的Java 基础面试题的剖析: short s1=1;s1 = s1 +1会报错吗?
题目:short s1 = 1; s1 = s1 + 1;有什么错? short s1 = 1; s1 += 1;有什么错?解答:Java规范有这样的规则[1.高位转低位需要强制转换 2.低位转高位自动转.]short s1 = 1; s1 = s1 + 1;有什么错? 答: i 是int 型
2014-08-13 11:30:10 670
转载 java中round()与floor的区别
round是四舍五入,注意负数5是舍的,例如:Math.round(1.5)值是2,Math.round(-1.5)值是-1;floor就是直接去掉小数保留整数,即如果参数是正数则小数部分全舍,参数是负数则小数部分全入。 例如:Math.floor(2.6)的值是2,Math.floor(-2.1)的值是-3
2014-08-13 11:20:53 1688
原创 判断一个对象是否为空
1if(StringUtils.isBlank(MapUtils.getString(fieldValueMap,"CJSJ")))if(fieldValueMap.get("CJSJ")==null||fieldValueMap.get("CJSJ").toString().trim().equals("")){
2014-08-06 17:50:23 781
转载 Java多线程之共享资源
在多线程程序运行过程中,可能会涉及到两个或者多个线程试图同时访问同一个资源。为了防止这种情况的发生,必须在线程使用共享资源时给资源“上锁”,以阻挡其它线程的访问。而这种机制也常常被称为互斥量,本文主要介绍它的两种方式synchronized和Lock 。1、synchronized当任务要执行被synchronized关键字保护的代码片段的时候,它会检查锁是否可用,然后获取锁,执行
2014-08-04 15:12:23 975
转载 js访问jsf的SelectOneRadio组件方式
1、jsf页面中有2个单选按钮,需要在js中判断当前选中的是哪一个,可以使用如下js代码访问: js代码判断当前选中的单选按钮:function check() {var selAdmin= userForm['userForm:loginUser'][0].checked;var selGuest= userForm['userForm:login
2014-07-24 21:53:45 742
原创 javax.el.PropertyNotFoundException: Property 'bookList' not found 。。。
${l.name}结果就出错了javax.el.PropertyNotFoundException: Property 'name' not found on type java.lang.String然后在网上找答案,有说name没有get,set方法,有说没有这属性
2014-07-21 16:46:27 927
转载 JSF配置常用说明
传统MVC框架的简化流程图: 所有的Web应用都是基于请求/响应架构的,虽然说JSF不是基于请求/响应的,而是以事件响应机制来进行通信的,可以将视图页面的UI组件状态绑定到托管Bean,也可以通过视图页面中UI组件的事件来触发托管Bean的方法,但这些都是开发者所看到的,其实只是JSF做了进一步的封装而已。 JSF也是一个MVC框架,依然无法改变Web应用的请求/响应的基本
2014-07-18 17:25:28 686
转载 Dispatcher initialization failed
严重: Dispatcher initialization failed java.lang.RuntimeException: java.lang.reflect.InvocationTargetException 处理方法: 1、核对lib包 commons-fileupload-1.2.1.jar, commons-io-1.3.2.jar ,commons-logging-1.0.
2014-07-18 16:05:34 566
转载 解决JSP中文乱码问题
大家在JSP的开发过程中,经常出现中文乱码的问题,可能一至困扰着大家,现把JSP开发中遇到的中文乱码的问题及解决办法写出来供大家参考。首先了解一下Java中文问题的由来:Java的内核和class文件是基于unicode的,这使Java程序具有良好的跨平台性,但也带来了一些中文乱码问题的麻烦。原因主要有两方面,Java和JSP文件本身编译时产生的乱码问题和Java程序于其他媒介交互产生的乱码问
2014-07-13 16:33:08 653
转载 java中String的getBytes方法使用
public class test { public static void main(String[] args){ String a="哈哈"; try { byte[] aa = a.getBytes("GB2312"); byte[] ab = a.getBytes("UTF-8"); for (int i = 0; i < aa.length; i++) {
2014-07-11 16:13:13 3002
转载 [好用]js确认删除对话框(无论是a标签还是submit)
js确认删除对话框-懒人图库 function delcfm() { if (!confirm("确认要删除?")) { window.event.returnValue = false; } } 删除代码说明:单击删除的超链接后将执行delcfm()函数,在对话框中,如果点击“确定”,函数将返回true
2014-07-10 12:45:22 986
转载 apache和tomcat区别
经常在用apache和tomcat等这些服务器,可是总感觉还是不清楚他们之间有什么关系,在用tomcat的时候总出现apache,总感到迷惑,到底谁是主谁是次,因此特意在网上查询了一些这方面的资料,总结了一下: 解析一 apache支持静态页,tomcat支持动态的,比如servlet等, 一般使用apache+tomcat的话,apache只是作为一个转发,对jsp的处理是由tomc
2014-07-08 17:48:48 472
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人