自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(59)
  • 资源 (4)
  • 收藏
  • 关注

转载 HTTP/1.1与HTTP/1.0的区别

HTTP/1.1与HTTP/1.0的区别转载自:http://blog.csdn.net/forgotaboutgirl/article/details/6936982 下面主要从几个不同的方面介绍HTTP/1.0与HTTP/1.1之间的差别,当然,更多的内容是放在解释这种差异背后的机制上。1 可扩展性可扩展性的一个重要原则:如果HTTP的某个实现接收到了自身未定义

2015-03-22 20:32:09 674

转载 MySQL存储引擎--MyISAM与InnoDB区别

转载自:http://blog.csdn.net/xifeijian/article/details/20316775MyISAM 和InnoDB 讲解  InnoDB和MyISAM是许多人在使用MySQL时最常用的两个表类型,这两个表类型各有优劣,视具体应用而定。基本的差别为:MyISAM类型不支持事务处理等高级处理,而InnoDB类型支持。MyISAM类型的表强调的是性能,其执行数

2015-03-15 22:33:55 553

转载 MySQL InnoDB MVCC原理

转载自:http://blog.sina.com.cn/s/blog_711b11fd0101bhks.html一、基础知识事务:事务是一组原子性sql查询语句,被当作一个工作单元。若mysql对改事务单元内的所有sql语句都正常的执行完,则事务操作视为成功,所有的sql语句才对数据生效,若sql中任意不能执行或出错则事务操作失败,所有对数据的操作则无效(通过回滚恢复数

2015-03-15 22:19:30 933

转载 Nginx+Tomcat+Memcached实现tomcat集群和session共享

转载自:http://www.cnblogs.com/yixiwenwen/p/3578450.html一、Nginx安装  详见前文:http://www.cnblogs.com/yixiwenwen/p/3574097.html二、memcached安装和启动  详见前文:http://www.cnblogs.com/yixiwenwen/p/3574137

2015-03-15 18:29:48 658

转载 基于nginx tomcat redis分布式web应用的session共享配置

转载自:http://www.cnblogs.com/lengfo/p/4260363.html一、前言  nginx 作为目前最流行的开源反向代理HTTP Server,用于实现资源缓存、web server负载均衡等功能,由于其轻量级、高性能、高可靠等特点在互联网项目中有着非常普遍的应用,相关概念网上有丰富的介绍。分布式web server集群部署后需要实现sessio

2015-03-15 18:24:17 1512

转载 集群中几种session同步解决方案的比较

在集群中session安全和同步是个最大的问题,下面是收集到的几种session同步的方案,希望能通过分析其各自的优劣找出其适应的场景。1. 客户端cookie加密简单,高效。比较好的方法是自己采用cookie机制来实现一个session,在应用中使用此session实现。问题:session中数据不能太多,最好只有个用户id。参考实现:http://rollerweb

2015-03-15 18:10:46 705

转载 apache + tomcat集群负载均衡,Session复制

转自:http://jackandroid.iteye.com/blog/627147 无意间看到tomcat 6集群的内容,就尝试配置了一下,还是遇到很多问题,特此记录。apache服务器和tomcat的连接方法其实有三种:JK、http_proxy和ajp_proxy。本文主要介绍最为常见的JK。环境:PC2台:pc1(IP 192.168.88.118)安装了apache和t

2015-03-15 14:55:54 1339

转载 java多线程--避免死锁

在有些情况下死锁是可以避免的。本文将展示三种用于避免死锁的技术:加锁顺序加锁时限死锁检测加锁顺序当多个线程需要相同的一些锁,但是按照不同的顺序加锁,死锁就很容易发生。如果能确保所有的线程都是按照相同的顺序获得锁,那么死锁就不会发生。看下面这个例子:Thread 1: lock A lock BThread 2: wait for A

2015-03-15 10:36:17 780

转载 java并发--并发集合

在 Java 编程的早期阶段,位于 Oswego 市的纽约州立大学(SUNY) 的一位教授决定创建一个简单的库,以帮助开发人员构建可以更好地处理多线程情况的应用程序。这并不是说用现有的库就不能实现,但是就像有了标准网络库一样,用经过调试的、可信任的库更容易自己处理多线程。在 Addision-Wesley 的一本相关书籍的帮助下,这个库变得越来越流行了。最终,作者 Doug Lea 决定设法让它成

2015-03-14 23:32:14 472

转载 java并发--Exchanger

为了说明 Exchanger 的使用,本文假设一种场景。假设有一个连接缓存队列,有一个连接器负责创建连接,创建的连接会存储在队列里。另外一个释放连接器可以释放连接,从队列里移除连接。连接器每次会随机地创建 1 或 2 个连接。释放连接器只能每次释放 1 个连接。最后肯定会有连接队列满的时候,那时就可以进行连接队列的测试了。要实现这一种场景,可以使用 Exchanger 来实现。可以查看代码

2015-03-14 22:41:41 480

转载 Spring @RequestMapping @RequestParam

概述继 Spring 2.0 对 Spring MVC 进行重大升级后,Spring 2.5 又为 Spring MVC 引入了注解驱动功能。现在你无须让 Controller 继承任何接口,无需在 XML 配置文件中定义请求和 Controller 的映射关系,仅仅使用注解就可以让一个 POJO 具有 Controller 的绝大部分功能 —— Spring MVC 框架的易用性得到了进

2015-03-12 22:15:27 606

转载 GC学习笔记

GC学习笔记这是我公司同事的GC学习笔记,写得蛮详细的,由浅入深,循序渐进,让人一看就懂,特转到这里。一、GC特性以及各种GC的选择1、垃圾回收器的特性2、对垃圾回收器的选择2.1 连续 VS. 并行2.2 并发 VS. stop-the-world2.3 压缩 VS. 不压缩 VS. 复制二、GC性能指标三、分代回收

2015-03-11 21:38:49 416

转载 Mysql 索引

索引是一种特殊的文件(InnoDB数据表上的索引是表空间的一个组成部分),它们包含着对数据表里所有记录的引用指针。注:[1]索引不是万能的!索引可以加快数据检索操作,但会使数据修改操作变慢。每修改数据记录,索引就必须刷新一次。为了在某种程序上弥补这一缺陷,许多SQL命令都有一个DELAY_KEY_WRITE项。这个选项的作用是暂时制止MySQL在该命令每插入一条新记录和每修

2015-03-04 15:52:27 452

转载 关于JAVA的try catch finally的return返回值问题

转载自:《http://blog.csdn.net/exsuns/article/details/5217669》[java] view plaincopyclass TestTryFinallyC {       public static void main(String[] args)  {              System.ou

2015-01-18 19:46:18 4842 2

原创 Spring TX源码分析

Spring事务管理提供全局事务管理(依赖Java提供的JTA)和本地事务管理,Spring TX在执行流程:1、Spring IOC容器初始化时加载事务管理切面配置;2、目标类代理类生成,通过AspectJAwareAdvisorAutoProxyCreator继承BeanPostProcessor的特性生成目标类代理对象;3、TransactionInterceptor

2015-01-04 18:55:12 1514

转载 Java JDK动态代理解析

Java动态代理只能针对接口进行动态代理。如果需要对类进行实现代理可以使用:CGLIB,ASM等相关的操作字节码实现(在这里先只介绍下SUN 基于接口动态代理的实现)。代码如下:[java] view plaincopyimport java.lang.reflect.InvocationHandler;  import java

2014-12-30 22:58:00 627

转载 依赖倒置,控制翻转,依赖注入

转自《http://dotnetfresh.cnblogs.com/archive/2005/06/27/181878.html》在《道法自然——面向对象实践指南》一书中,我们采用了一个对立统一的辩证关系来说明“模板方法”模式—— “正向依赖 vs. 依赖倒置”(参见:《道法自然》第15章[王咏武, 王咏刚 2004])。这种把“好莱坞”原则和 “依赖倒置”原则等量齐观的看法其实来自于轻量级容

2014-12-30 13:32:29 539

原创 Spring AOP声明式应用源码分析

Spring AOP应用主要有四种途径:1、利用ProxyFactory编程式应用;2、直接配置ProxyFactoryBean;3、配置AbstractAutoProxyCreator子类实现auto-proxy自动代理;4、通过配置Spring AOP。其中2,3,4都属于声明式Spring AOP的应用。一、ProxyFactoryBean应用举例ProxyFactoryBe

2014-12-29 21:57:29 1232

原创 Spring AOP:基本概念,基础接口,基础类,基本流程

一、基本概念Aspect:切面就是一个关注点的模块化,如事务管理、日志管理、权限管理等;JoinPoint:程序执行的一个点,如方法的执行或者异常的捕获;Advice:在特定的连接点执行的操作,包括Before,After,Around等类型;PointCut:描述某一类指定的连接点,Advice通过联系PointCut在任何匹配PointCut的连接点执行Adivce操作;A

2014-12-28 21:52:11 1132

原创 mysql更改密码

mysql忘记密码,Windows下重新设置密码。1.关闭MySQL服务。2.打开DOS窗口,转到mysql\bin目录。3.输入mysqld--skip-grant-tables回车。如果没有出现提示信息,那就对了。4.再开一个DOS窗口(因为刚才那个DOS窗口已经不能动了),转到mysql\bin目录。5.输入mysql回车,如果成功,将出现MySQL提

2014-12-12 22:13:19 444

原创 Spring Expression分析

一、Spring Expression介绍 Spring Expression是Spring框架中一个强大表达式解析语言,支持在运行时动态的解析表达式给对象赋值。Spring Expression支持如下解析功能:布尔和关系运算符,正则表达式,类表达式,访问属性、数组列表,哈希表,方法调用,关系运算,赋值,调用构造函数,Bean引用,数组构造,内联列表,三元运算符,变量,用户自定义

2014-12-10 23:48:20 6448

原创 Oracle查询数据库主外键关系

select user_cons_columns.constraint_name as 约束名,         user_cons_columns.table_name      as 子表名,         user_cons_columns.column_name     as 子表列名,         user_cons_columns.position        as

2014-12-04 09:11:01 1265 1

转载 Spring--IoC容器对非lazy-init的singleton Bean实例化过程

下面我们通过代码分析容器预实例化的实现过程:(1).先从IoC容器的初始会过程开始,通过前面文章分析,我们知道IoC容器读入已经定位的Bean定义资源是从refresh方法开始的,我们首先从AbstractApplicationContext类的refresh方法入手分析,源码如下:[java] view plaincopy//容器初始化的过程,读入Bean定义资源

2014-11-23 20:50:33 1121

原创 Spring-- Ioc 容器Bean实例化的几种场景

Bean实例化的几种场景 1、BeanDefinitionRegistryPostProcessor:标准BeanFactoryPostProcessor的扩展,BeanFactoryPostProcessor的作用是用来进一步定义注册的BeanDefinition,IoC容器本质就是Bean管理,所以BeanFactoryPostProcessor本身也是Bean,要对BeanFac

2014-11-23 20:32:43 6719

原创 Spring源码分析--Ioc容器定位解析资源文件并注册BeanDefinition

一、资源文件定位和解析流程加载和解析资源文件是在ApplicationContext子类调用refresh()方法时执行的,整个过程就是将资源文件读入到内存中并且解析成Spring Bean对应的数据结构(BeanDefinition)。以ClassPathXmlApplicatinContext为例整个调用流程如下图:

2014-11-22 21:47:07 1124

原创 Spring源码阅读--AbstractApplicationContext refresh()方法调用

Spring初始化Ioc容器很重要的一个

2014-11-22 13:05:55 6485

原创 Spring--ApplicationContext和BeanFactory区别

ApplicationContext功能一、BeanFactory是Spring中Bean管理的核心类之一,ApplicationContext为应用程序提供配置的核心接口。一个ApplicationContext提供以下功能:a、继承 Bean工厂方法来实现Bean管理,继承自org.springframework.beans.factory.ListableBeanFact

2014-11-19 22:46:33 975

原创 Spring源码--Spring core中对Future的扩展

Spring源码分析--Spring Core util.concurrent包是Spring中对Java {java.util.concurrent.Future}的扩展,支持Future适配,FutureTask添加多个回调函数。类图如下:   FutureAdapter:抽象类,充当适配器模式的适配器(Adaper)角色,将源角色Future 转换成目

2014-11-19 21:36:58 1720

转载 动态代理--cglib

CGlib简单介绍CGlib概述:cglib(Code Generation Library)是一个强大的,高性能,高质量的Code生成类库。它可以在运行期扩展Java类与实现Java接口。cglib封装了asm,可以在运行期动态生成新的class。cglib用于AOP,jdk中的proxy必须基于接口,cglib却没有这个限制。CGlib应用:以一个实例在简单介绍

2014-11-19 21:14:32 423

转载 Redis的数据回写机制

Redis的数据回写机制ps:炸Redis的数据回写机制分同步和异步两种,同步回写即SAVE命令,主进程直接向磁盘回写数据。在数据大的情况下会导致系统假死很长时间,所以一般不是推荐的。异步回写即BGSAVE命令,主进程fork后,复制自身并通过这个新的进程回写磁盘,回写结束后新进程自行关闭。由于这样做不需要主进程阻塞,系统不会假死,一般默认会采用这个方法。个人感觉方

2014-10-25 10:54:43 2743

转载 Cookie/Session详解

会话(Session)跟踪是Web程序中常用的技术,用来跟踪用户的整个会话。常用的会话跟踪技术是Cookie与Session。Cookie通过在客户端记录信息确定用户身份,Session通过在服务器端记录信息确定用户身份。本章将系统地讲述Cookie与Session机制,并比较说明什么时候不能用Cookie,什么时候不能用Session。1.1  Cookie机制在程序中,会话

2014-10-23 23:16:55 435

原创 Java版邻接表

要写一个Java版的邻接表,发现连邻接表

2014-09-24 21:53:23 4827

转载 JVM垃圾回收机制

Java语言出来之前,大家都在拼命的写C或者C++的程序,而此时存在一个很大的矛盾,C++等语言创建对象要不断的去开辟空间,不用的时候有需要不断的去释放控件,既要写构造函数,又要写析构函数,很多时候都在重复的allocated,然后不停的~析构。于是,有人就提出,能不能写一段程序在实现这块功能,每次创建,释放控件的时候复用这段代码,而无需重复的书写呢?1960年 基于MIT的Lisp首先提

2014-08-04 22:02:15 937

转载 JVM Heap和Stack

在JVM中,内存分为两个部分,Stack(栈)和Heap(堆),这里,我们从JVM的内存管理原理的角度来认识Stack和Heap,并通过这些原理认清Java中静态方法和静态属性的问题。  一般,JVM的内存分为两部分:Stack和Heap。  Stack(栈)是JVM的内存指令区。Stack管理很简单,push一定长度字节的数据或者指令,Stack指针压栈相应的字节位移;pop一定字节长度

2014-08-04 21:04:12 521

原创 Ubuntu14.04(LTS)gitHub客户端安装

Ubuntu14.04(LTS)gitHub客户端安装使用GitHub步骤:1、申请GitHub帐户xxx(申请网址:https://github.com)2、安装Git客户端(Linux)$sudo apt-get install git3、生成密钥对,这样项目可以push到GitHub上$ssh-keygen -t rsa -C

2014-07-27 16:47:45 4947

原创 ubuntu14.04(LTS)搭JDK + eclipse

安装jdk+ eclipse安装jdk一、下载jdk上oracle官网下载对应得jdk压缩包,本人ubuntu14.04(tls)下载的是64位的jdk7http://www.oracle.com/technetwork/java/javase/downloads/jdk7-downloads-1880260.html二、解压安装(建议安装在用户目录下)

2014-07-27 14:49:38 2106

原创 Linux下文件目录含义

1)根目录“/”    根目录位于目录结构的最顶层,用斜线(/)表示,类似于Windows操作系统的“C:\“,包含Fedora操作系统中所有的目录和文件。2)/bin    /bin 目录又称为二进制目录,包含了那些供系统管理员和普通用户使用的重要linux命令的二进制映像。该目录存放的内容包括各种可执行文件,还有某些可执行文件的符号连接。常用的命令有:cp、dmesg、kill

2014-07-27 11:57:06 751

转载 ubuntu安装和查看已安装

ubuntu安装和查看已安装说明:由于图形化界面方法(如Add/Remove... 和Synaptic Package Manageer)比较简单,所以这里主要总结在终端通过命令行方式进行的软件包安装、卸载和删除的方法。一、Ubuntu中软件安装方法1、APT方式(1)普通安装:apt-get install softname1 softname2 …;(2)修复安装:

2014-07-27 10:49:14 429

转载 Ubuntu14.04 LTS wineQQ

1.csdn好像不能贴百度网盘的链接,所以我加了些空格在里面,请自行在浏览器输入网址下载WineQQ 2013下载地址:http://pan.baidu.com/s/1nthXoRv2.安装Wine QQ前先确认系统有没有安装wine[html] view plaincopydpkg -l | grep wine    如果没有,只要输入下面的命令就

2014-07-26 21:37:02 664 1

原创 tomcat6.0的大量CLOSE_WAIT解决方案

转载自:点击打开链接

2014-07-20 16:45:18 4938

数据结构栈的基本操作

栈的基本操作,包含链栈的init,push,pop,trival, isempty,getlength,clear,destory,gettop。 栈的应用举例:数制转换,括号匹配,表达式求值

2011-06-10

数据结构链式线性表以及顺序线性表

线性表操作,包括顺序线性表,链式线性表,双向循序线性表,还有实际应用线性表。通过Vc6.0测试

2011-06-10

二叉树遍历(先序,后序,中序,层序)

建立二叉树,层序、先序、中序、后序遍历二叉树。 基本操作: (1)输入树的各个结点,并能够输出用不同方法遍历的遍历序列; (2)分别建立建立二叉树存储结构的的输入函数、输出层序遍历序列的函数、输出先

2010-10-18

c++/c的一些题目

一些c/c++的基础题目,感觉对初学者还是有一些作用

2009-06-29

空空如也

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

TA关注的人

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