- 博客(35)
- 收藏
- 关注
原创 HTTP 协议简介(转)
一、TCP/IP 协议介绍 在介绍 HTTP 协议之前,先简单说一下TCP/IP协议的相关内容。TCP/IP协议是分层的,从底层至应用层分别为:物理层、链路层、网络层、传输层和应用层,如下图所示: TCP/IP基础--层次图 从应用层至物理层,数据是一层层封装,封装的方式一般都是在原有数据的前面加一个数据控制头,数据封装格式如下: TCP/IP基础--数据封装 其中,对于TC...
2010-01-13 15:55:04 181
原创 JAVA内存溢出解析(转)
JAVA内存溢出解析 核心提示:原因有很多种,比如: 1.数据量过于庞大;死循环 ;静态变量和静态方法过多;递归;无法确定是否被引用的对象; 2.虚拟机不回收内存(内存泄漏); 说白了就是程序运行要用到的内存大于虚拟机能提供的最大内存就发生内存溢出了。 内存溢出的问题要看业务和系 原因有很多种,比如: 1.数据量过于庞大;死循环 ;静态变量和静态方法过多;递归;无法确定是否被引用的对象...
2010-01-13 15:16:04 140
原创 Java的内存泄漏(转)
问题的提出 Java 的一个重要优点就是通过垃圾收集器(Garbage Collection,GC)自动管理内存的回收,程序员不需要通过调用函数来释放内存。因此,很多程序员认为Java不存在内存泄漏问题,或者认为即使有内存泄漏也不是程序的责任,而是GC或JVM的问题。其实,这种想法是不正确的,因为Java也存在内存泄露,但它的表现与C++不同。 随着越来越多的服务器程序采用Java技术...
2010-01-13 14:36:00 144
原创 Java方法继承、方法重载、方法覆盖小总结(转)
Java方法继承、方法重载、方法覆盖小总结 1、方法继承:利用extends关键字一个方法继承另一个方法,而且只能直接继承一个类。 * 当Sub类和Base类在同一个包时Sub类继承Base类中的public/protected/默认级别的变量个方法 * 在不同包时继承public/protected级别的变量和方法。 2、方法重载:如果有两个方法的方法名相同,但参...
2010-01-06 17:21:12 156
原创 JVM原理学习—— 类的初始化(转)
类的初始化工作,主要是将静态变量、常量初始化为“正确”的值(也就是程序员希望设定的特定值而非其类型的默认值),以及其它一些需要在初始化类的时候需要做的工作(如读取配置文件等)。通常我们可以这样做: Java代码 [code="java"]class A extends B { public static int intVal = 30; public static ...
2010-01-05 16:53:39 107
原创 JVM原理学习 —— 虚拟机规范(转)
《Inside the JVM》一开始就指出,所谓“虚拟机”实际上在不同的语境下有不同的涵义。有时候它指的是虚拟机的“规范”(spec),有时候指的是虚拟机的具体实现(如Sun JDK, BEA JRockit),有时候指的是正在运行着的一个虚拟机的实例(你启动Tomcat或者JBoss,甚至一个j2se程序,都同时启动了一个虚拟机实例)。书中如无特别说明,指的一般都是“规范”。 虚...
2010-01-05 16:51:13 174
原创 深入探索Java工作原理:JVM,内存回收及其他
深入探索Java工作原理:JVM,内存回收及其他 Java语言引入了Java虚拟机,具有跨平台运行的功能,能够很好地适应各种Web应用。同时,为了提高Java语言的性能和健壮性,还引入了如垃圾回收机制等新功能,通过这些改进让Java具有其独特的工作原理。 1.Java虚拟机 Java虚拟机(Java Virtual Machine,JVM)是软件模拟的计算机,它可以在任何处理器上(无论是在计...
2010-01-05 16:43:55 126
原创 JSP动作指令(6个常用的动作指令)(转)
一、Include指令 标签表示包含一个静态的或者动态的文件。 语法: or 注: 1、page="path" 为相对路径,或者代表相对路径的表达式。 2、flush="true" 必须使用flush为true,它默认值是false。 3、子句能让你传递一个或多个参数给动态文件,也可在一个页面中使用多个来传递多个参数给动态文件。 二、Forward指...
2010-01-04 11:38:57 157
原创 SP内置对象(9个常用的内置对象) (转)
SP内置对象(9个常用的内置对象) 1.request对象 客户端的请求信息被封装在request对象中,通过它才能了解到客户的需求,然后做出响应。它是HttpServletRequest类的实例。 序号 方 法 说 明 1 object getAttribute(String name) 返回指定属性的属性值 2 Enumeration getAttrib...
2010-01-04 11:32:56 1048
原创 SQL语言的分类 (转)
SQL语言的分类 SQL语言共分为四大类:数据查询语言DQL,数据操纵语言DML, 数据定义语言DDL,数据控制语言DCL。 1 数据查询语言DQL Q = Query (Data Query Language) 数据查询语言DQL用于检索数据库 查询数据库的数据 基本结构是由SELECT子句,FROM子句,WHERE子句组成的查询块: SELECT FROM WHERE...
2009-12-31 14:30:07 201
原创 java里类的继承机制-成员变量(转)
在网上看见一个关于java继承的问题,觉得这是很多初学java应该注意的问题。 Java代码 [code="java"]public abstract class A { int i=1; public void printI() { System.out.println("i="+i); } } public class B extneds A{ ...
2009-12-31 14:03:05 521
原创 java里类的继承机制-构造方法(转)
这次我想深入探究以下java里类的继承机制。 我们知道,继承是java设计里的一个失败的地方。高司令说过:如果让他重新设计java的话,他会把继承去掉。而java里继承到底怎么了,会这么不受人欢迎呢? 我们知道,继承设计的初衷是为了代码复用。在C++里也确实做到了这一点,因为C++允许多重继承。特别是C++里的析构函数,申明为了virtual的时候可以多重复用,用起来也很舒服。 那么为什么在...
2009-12-31 14:00:45 143
原创 java 继承类 变量、静态变量、构造函数执行顺序(转)
java 继承类 变量、静态变量、构造函数执行顺序 [code="java"]class C{ static int prt(int i){ System.out.println(i); return i; } } class A{ int a=C.prt(0); static int b=C.prt(1); A(){ System.out.pri...
2009-12-31 13:35:00 125
原创 map,set,list,等JAVA中集合解析
map,set,list,等JAVA中集合解析 在JAVA的util包中有两个所有集合的父接口Collection和Map,它们的父子关系: java.util +Collection 这个接口extends自 --java.lang.Iterable接口 +List 接口 -ArrayList 类...
2009-12-30 15:51:20 159
原创 Class.getResourceAsStream 和 ClassLoader.getResourceAsStream
两个都可以用于从 classpath 里面进行资源读取, classpath包含classpath中的路径 和classpath中的jar。 两个方法的区别是资源的定义不同, 一个主要用于相对与一个object取资源,而另一个用于取相对于classpath的 资源,用的是绝对路径。 在使用Class.getResourceAsStream 时, 资源路径有两种方式, 一种以 / ...
2009-12-29 11:21:25 131
原创 JTA和JDBC事务
JTA和JDBC事务(转) 一般情况下,J2EE应用服务器支持JDBC事务、JTA事务、容器管理事务。这里讨论JTA和JDBC事务的区别。这2个是常用的DAO模式事务界定方式。 JDBC 事务 JDBC 事务是用 Connection 对象控制的。JDBC Connection 接口( java.sql.Connection )提供了两种事务模式:自动提交和手工提交。 ★ 在j...
2009-12-28 15:44:46 144
原创 深入研究java.long.Class类(转)
前言:Java的类库日益庞大,所包含的类和接口也不计其数。但其中有一些非常重要的类和接口,是Java类库中的核心部分。常见的有String、Object、Class、Collection、ClassLoader...,熟悉这些类是学好Java的基础。而这些类一般不容易理解,需要做深入的研究和实践才能掌握。下面是我对这些类理解和使用的一些总结。欢迎你在阅读后将你宝贵的意见和读后感留下! ...
2009-12-27 23:13:13 284
原创 Java关键字之native,strictfp,transient,volatile
Java关键字(keywords) abstract default if private this boolean do implements protected throw break double import public ...
2009-12-21 14:04:35 176
原创 数据库事务隔离级别与锁
数据库事务隔离级别与锁 一、事务的4个基本特征 当事务处理系统创建事务时,将确保事务有某些特性。组件的开发者们假设事务的特性应该是一些不需要他们亲自管理的特性。这些特性称为ACID特性。 ACID就是:原子性(Atomicity )、一致性( Consistency )、隔离性或独立性( Isolation)和持久性(Durabilily)。 1、原子性 (Atomicity ) ...
2009-12-18 15:46:07 126
原创 javap的使用
javap简介 原文网址 http://www.javaresearch.org/article/768.htm . 也许我们很少会使用到javap工具,因为现在有很多好的反编译工具,但是我在此介绍这个工具不是使用它进行反编译,而是查看java编译器为我们生成的字节码,通过比较字节码和源代码,我们可以发现很多的问题,一个很重要的作用就是了解很多编译器内部的工作机制,在笔者以前的几篇文...
2009-12-16 22:38:21 151
原创 二分搜索算法
/* * 二分搜索算法用于针对已排序的集合进行搜索。 它的原理是: 1, 找到排序数组的中间元素,如果它匹配目标值,那么就返回它在数组中的索引。 2, 如果没有找到,那么判断中间值比目标值大还是小, 如果中间值比目标值大,那么就对第一个元素到middle-1的元素递归这个过程。 如果中间值比目标值小,那么就对middle+1到最后一个元素。 3, 如...
2009-12-16 21:23:09 151
原创 希尔排序
/* 希尔排序 在直接插入排序算法中,每次插入一个数,使有序序列只增加1个节点,并且对插入下一个数没有提供任何帮助。如果比较相隔较远距离(称为增量)的数,使得数移动时能跨过多个元素,则进行一次比较就可能消除多个元素交换。D.L.shell于1959年在以他名字命名的排序算法中实现了这一思想。算法先将要排序的一组数按某个增量d分成若干组,每组中记录的下标相差d.对每组中全部元素进行排序,然后...
2009-12-16 21:22:14 85
原创 快速排序
/* * 快速排序学习: 今天我学习了快速排序,顾名思义,快速排序的速度是很快的,平均复杂度是nlogn,我也不知道是怎么算出来的,反正 T(n) = 2T(n/2) + o(n) 这样怎么怎么推到就成了nLogn了,呵呵,有空去学习一下。希望会的人可以教我,我数学太烂了。废话少说,记录一下快速排序的思路: 1.分治的思想,把数组分成两份,两份分成4分,这样分到足够小,就能很好排序...
2009-12-16 21:20:23 83
原创 归并排序
/* * 合并排序 合并排序(MERGE SORT)是又一类不同的排序方法,合并的含义就是将两个或两个以上的有序数据序列合并成一个新的有序数据序列,因此它又叫归并算法。它的基本思想就是假设数组A有N个元素,那么可以看成数组A是又N个有序的子序列组成,每个子序列的长度为1,然后再两两合并,得到了一个 N/2 个长度为2或1的有序子序列,再两两合并,如此重复,值得得到一个长度为N的有序数...
2009-12-16 21:17:30 79
原创 插入排序
/* 插入排序 (Insertion Sort) 插入排序的基本思想是,经过i-1遍处理后,L[1..i-1]己排好序。第i遍处理仅将L[i]插入L[1..i-1]的适当位置,使得L[1..i] 又是排好序的序列。要达到这个目的,我们可以用顺序比较的方法。首先比较L[i]和L[i-1],如果L[i-1]≤ L[i],则L[1..i]已排好序,第i遍处理就结束了;否则交换L[i]与L[i-1]...
2009-12-16 21:16:11 92
原创 选择排序
/* 选择排序(Selection Sort) 选择排序的基本思想是对待排序的记录序列进行n-1遍的处理,第i遍处理是将L[i..n]中最小者与L[i]交换位置。这样,经过i遍处理之后,前i个记录的位置已经是正确的了。 选择排序是不稳定的,算法复杂度是O(n ^2 )。 */ public static void chooseSort(int[] array,int len){ ...
2009-12-16 21:14:39 84
原创 冒泡排序
/* * 冒泡排序(BubbleSort)方法是最简单的排序方法。这种方法的基本思想是,将待排序的元素看作是竖着排列的“气泡”,较小的元素比较轻,从而要往上浮。在冒泡排序算法中我们要对这个“气泡”序列处理若干遍。所谓一遍处理,就是自底向上检查一遍这个序列,并时刻注意两个相邻的元素的顺序是否正确。如果发现两个相邻元素的顺序不对,即“轻”的元素在下面,就交换它们的位置。显然,...
2009-12-16 21:12:34 89
原创 Ajax的原理和应用
Ajax的原理和应用(给公司做所的培训) 在写这篇文章之前,曾经写过一篇关于AJAX技术的随笔,不过涉及到的方面很窄,对AJAX技术的背景、原理、优缺点等各个方面都很少涉及null。这次写这篇文章的背景是因为公司需要对内部程序员做一个培训。项目经理找到了我,并且征询我培训的主题,考虑到之前Javascript、CSS等WEB开发技术都已经讲解过了,所以决定针对AJAX这一块做一个比较系统的培训,...
2009-12-16 16:18:35 89
原创 JAVA 基本数据类型取值范围
先看一段代码 public class Hello{ public static void main(String[] args){ int i = 5 , j = 2; System.out.println(i+j); System.out.println(i-j); System.out.println(i...
2009-12-16 15:55:53 113
原创 jQuery插件开发全解析
jQuery插件的开发包括两种: 一种是类级别的插件开发,即给jQuery添加新的全局函数,相当于给jQuery类本身添加方法。jQuery的全局函数就是属于jQuery命名空间的函数,另一种是对象级别的插件开发,即给jQuery对象添加方法。下面就两种函数的开发做详细的说明。 1、类级别的插件开发 类级别的插件开发最直接的理解就是给jQuery类添加类方法,可以理解为添加静态方...
2009-12-16 11:32:43 87
原创 Tomcat启动分析
Tomcat启动分析 核心提示:用 文本编辑工具打开用于启动Tomcat的批处理文件startup.bat,仔细阅读。在这个文件中,首先判断CATALINA_HOME环境变量是否为 空,如果为空,就将当前目录设为CATALINA_HOME的值。接着判断当前目录下是否存在bin\catalina.bat 用 文本编辑工具打开用于启动Tomcat的批处理文件startup.bat,仔细阅读。在这个...
2009-12-14 17:23:28 94
原创 JS 中面向对象的5钟写法
JS 中面向对象的5钟写法 //第1种写法 function Circle(r) { this.r = r; } Circle.PI = 3.14159; Circle.prototype.area = function() { return Circle.PI * this.r * this.r; } ...
2009-12-14 17:15:54 197
原创 servlet的介绍
servlet的介绍 关键字: servlet的介绍 在 eclispe中建立web工程! 例子: 建立一个java项目然后在这个java工程下创建一个sevlet包,sevlet包下有一个WEB-INF包,该包下面有俩个包一个lib,一个classes包 WEN-INF同目录下创建一个web.xml。用于存放配置信息! web 下的配置信息; servlet ...
2009-12-14 17:14:35 104
原创 网络分层
ISO提出的OSI(Open System Interconnection)模型将网络分为七层,即物理层( Phisical )、数据链路层(Data Link)、网络层(Network)、传输层(Transport)、会话层(Session)、表示层(Presentation)和应用层(Application)。 1. 物理层(Physical layer)是参考模型的最低层。该层...
2009-12-14 17:11:47 128
原创 边界类 控制类 实体类
关键字: 边界类 控制类 实体类 小雨 发表于 2006-8-11 10:39:55 链接:http://blogger.org.cn/blog/more.asp?name=nrzj&id=17433 UML中类有三种主要的版型:边界类、控制类和实体类。引入边界类、控制类及实体类的概念有助于分析和设计人员确定系统中的类。 边界类位于系统与外界的交界处,窗体、报表、...
2009-12-14 17:05:05 459
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人