自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Jackson Zhang

记录是最好的回忆!

  • 博客(157)
  • 资源 (2)
  • 收藏
  • 关注

原创 关于本博客内容声明

本博客是我在日常生活中的记录和收获,包括基础知识的学习总结、读书心得和项目实践遇到问题解决记录等等。其中有的是自己逐个字敲出来的总结心得,有的则是网上已经有很好的总结归纳,我转载过来方便学习。此博客仅为作者和其他志趣相同之人提供方便

2013-01-01 20:38:19 555

原创 spring源码编译和导入eclipse

1、下载源码并解压https://github.com/spring-projects/spring-framework/tree/v3.2.5.RELEASE 2、源码编译cmd进入spring源码根目录,执行编译源码:gradlew build可能出现问题:(1)如果出现某些方法找不到,需要检查下jdk版本,1.6版本的有些方法会找不到。需要升级jdk到1.

2015-04-04 16:02:36 3802 1

原创 redis过期策略

一、redis的key有六种过期策略1、noeviction:一旦内存满则返回错误2、allkeys-lru:对所有的key进行LRU3、volatile-lru:只对设置了过期的key进行LRU(默认的方式)4、allkeys-random:随机剔除一个key5、volatile-random:对设置过期的key进行随机剔除一个6、volatile-ttl:删

2015-04-02 20:16:43 2282

原创 网关和路由

在今天很多局域网采用都是路由来接入网络,因此现在通常指的网关就是路由器的IP),经常在家庭中或者小型企业网络中使用,用于连接局域网和Internet。 网关也经常指把一种协议转成另一种协议的设备,比如语音网关。对于以太网中的网关只能转发三层以上数据包,这一点和路由是一样的。而不同的是网关中并没有路由表,他只能按照预先设定的不同网段来进行转发。网关最重要的一点就是端口映射,子网内用户在外网看来只

2013-10-30 09:08:17 1380

转载 编程经验

英文原文:14 lessons after five years of professional programming排列不分先后:  1. 当性能遇到问题时,如果能在应用层进行计算和处理,那就把它从数据库层拿出来。排序和分组就是典型的例子。在应用层做性能提升总是要比在数据库层容易的多。就像对于MySQL,SQLite更容易掌控。  2. 关于并行计算,如果能避免就尽量避免。如果

2013-08-04 22:17:16 802

原创 文件描述符

文件描述符是一个简单的整数,用以标明每一个被进程所打开的文件和socket。第一个打开的文件是0,第二个是1,依此类推。Unix 操作系统通常给每个进程能打开的文件数量强加一个限制。更甚的是,unix 通常有一个系统级的限制。因为squid 的工作方式,文件描述符的限制可能会极大的影响性能。当squid 用完所有的文件描述符后,它不能接收用户新的连接。也就是说,用完文件描述符导致拒绝服务。直到

2013-08-03 09:10:09 829

原创 nginx配置文件

默认的主要配置文件是nginx.conf,主要内容如下#使用的用户和组user www www;#指定工作衍生的进程数,一般配置与CPU核数相等或总核数的两倍worker_processes 8;#相当于 error_log /data2/log/nginx/error.log error; 将错误日志输出到指定文件error_log /data2/log/nginx/er

2013-07-27 08:52:15 813

原创 对象的排序

1、实现java.util.Comparator接口,重写int compare(Object o1, Object o2)方法即可public class CompareUtil implements Comparator { /** * 重新排序方法,这里是根据complexity参数,从大到小排序 */ @Override public int compare(Object

2013-07-18 15:31:31 1353

原创 mysql常用操作

1、连接到mysql(其中127.0.0.1是数据库地址,root是用户名)> mysql -h 127.0.0.1 -u root -p> 输入密码2、创建用户>insert into mysql.user(Host,User,Password) values ("localhost","zkw",password("1234"));//刷新系统权限表>flush

2013-07-18 05:44:01 742

原创 nginx配置文件中的root和alias的区别

root和alias的最基本的区别是:root指定的目录可以做为根目录,可以定位到里面的其他目录;而alias则指定的目录是准确的其中alias的一个应用可以是,如果希望把不在root下的文件要能让web访问的到下面用实际例子说明root和alias的区别: location ~ .*\.jsp$ { alias /testalias/; }上面如果用 test

2013-07-11 19:43:24 5471

原创 URL相关API的使用

使用URL的API获取URL中的各部分内容,如host,端口等 public static void main(String[] args) { URL hp = new URL("http://www.test.com:80"); System.out.println("Protocol: " + hp.getProtocol()); System.out.println("Po

2013-07-06 17:28:14 1584

原创 mysql中索引利用情况(explain用法)

使用explain查看,如下1、首先创建表test,语句如下create table test(a int,b varchar(10),c varchar(10));2、在表中的a,b都创建索引,先后顺序是a,bcreate index idx_a_b on test(a,b);3、分别往里面插入三条数据,插入后结果如下:4、使用explain查询,查看索引使用情况(这

2013-06-06 14:12:17 10858

原创 用SecureCRT连接VMware中的Linux系统

ubuntu下面测试通过VMware上的操作:1、VMware中的Linux系统需要安装SSH服务sudo apt-get install openssh-server openssh-client2、一般安装后ssh服务会自动开启,如果重新启动后ssh服务关闭了,可以/etc/init.d/sshd start (验证状态/etc/init.d/sshd status

2013-06-05 19:06:13 1426

原创 Nginx安装(ubuntu下)

这里介绍的是编译安装,开始安装之前需要安装gcc编译环境,ubuntu下可以使用apt-get install build-essentialapt-get install libtool一、从网上下载的源码我们放置在/urs/local/src中二、解压后都放在/usr/local中进行安装三、接下来需要分别安装1、安装 zlib1g-dev和libpcre3-dev

2013-06-05 15:43:02 4587

原创 java获取本机IP

只能在windows中获取的InetAddress.getLocalHost()也能在Linux下获取的代码如下: private void getIp() throws SocketException { Enumeration allNetInterfaces = NetworkInterface.getNetworkInterfaces(); InetAddress

2013-05-08 14:48:14 1129

原创 开发记录2013-03-26

1、MySQL 的CAST()和CONVERT()函数可用来获取一个类型的值,并产生另一个类型的值。两者具体的语法如下:CAST(value as type);CONVERT(value, type);2、Jetty源码分析 http://zldeng1984.iteye.com/blog/13683783、位于org.apache.commons.collections.

2013-03-26 20:21:51 791

转载 java.util.Properties类的使用

Properties 基本知识如果不熟悉 java.util.Properties 类,那么现在告诉您它是用来在一个文件中存储键-值对的,其中键和值是用等号分隔的,如清单 1 所示。 清单 1. 一组属性示例foo=barfu=baz将清单 1 装载到 Properties 对象中后,您就可以找到两个键( foo 和 fu )和两个值( foo 的 bar 和 fu 的

2013-03-26 20:15:49 749

原创 实习总结3月14

一、各种软件的安装使用:可能出现问题:1、SecureCRT软件的安装过程(涉及到两个安装包,其中一个是产生序列号的)安装SecureCRT -v6.0后会出现类似注册信息的东西,要输入name和company,然后要输入序列号和日期,那些序列号和日期可以运行另外一个压缩包(SecureCRT-kg.rar)的可执行文件,然后输入相同的name和company,可以得到相应的序列号

2013-03-14 23:39:40 951

原创 resin的安装

一、resin的简介Resin提供了最快的jsp/servlets运行平台。Resin支持负载平衡(Load balancing),可以增加WEB站点的可靠性。方法是增加服务器的数量。比如一台SERVER的错误率是1%的话,那么支持负载平衡的两个Resin服务器就可以使错误率降到0.01%。它是全免费的 resin 普通版本和pro版本主要区别是 pro支持缓存和负载均衡。pro因为有

2013-03-10 15:08:21 1050

原创 搭建Nginx+Java环境

一、简介:Tomcat在高并发环境下处理动态请求时性能很低,而在处理静态页面更加脆弱。虽然Tomcat的最新版本支持epoll,但是通过Nginx来处理静态页面要比通过Tomcat处理在性能方面好很多。二、下载安装:下载nginxhttp://nginx.org/en/download.html下载解压后放到C:\nginx-1.0.4(官网这样要求的,不知道放其它盘有没有问题

2013-03-10 13:04:48 23920 4

原创 redis的安装

一、下载redishttp://code.google.com/p/servicestack/wiki/RedisWindowsDownload#Download_32bit_Cygwin_builds_for_Windows 把redis-2.02.zip解压到d盘,在解压后的文件中增加redis.conf文件,内容如下 # Redis configuration fil

2013-03-10 12:41:04 1730

原创 2013年一二月份寒假SSH项目——Hibernate常见异常

异常1:ids for this class must be manually assigned before calling save() id列不是自动生成,而你的id不允许为空造成的这样设置设置hibernate就认为id不需要它来指定,把设置id的权限交给了你。而你在不能为空的地方设置null....改成下面

2013-01-26 01:01:32 1084

原创 2013年一二月份寒假SSH项目——乱码问题

1、页面乱码问题sp页面显示中文乱码:    jsp页面的编码方式有两个地方需要设置:   pageEncoding="utf-8"%>   charset=utf-8"%>   其中:pageEncoding 指的是jsp文件本身在本地保存时的编码方式。contentType的charset 是指服务器发送网页内容给客户端时所使用的编码。   从第一次访问一个jsp页

2013-01-24 16:54:52 1695

原创 Tomcat启动时报Error listenerStart错误,访问web服务时报HTTP Status 404错误

今天把以前的一个系统重新搭了起来,在搭建过程中tomcat出现了Error listenerStart错误网上查了下,发现都是说是项目中的web.xml文件引起的,但是其实原因应该是很多的,单单从控制台是很难看出具体的原因,最好的解决方法就是看日志文件在tomcat安装路径下的logs文件夹下面有四个log文件,其中catalina开头的里面内容跟控制台是一样的localh

2013-01-02 14:56:49 973

原创 Linux中忘记root密码的解决方法

1、先将系统重启,在读秒的时候按下任意键就会出现如下图所示的菜单界面2、仔细看菜单下面的说明,按下 e 就能进入grub的编辑模式了。内容类似如下图3、然后在quiet(即第二行末尾)后面加入single,如下图4、再按下回车键确定后,按下 b 就可以开机进入单用户维护模式了。5、在这个模式下面,你会在tty1的地方不需要输入密码就可取得终端的控制权(而

2012-12-31 20:05:01 991

原创 线程实现的两种方式——用户空间和内核中

1、在用户空间中实现线程(1)特点:内核对线程包一无所知。从内核角度考虑,就是按正常的方式管理,即单线程进程(存在运行时系统)(2)优点:用户级线程包可以在不支持线程的操作系统上实现保存线程状态的过程和调用程序都只是本地过程,故启动它们比进程内核调用效率更高不需要陷阱,不需要上下文切换,也不需要对内存高速缓存进行刷新,使得线程调用非常快捷(3)缺点:线程发生I/O或页面

2012-12-31 19:31:51 8136

原创 线程

1、线程和进程的最大区别:进程拥有自己的地址空间(存放程序正文和数据以及其他资源,对应内存),而多个 线程共享同一个地址空间和所有可用数据2、使用线程原因:(1)在许多应用中同时发生着多种活动,其中某些活动随着时间的推移会被阻塞。通过将这些应用程序分解成可以准并行运行的多个顺序线程,程序设计模型会变得更简单,且不会因某一步I/O则程序卡死(2)线程比进程更轻量级,创建一个线程较创建

2012-12-31 16:34:11 1136

原创 进程

进程:正在运行的程序1、网络服务器:当一个请求进入时,服务器检查是否其需要的网页在缓存中。如果是,则把网页发送回去,如果不是,则启动一个磁盘请求以获取网页。然而,从cpu的角度看,磁盘请求需要漫长的时间(因磁盘的速度远小于内存处理,且是外围设备),这时一般是先切换到其他进程运行2、在某一瞬间,一个cpu只能运行一个进程,但在1秒钟期间,它可能运行多个进程,这样就产生了并行的错觉(伪并行),

2012-12-31 15:12:10 1183

转载 几种通讯协议的比较

一、综述本文比较了RMI,Hessian,Burlap,Httpinvoker,web service等5种通讯协议的在不同的数据结构和不同数据量时的传输性能。RMI是java语言本身提供的远程通讯协议,稳定高效,是EJB的基础。但它只能用于JAVA程序之间的通讯。Hessian和Burlap是caucho公司提供的开源协议,基于HTTP传输,服务端不用开防火墙端口。协议的

2012-12-30 23:46:47 1046

原创 操作系统原理——简单总结

1、下面是计算机主要部件的简化视图(如右图)多数计算机有两种运行模式:内核态和用户态软件中最基础的部分是操作系统,它运行在内核态。在这个模式,操作系统拥有对所有硬件的完全访问权,可以执行机器能够执行的任何指令那些会影响机器的控制或可进行I/O(输入/输出)操作的指令,在用户态中的程序里是禁止的2、Linux或Windows操作系统的源代码有五百万行数量级3、操作系统:一种运

2012-12-30 23:34:39 10937

原创 计算机网络基础——运输层

1、IP层仅仅使两个主机能通信;而真正的进行通信的实体是主机中的进程(应用进程),也就是说网络层是为主机之间提供逻辑通信,而运输层为应用进程之间提供端到端的逻辑通信2、运输层由于应用程序的需求不同,存在面向连接的TCP和无连接的UDP两种不同的运输协议3、TCP不提供广播和多播功能,下面是使用UDP和TCP协议的各种应用和应用层协议4、运输层的分用和复用:应用层所有的应用进程都

2012-12-23 23:22:34 1166

原创 计算机网络基础——网络层

1、网络层特点:无连接,尽最大努力2、网络层将网络互连起来采用的中间设备是路由器,在网络层以上使用的中间设备叫网关(用网关连接两个不兼容的系统需要在高层进行协议的转换)补充:当中间设备是转发器或网桥时,这仅仅是把一个网络扩大了,从网络层的角度看,这仍然是一个网络,一般不称为网络互连3、所谓虚拟互连网络是逻辑互连网络,意思是互连起来的各种物理网络的异构性本来是客观存在的,但利用IP协议就

2012-12-22 23:32:37 3533 1

原创 计算机网络基础——数据链路层

1、数据链路层主要有两种类型的信道:点对点信道和广播信道2、链路和数据链路链路:物理线路数据链路:物理线路+通信协议3、帧:点对点信道的数据链路层的协议数据单元4、点对点信道通信主要步骤:结点A——>结点B(1)A的数据链路层把网络层交付下来的IP数据报添加首尾封装成帧(2)A把帧发给B的数据链路层(3)若B接到的帧无差错,则取出IP数据报给网络层,否则丢弃5、

2012-12-22 20:35:46 1537

原创 计算机网络基础——物理层

物理层(重点放在基本概念的掌握)一个数据通信系统可划分为三部分:源系统(或发送端)、传输系统(或传输网络)和目的系统数据是运送消息的实体信号:模拟信号(代表消息的参数取值是连续的数字信号:代表消息的参数取值是离散的码元:代表不同离散数值的基本波形(0状态和1状态)信道:表示向某一方向传送消息的媒体通信三种方式:单向通信、双向交替通信、双向同时通信基带信号(来自信

2012-12-21 23:03:38 955

原创 计算机网络基础——体系结构

分层的原因:1、每一层实现相对独立的功能,复杂性下降2、易于实现和维护3、每一层的功能和服务明确,能促进标准化工作

2012-12-21 21:05:05 845

原创 主机规划与磁盘分区

在Linux里面,各个组件或设备都是一个文件1、Linux服务器中,内存的重要性比CPU还要高得多2、磁盘阵列:是利用硬件技术将数个硬盘整合成为一个大硬盘的方法,操作系统只会看到最后被整合起来的大硬盘。3、各硬件设备在Linux中的文件名(1)IDE接口的硬盘在Linux内的文件名为  /dev/hd[a-d](2)SCS/SATA/USB硬盘:/dev/sd[a-p](3

2012-12-15 20:09:13 794

原创 取消与关闭

1、中断的引入在程序中可能需要取消操作,也就是任务取消,原因也很多,例如用户请求取消,有时间限制的操作,应用程序事件,错误,关闭等等。(1)通常,中断是实现取消的最合理的方式(2)Thread中的中断方法有以下:public void interrupt(){ }public boolean isInterrupt(){ }  //public static boolean

2012-12-11 22:15:45 4149 1

原创 Linux相关介绍

Linux相关介绍1、Linux其实是一个操作系统最底层的内核(Linux Kernel)及其提供的内核工具。任何人均可取得源码与可执行这个内核程序,并且可以修改。此外,因为Linux参考设计规范,兼容于UNIX操作系统,故亦可称为UNIX Like的一种2、为了让用户能够接触到Linux,很多公司就将Linux Kernel与,可运行的软件集成起来,加上自己具有创意的工具程序,这个工具程

2012-12-09 18:36:53 733

转载 Windows 7下安装CentOS双系统

1.下载CentOS的安装盘直接去官网下载或者网上搜索,如 http://www.cnbeta.com/articles/196464.htm我的电脑是32位的,所以下载了i386版本的CentOS-6.2-i386-bin-DVD.iso注意:应该下载硬盘安装版,而不是liveCD版liveCD (光盘版)是可以直接在光盘上运行的版本,运行后可以再选择安装到硬盘中。bin-D

2012-12-09 15:43:24 641

原创 计算机基本组成

个人计算机常被称为X86架构的计算机1、主板主板中的芯片组通常分为两个桥接器来控制各组件的通信,分别是:(1)北桥:负责连接速度较快的CPU、内存与显卡等组件(2)南桥负责连接速度较慢的周边接口,包括硬盘、USB、网卡等目前北桥所支持的频率可高达333、400、533、800、1066、1333、1600MHz等,北桥所支持的频率我们称为前段总线速度2、CPU(1)Intel的

2012-12-06 20:31:45 1151

硬盘恢复软件及教程

如果一不小心把硬盘或U盘上重要的东西永久删除了,想恢复可以使用这软件 包括恢复软件和恢复操作教程

2012-08-31

空空如也

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

TA关注的人

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