<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[daolicloud的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/daolicloud</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; daolicloud]]></copyright><item><title><![CDATA[java锁机制]]></title><link>https://blog.youkuaiyun.com/daolicloud/article/details/84686702</link><guid>https://blog.youkuaiyun.com/daolicloud/article/details/84686702</guid><author>daolicloud</author><pubDate>Wed, 19 Nov 2014 16:33:51 +0800</pubDate><description><![CDATA[
一段synchronized的代码被一个线程执行之前，他要先拿到执行这段代码的权限，在java里边就是拿到某个同步对象的锁（一个对象只有一把锁）； 如果这个时候同步对象的锁被其他线程拿走了，他（这个线程）就只能等了（线程阻塞在锁池等待队列中）。 取到锁后，他就开始执行同步代码(被synchronized修饰的代码）；线程执行完同步代码后马上就把锁还给同步对象，其他在锁池中等待的某个线程就可以拿到...]]></description><category></category></item><item><title><![CDATA[http协议无状态理解]]></title><link>https://blog.youkuaiyun.com/daolicloud/article/details/84682222</link><guid>https://blog.youkuaiyun.com/daolicloud/article/details/84682222</guid><author>daolicloud</author><pubDate>Tue, 28 Oct 2014 09:54:47 +0800</pubDate><description><![CDATA[

 
Http是一个无状态协议，同一个会话的连续两个请求互相不了解，他们由最新实例化的环境进行解析，除了应用本身可能已经存储在全局对象中的所有信息外，该环境不保存与会话有关的任何信息。
自己的理解，在asp.net里：每次提交服务器的页面没有任何关系，每次记录在页面的信息下次提交是记不住的，（除了应用本身可能已经存储在全局对象中的所有信息外）在.net里实际就是ViewState，Vie...]]></description><category></category></item><item><title><![CDATA[java实现多线程方法以及区别？]]></title><link>https://blog.youkuaiyun.com/daolicloud/article/details/84682097</link><guid>https://blog.youkuaiyun.com/daolicloud/article/details/84682097</guid><author>daolicloud</author><pubDate>Mon, 27 Oct 2014 16:15:04 +0800</pubDate><description><![CDATA[

Java中有两种实现多线程的方式以及两种方式之间的区别


看到一个面试题.问两种实现多线程的方法.没事去网上找了找答案. 网上流传很广的是一个网上售票系统讲解.转发过来.已经不知道原文到底是出自哪里了. Java中有两种实现多线程的方式。一是直接继承Thread类，二是实现Runnable接口。那么这两种实现多线程的方式在应用上有什么区别呢？         为了回答这个问题，我们可以...]]></description><category></category></item><item><title><![CDATA[jvm类加载器委托机制]]></title><link>https://blog.youkuaiyun.com/daolicloud/article/details/84676327</link><guid>https://blog.youkuaiyun.com/daolicloud/article/details/84676327</guid><author>daolicloud</author><pubDate>Sat, 18 Oct 2014 20:59:28 +0800</pubDate><description><![CDATA[
Java虚拟机JVM学习05 类加载器的父委托机制
 
类加载器
　　类加载器用来把类加载到Java虚拟机中。
 
类加载器的类型
　　有两种类型的类加载器：
　　1.JVM自带的加载器：
　　　　根类加载器(Bootstrap)
　　　　扩展类加载器(Extension)
　　　　系统类加载器(System)
　　2.用户自定义的类加载器：
　　　　java.lang....]]></description><category></category></item><item><title><![CDATA[java发射]]></title><link>https://blog.youkuaiyun.com/daolicloud/article/details/84663871</link><guid>https://blog.youkuaiyun.com/daolicloud/article/details/84663871</guid><author>daolicloud</author><pubDate>Wed, 15 Oct 2014 21:25:15 +0800</pubDate><description><![CDATA[
反射机制最重要的部分是准许你检查类的结构。java.lang.reflect包中的三个类Field、Method、Constructor相应的描述了一个类的字段、方法、构造函数。使用这些类的时候必须要遵循下面步骤：
第一步是获得你想操作的类的 java.lang.Class 对象。下面就是获得一个 Class 对象的方法之一：Class c = Class.forName(&quot;java.lang...]]></description><category></category></item><item><title><![CDATA[java序列化与反序列化]]></title><link>https://blog.youkuaiyun.com/daolicloud/article/details/84663853</link><guid>https://blog.youkuaiyun.com/daolicloud/article/details/84663853</guid><author>daolicloud</author><pubDate>Wed, 15 Oct 2014 19:32:11 +0800</pubDate><description><![CDATA[
Java 串行化技术可以使你将一个对象的状态写入一个Byte 流里，并且可以从其它地方把该Byte 流里的数据读出来，重新构造一个相同的对象。这种机制允许你将对象通过网络进行传播，并可以随时把对象持久化到数据库、文件等系统里。Java的串行化机制是RMI、EJB等技术的技术基础。用途：利用对象的串行化实现保存应用程序的当前工作状态，下次再启动的时候将自动地恢复到上次执行的状态。
 
序列化就...]]></description><category></category></item><item><title><![CDATA[this与super比较]]></title><link>https://blog.youkuaiyun.com/daolicloud/article/details/84662786</link><guid>https://blog.youkuaiyun.com/daolicloud/article/details/84662786</guid><author>daolicloud</author><pubDate>Mon, 13 Oct 2014 12:01:58 +0800</pubDate><description><![CDATA[
1．什么是super？什么是this？
super关键字表示超（父）类的意思。this变量代表对象本身。
2．使用super&amp;amp;this调用成员变量和方法
可以使用super访问父类被子类隐藏的变量或覆盖的方法。当前类如果是从超类继承而来的，当调用super.XX()就是调用基类版本的XX（）方法。见示例1。
当类中有两个同名变量，一个属于类（类的成员变量），而另一个属于某个特定的...]]></description><category></category></item><item><title><![CDATA[java运算符]]></title><link>https://blog.youkuaiyun.com/daolicloud/article/details/84661743</link><guid>https://blog.youkuaiyun.com/daolicloud/article/details/84661743</guid><author>daolicloud</author><pubDate>Fri, 10 Oct 2014 15:39:53 +0800</pubDate><description><![CDATA[移位运算符就是在二进制的基础上对数字进行平移。按照平移的方向和填充数字的规则分为三种：&amp;lt;&amp;lt;（左移）、&amp;gt;&amp;gt;（带符号右移）和&amp;gt;&amp;gt;&amp;gt;（无符号右移）。　　在移位运算时，byte、short和char类型移位后的结果会变成int类型，对于byte、short、char和int进行移位时，规定实际移动的次数是移动次数和32的余数，也就是移位33次和移位1次得到的结果相...]]></description><category></category></item><item><title><![CDATA[jvm原理]]></title><link>https://blog.youkuaiyun.com/daolicloud/article/details/84657741</link><guid>https://blog.youkuaiyun.com/daolicloud/article/details/84657741</guid><author>daolicloud</author><pubDate>Sat, 27 Sep 2014 11:20:29 +0800</pubDate><description><![CDATA[


JVM 原理解释
 
　　JVM 全称是 Java Virtual Machine ，Java 虚拟机，这个 JVM 你是看不到的，它存在内存中。我们知道计算机的基本构成是：运算器、控制器、存储器、输入和输出设备，那这个 JVM 也是有这成套的元素，运算器是当然是交给硬件 CPU 还处理了，只是为了适应“一次编译，随处运行”的情况，需要做一个翻译动作，于是就用了JVM 自己的命令集...]]></description><category></category></item><item><title><![CDATA[socket]]></title><link>https://blog.youkuaiyun.com/daolicloud/article/details/84650775</link><guid>https://blog.youkuaiyun.com/daolicloud/article/details/84650775</guid><author>daolicloud</author><pubDate>Tue, 09 Sep 2014 16:40:40 +0800</pubDate><description><![CDATA[
对TCP/IP、UDP、Socket编程这些词你不会很陌生吧？随着网络技术的发展，这些词充斥着我们的耳朵。那么我想问：1.         什么是TCP/IP、UDP？2.         Socket在哪里呢？3.         Socket是什么呢？4.         你会使用它们吗？什么是TCP/IP、UDP？
         TCP/IP（Transmission Control...]]></description><category></category></item><item><title><![CDATA[spring ioc与aop原理]]></title><link>https://blog.youkuaiyun.com/daolicloud/article/details/84650499</link><guid>https://blog.youkuaiyun.com/daolicloud/article/details/84650499</guid><author>daolicloud</author><pubDate>Mon, 08 Sep 2014 23:09:58 +0800</pubDate><description><![CDATA[

spring IoC和AOP的原理
(2012-04-07 11:54:33)
转载▼




标签：
spring
ioc
aop

 


下面为spring的主要原理：
IoC(Inversion of Control)：IoC就是应用本身不依赖对象的创建和维护而是交给外部容器(这里为spring),这要就把应用和对象之间解耦,控制权交给了外部容器。即Don'...]]></description><category></category></item><item><title><![CDATA[面向切面编程]]></title><link>https://blog.youkuaiyun.com/daolicloud/article/details/84650495</link><guid>https://blog.youkuaiyun.com/daolicloud/article/details/84650495</guid><author>daolicloud</author><pubDate>Mon, 08 Sep 2014 22:50:06 +0800</pubDate><description><![CDATA[ 面向切面编程（AOP是Aspect Oriented Program的首字母缩写） ，我们知道，面向对象的特点是继承、多态和封装。而封装就要求将功能分散到不同的对象中去，这在软件设计中往往称为职责分配。实际上也就是说，让不同的类设计不同的方法。这样代码就分散到一个个的类中去了。这样做的好处是降低了代码的复杂程度，使类可重用。      但是人们也发现，在分散代码的同时，也增加了代码的重复性。什么...]]></description><category></category></item><item><title><![CDATA[struts1与struts2原理]]></title><link>https://blog.youkuaiyun.com/daolicloud/article/details/84650492</link><guid>https://blog.youkuaiyun.com/daolicloud/article/details/84650492</guid><author>daolicloud</author><pubDate>Mon, 08 Sep 2014 22:31:59 +0800</pubDate><description><![CDATA[
Struts1和Struts2核心控制器的执行原理


Struts1

1、初始化：struts框架的总控制器ActionServlet是一个Servlet，它在web、xml中配置成自动启动的Servlet，在启动时总控制器会读取配置文件（struts-config、xml）的配置信息，为struts中不同的模块初始化相应的对象。
2、发送请求：用户提交表单或通过URL向WEB服...]]></description><category></category></item><item><title><![CDATA[js继承]]></title><link>https://blog.youkuaiyun.com/daolicloud/article/details/84630345</link><guid>https://blog.youkuaiyun.com/daolicloud/article/details/84630345</guid><author>daolicloud</author><pubDate>Sat, 30 Aug 2014 11:24:45 +0800</pubDate><description><![CDATA[
js中继承可以分为两种：对象冒充和原型链方式
 
一、对象冒充包括三种：临时属性方式、call()及apply()方式1.临时属性方式
代码如下:
function Person(name){
     this.name = name;
     this.say = function(){
          alert('My name is '+this.name);
...]]></description><category></category></item><item><title><![CDATA[线程池]]></title><link>https://blog.youkuaiyun.com/daolicloud/article/details/84630259</link><guid>https://blog.youkuaiyun.com/daolicloud/article/details/84630259</guid><author>daolicloud</author><pubDate>Fri, 29 Aug 2014 20:30:31 +0800</pubDate><description><![CDATA[
简单介绍： 创建线程有两种方式：继承Thread或实现Runnable。Thread实现了Runnable接口，提供了一个空的run()方法，所以不论是继承Thread还是实现Runnable，都要有自己的run()方法。    一个线程创建后就存在，调用start()方法就开始运行（执行run()方法），调用wait进入等待或调用sleep进入休眠期，顺利运行完毕或休眠被中断或运行过程中出现...]]></description><category></category></item><item><title><![CDATA[java垃圾回收机制]]></title><link>https://blog.youkuaiyun.com/daolicloud/article/details/84630161</link><guid>https://blog.youkuaiyun.com/daolicloud/article/details/84630161</guid><author>daolicloud</author><pubDate>Fri, 29 Aug 2014 16:11:53 +0800</pubDate><description><![CDATA[
1. 垃圾回收的意义　　在C++中，对象所占的内存在程序结束运行之前一直被占用，在明确释放之前不能分配给其它对象；而在Java中，当没有对象引用指向原先分配给某个对象的内存时，该内存便成为垃圾。JVM的一个系统级线程会自动释放该内存块。垃圾回收意味着程序不再需要的对象是&quot;无用信息&quot;，这些信息将被丢弃。当一个对象不再被引用的时候，内存回收它占领的空间，以便空间被后来的新对象使用。事实上，除了释放...]]></description><category></category></item><item><title><![CDATA[java内存机制2]]></title><link>https://blog.youkuaiyun.com/daolicloud/article/details/84629874</link><guid>https://blog.youkuaiyun.com/daolicloud/article/details/84629874</guid><author>daolicloud</author><pubDate>Thu, 28 Aug 2014 20:11:29 +0800</pubDate><description><![CDATA[
本文将由浅入深详细介绍Java内存分配的原理，以帮助新手更轻松的学习Java。这类文章网上有很多，但大多比较零碎。本文从认知过程角度出发，将带给读者一个系统的介绍。
进入正题前首先要知道的是Java程序运行在JVM(Java Virtual Machine，Java虚拟机)上，可以把JVM理解成Java程序和操作系统之间的桥梁，JVM实现了Java的平台无关性，由此可见JVM的重要 性。所以在...]]></description><category></category></item><item><title><![CDATA[java内存机制]]></title><link>https://blog.youkuaiyun.com/daolicloud/article/details/84629870</link><guid>https://blog.youkuaiyun.com/daolicloud/article/details/84629870</guid><author>daolicloud</author><pubDate>Thu, 28 Aug 2014 19:56:09 +0800</pubDate><description><![CDATA[
1.Java的内存机制
　Java 把内存划分成两种：一种是栈内存，另一种是堆内存。在函数中定义的一些基本类型的变量和对象的引用变量都是在函数的栈内存中分配，当在一段代码块定义一个变量时，Java 就在栈中为这个变量分配内存空间，当超过变量的作用域后（比如，在函数A中调用函数B，在函数B中定义变量a，变量a的作用域只是函数B，在函数B运行完以后，变量a会自动被销毁。分配给它的内存会被回收），J...]]></description><category></category></item><item><title><![CDATA[java的反射与代理]]></title><link>https://blog.youkuaiyun.com/daolicloud/article/details/84626907</link><guid>https://blog.youkuaiyun.com/daolicloud/article/details/84626907</guid><author>daolicloud</author><pubDate>Tue, 19 Aug 2014 16:11:00 +0800</pubDate><description><![CDATA[
反射：通过类名获取该类的所有成员方法、变量，或者实例化对象等。
例：Class B 访问Class A 的retnum方法
 
package com.ysu.fams.webservices;

public class A {
    int count = 40;
  
    public int retnum(int i){
    	count = i;
    ...]]></description><category></category></item><item><title><![CDATA[常见sql优化]]></title><link>https://blog.youkuaiyun.com/daolicloud/article/details/84626849</link><guid>https://blog.youkuaiyun.com/daolicloud/article/details/84626849</guid><author>daolicloud</author><pubDate>Tue, 19 Aug 2014 14:13:53 +0800</pubDate><description><![CDATA[
DBMS：数据库管理系统(Database Management System)是一种操纵和管理数据库的大型软件，用于建立、使用和维护数据库，简称DBMS。
1、建立索引
     在经常检索的字段上加入索引，能很大程度上提升性能，当遇到检索比较慢的时候，第一时间想到的就是加入索引。
 
2、调整Where子句中的连接顺序
 
    DBMS一般采用自下而上的顺序解析Where子...]]></description><category></category></item></channel></rss>