自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(17)
  • 收藏
  • 关注

原创 三步学会Java+Socket编程

1.什么是socket 所谓socket通常也称作"套接字",用于描述IP地址和端口,是一个通信链的句柄。应用程序通常通过"套接字"向网络发出请求或者应答网络请求。 以J2SDK-1.3为例,Socket和ServerSocket类库位于java.net包中。Serv

2011-09-04 15:50:28 335

原创 MYSQL学习笔记

创建表:mysql> create table weather(WID int(11)NOT NULL PRIMARY KEY AUTO_INCREMENT, City ID int(11), Tianqi VARCHAR(20) default 'Good', Date date not null, foreign key(C ityID) references city(CityID) on delete CASCADE); Query OK, 0 rows affected (0.05 sec)

2011-04-27 13:56:00 597

转载 mysql foreign key(外键) 说明与实例

<br />一,什么是foreign key,及其完整性<br />个人觉得,foreign key就是表与表之间的某种约定的关系,由于这种关系的存在,我们能够让表与表之间的数据,更加的完整,关连性更强。关于完整性,关连性我举个例子,大家就会明白了。<br />有二张表,一张是用户表,一张是订单表:<br /> <br />1,如果我删除了用户表里的用户,那么订单表里面根这个用户有关的数据,就成了无头数据了,不完整了。<br />2,如果我在订单表里面,随便插入了一条数据,这个订单在用户表里面,没有与之对应

2011-04-27 11:00:00 1439

转载 Java初始化顺序总结

Java初始化顺序1在new B一个实例时首先要进行类的装载。(类只有在使用New调用创建的时候才会被java类装载器装入)2,在装载类时,先装载父类A,再装载子类B3,装载父类A后,完成静态动作(包括静态代码和变量,它们的级别是相同的,安装代码中出现的顺序初始化)4,装载子类B后,完成静态动作类装载完成,开始进行实例化1,在实例化子类B时,先要实例化父类A2,实例化父类A时,先成员实例化(非静态代码)3,父类A的构造方法4,子类B的成员实例化(非静态代码)5,子类B的构造方法先初始化父类的静态代码--->

2011-04-23 15:15:00 411

转载 二叉树的递归与非递归遍历(Java描述)

<br />构造树如下:<br /><br />其中二叉树节点类<br />/** 二叉树节点 */<br />public class BTNode {<br />    private char key;<br />    private BTNode left, right;<br /><br />    public BTNode(char key) {<br />        this(key, null, null);<br />    }<br /><br />    public BTNo

2011-04-23 14:39:00 358

转载 TCP/IP的三次握手连接和四次挥手关闭

<br /><br />在TCP/IP协议中,TCP协议提供可靠的连接服务,采用三次握手建立一个连接,如图1所示。<br />(1)第一次握手:建立连接时,客户端A发送SYN包(SYN=j)到服务器B,并进入SYN_SEND状态,等待服务器B确认。<br />(2)第二次握手:服务器B收到SYN包,必须确认客户A的SYN(ACK=j+1),同时自己也发送一个SYN包(SYN=k),即SYN+ACK包,此时服务器B进入SYN_RECV状态。<br />(3)第三次握手:客户端A收到服务器B的SYN+ACK包,

2011-04-23 14:14:00 459

转载 数据库中乐观锁与悲观锁的概念

锁( locking )业务逻辑的实现过程中,往往需要保证数据访问的排他性。如在金融系统的日终结算处理中,我们希望针对某个 cut-off 时间点的数据进行处理,而不希望在结算进行过程中(可能是几秒种,也可能是几个小时),数据再发生变化。此时,我们就需要通过一些机制来保证这些数据在某个操作过程中不会被外界修改,这样的机制,在这里,也就是所谓的 “ 锁 ” ,即给我们选定的目标数据上锁,使其无法被其他程序修改。Hibernate 支持两种锁机制:即通常所说的 “ 悲观锁( Pessimistic Lockin

2011-04-23 13:49:00 818

转载 Java设计模式综述

<br />      自从J2EE出现以来,就大大简化了在Java下的企业级开发。但是随着J2EE越来越普遍地被应用到各个领域中,开发者们渐渐意识到需要一种方法来标准化应用程序的开发过程,他们采用的方法是标准化应用程序的结构层。在结构层通常封装了一些独立于业务逻辑的复杂技术,以便在业务逻辑和底层的架构之间建立起弱连接。在本文中将会介绍一些设计模式,通过利用这些设计模式,开发人员可以达到标准化和简化应用程序开发过程的目的。<br />  应用程序结构和J2EE<br />  J2EE是一个很成功的技术,它为

2011-03-27 21:07:00 490

转载 Java设计模式之抽象工厂(Abstract Factory)模式

<br />抽象工厂(Abstract Factory)模式<br />抽象工厂模式可以向客户端提供一个接口,使得客户端在不必指定产品具体类型的情况下,创建多个产品族中的产品对象。这就是抽象工厂模式的用意。<br />每个模式都是针对一定问题的解决方案。抽象工厂模式面对的问题是多产品等级结构的系统设计。<br />在学习抽象工厂具体实例之前,应该明白两个重要的概念:产品族和产品等级。<br />产品族:是指位于不同产品等级结构中,功能相关联的产品组成的家族。比如AMD的CPU和ADM芯片的主板,组成一个家族

2011-03-27 20:57:00 280

转载 Servlet生命周期

Servlet生命周期Servlet运行在Servlet容器中,其生命周期由容器来管理。Servlet的生命周期通过javax.servlet.Servlet接口中的init()、service()和destroy()方法来表示。Servlet的生命周期包含了下面4个阶段:(1)加载和实例化Servlet容器负责加载和实例化Servlet。当Servlet容器启动时,或者在容器检测到需要这个Servlet来响应第一个请求时,创建Servlet实例。当Servlet容器启动后,它必须要知道所需的Servlet

2011-03-27 19:45:00 307

转载 HashMap与Hashtable的区别

<br />Hashtable的应用非常广泛,HashMap是新框架中用来代替Hashtable的类,也就是说建议使用HashMap,不要使用Hashtable。可能你觉得Hashtable很好用,为什么不用呢?这里简单分析他们的区别。 <br />1.Hashtable的方法是同步的,HashMap未经同步,所以在多线程场合要手动同步HashMap这个区别就像Vector和ArrayList一样。<br />查看Hashtable的源代码就可以发现,除构造函数外,Hashtable的所有 public 方

2011-03-27 16:23:00 355

转载 JAVA内存泄漏问题

<br />1 引言<br />     Java的一个重要优点就是通过垃圾收集器GC (Garbage Collection)自动管理内存的回收,程序员不需要通过调用函数来释放内存。因此,很多程序员认为Java 不存在内存泄漏问题,或者认为即使有内存泄漏也不是程序的责任,而是GC 或JVM的问题。其实,这种想法是不正确的,因为Java 也存在内存泄漏,但它的表现与C++不同。如果正在开发的Java 代码要全天24 小时在服务器上运行,则内存漏洞在此处的影响就比在配置实用程序中的影响要大得多,即使最小的漏洞

2011-03-27 01:02:00 257

转载 Java堆、栈和常量池

      1.寄存器:最快的存储区, 由编译器根据需求进行分配,我们在程序中无法控制.  2. 栈:存放基本类型的变量数据和对象的引用,但对象本身不存放在栈中,而是存放在堆(new 出来的对象)或者常量池中(字符串常量对象存放在常量池中。)  3. 堆:存放所有new出来的对象。  4. 静态域:存放静态成员(static定义的)  5. 常量池:存放字符串常量和基本类型常量(public static final)。  6. 非RAM存储:硬盘等永久存储空间  这里我们主要关心栈,堆和常量池,对于栈和常

2011-03-26 19:46:00 396

转载 深入Java核心 Java内存分配原理

Java内存分配与管理是Java的核心技术之一,之前我们曾介绍过Java的内存管理与内存泄露以及Java垃圾回收方面的知识,今天我们再次深入Java核心,详细介绍一下Java在内存分配方面的知识。一般Java在内存分配时会涉及到以下区域:  ◆寄存器:我们在程序中无法控制  ◆栈:存放基本类型的数据和对象的引用,但对象本身不存放在栈中,而是存放在堆中  ◆堆:存放用new产生的数据  ◆静态域:存放在对象中用static定义的静态成员  ◆常量池:存放常量  ◆非RAM存储:硬盘等永久存储空间  Java内

2011-03-25 13:43:00 377

转载 C++内存分配、管理

<br />一. 在c中分为这几个存储区<br />1.栈 - 由编译器自动分配释放<br />2.堆 - 一般由程序员分配释放,若程序员不释放,程序结束时可能由OS回收<br />3.全局区(静态区),全局变量和静态变量的存储是放在一块的,初始化的全局变量和静态变量在一块区域,未初始化的全局变量和未初始化的静态变量在相邻的另一块区域。- 程序结束释放<br />4.另外还有一个专门放常量的地方。- 程序结束释放<br />                                          

2011-03-15 11:57:00 286

原创 二叉树的递归与非递归遍历(Java描述)

构造树如下:其中二叉树节点类/** 二叉树节点 */public class BTNode {    private char key;    private BTNode left, right;    public BTNode(char key) {        this(key, null, null);    }    public BTNode(char key, BTNode left, BTNode right) {        this.key = key;        this.l

2011-03-06 18:42:00 445

转载 BPEL and Java

BPEL的作用    实现从面向过程到面向服务的转变需要一种语言以描述Web services是怎样被组织成业务流程。如果这种描述是可执行的,即允许我们定义抽象的流程,而且允许我们描述流程准确的执行规则,那将更好。而BPEL正是这样一种语言。事实上它是最先具备以下特性的语言:    1 允许我们定义抽象和可执行的流程    2 有大多数公司支持    3 软件运行在bpel流程可以执行(BPEL服务器)和设计(BPEL设计器)的平台上    在我们对BPEL做更深入的了解之前,先论述一下怎样组织web服务。

2011-03-06 14:50:00 806

空空如也

空空如也

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

TA关注的人

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