<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[mhady的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/mhady</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; mhady]]></copyright><item><title><![CDATA[MySQL存储引擎介绍]]></title><link>https://blog.youkuaiyun.com/mhady/article/details/51763949</link><guid>https://blog.youkuaiyun.com/mhady/article/details/51763949</guid><author>mhady</author><pubDate>Sun, 26 Jun 2016 19:31:21 +0800</pubDate><description><![CDATA[1.MySQL存储引擎对比


如上图所示，为几种常见的存储引擎的对比，当然还有像CSV存储引擎（不支持索引）和BlackHole黑洞引擎（写入的数据都会消失，一般用作数据复制的中继）等，但MyISAM和InnoDB引擎是最常见的，MyISAM适用于事务的处理不多的情况，InnoDB适用于事务处理比较多，需要有外键支持的情况。
2.存储引擎的设置
通过修改MySQL配置文件：
defa]]></description><category></category></item><item><title><![CDATA[Java自定义注解的实现]]></title><link>https://blog.youkuaiyun.com/mhady/article/details/51685906</link><guid>https://blog.youkuaiyun.com/mhady/article/details/51685906</guid><author>mhady</author><pubDate>Wed, 15 Jun 2016 23:27:43 +0800</pubDate><description><![CDATA[注解是Java 1.5引入的，目前已经被广泛引用于各种Java框架，如Hibernate，Spring等。首先介绍三个Java内置的注解：
1. @Override，重写（覆盖）注解，当我们想要重写父类的某个方法时，可以使用该注解告诉编译器我们正在覆盖一个父类方法。这样当父类的方法发生变化是编译器会报错告知我们。
2. @Deprecated，标记已经过时（弃用）的方法，通过该注解我们可以将某]]></description><category></category></item><item><title><![CDATA[Java反射学习总结（3）——反射的基本操作]]></title><link>https://blog.youkuaiyun.com/mhady/article/details/51685413</link><guid>https://blog.youkuaiyun.com/mhady/article/details/51685413</guid><author>mhady</author><pubDate>Wed, 15 Jun 2016 21:33:52 +0800</pubDate><description><![CDATA[方法的反射主要由下面两个步骤完成：第一步先通过Class类的基本API获取到某一个方法，第二部通过method.invoke(对象，参数列表)函数实现反射
package reflectTest;

import java.lang.reflect.Method;

public class MethodDemo {
	public static void main(String[] args)]]></description><category></category></item><item><title><![CDATA[Java反射学习总结（2）——动态加载类]]></title><link>https://blog.youkuaiyun.com/mhady/article/details/51685163</link><guid>https://blog.youkuaiyun.com/mhady/article/details/51685163</guid><author>mhady</author><pubDate>Wed, 15 Jun 2016 21:11:09 +0800</pubDate><description><![CDATA[前面已经知道Class.forName()可以得到类的类类型，我们还可以通过它实现类的动态加载，比如在JDBC中加载数据库驱动我们就采用这种方式实现，类的加载有两种方式：编译时刻加载属于静态加载类，运行时加载属于动态加载。动态加载可以在源码编译期间缺失某些暂时用不到的类，当项目执行到一定阶段需要调用此类时，才进行加载。动态加载可以使项目维护变得简单，实现的新功能可以通过动态加载进去而无需改动原始代]]></description><category></category></item><item><title><![CDATA[Java反射学习总结（1）——Class类的使用]]></title><link>https://blog.youkuaiyun.com/mhady/article/details/51684777</link><guid>https://blog.youkuaiyun.com/mhady/article/details/51684777</guid><author>mhady</author><pubDate>Wed, 15 Jun 2016 20:24:45 +0800</pubDate><description><![CDATA[在Java中，每个class都有一个相应的Class对象。也就是说，当我们编写一个类，编译完成后，在生成的.class文件中，就会产生一个Class对象（Class类不能人为创建由JVM自动调用），用于表示这个类的类型信息。所以说：类也是对象，并且它是java.lang.Class类的实例对象。获取Class实例对象主要有三种方式：
package reflectTest;
public cla]]></description><category></category></item><item><title><![CDATA[Python中Dict与Set对比总结]]></title><link>https://blog.youkuaiyun.com/mhady/article/details/51661358</link><guid>https://blog.youkuaiyun.com/mhady/article/details/51661358</guid><author>mhady</author><pubDate>Mon, 13 Jun 2016 23:34:00 +0800</pubDate><description><![CDATA[一 dict
（list与tuple总结：点击打开链接）



我们已经知道，list 和 tuple 可以用来表示顺序集合，例如，班里同学的名字：
['Adam', 'Lisa', 'Bart']
或者考试的成绩列表：
[95, 85, 59]
但是，要根据名字找到对应的成绩，用两个 list 表示就不方便。如果把名字和分数关联起来，组成类似的查找表：
'Adam' ==>]]></description><category></category></item><item><title><![CDATA[Python中LIst与Tuple的对比总结]]></title><link>https://blog.youkuaiyun.com/mhady/article/details/51661162</link><guid>https://blog.youkuaiyun.com/mhady/article/details/51661162</guid><author>mhady</author><pubDate>Mon, 13 Jun 2016 23:04:49 +0800</pubDate><description><![CDATA[一 list类型

Python内置的一种数据类型是列表：list。list是一种有序的集合，可以随时添加和删除其中的元素。
比如，列出班里所有同学的名字，就可以用一个list表示：
>>> ['Michael', 'Bob', 'Tracy']
['Michael', 'Bob', 'Tracy']
list是数学意义上的有序集合，也就是说，list中的元素是按照顺序排列的。
构造l]]></description><category></category></item><item><title><![CDATA[Python包安装报错解决方法]]></title><link>https://blog.youkuaiyun.com/mhady/article/details/51660990</link><guid>https://blog.youkuaiyun.com/mhady/article/details/51660990</guid><author>mhady</author><pubDate>Mon, 13 Jun 2016 22:21:24 +0800</pubDate><description><![CDATA[在windows下安装Python比较简单，只要在官网下载安装程序一直next即可（linux默认自带Python开发环境），但是在安装我们开发所需包的时候会遇到各种问题，不管在windows还是linux下，一般的包安装我们都按照如下顺序进行：使用
pip install 包名 或 easy_install 包名
但是有的包执行上述操作时会报错，安装并不成功，这时候我们采用如下方法：
对于]]></description><category></category></item><item><title><![CDATA[Python中进行布尔类型处理时的特殊点]]></title><link>https://blog.youkuaiyun.com/mhady/article/details/51649818</link><guid>https://blog.youkuaiyun.com/mhady/article/details/51649818</guid><author>mhady</author><pubDate>Sun, 12 Jun 2016 23:44:10 +0800</pubDate><description><![CDATA[在Python中，布尔类型可以与其他数据类型做 and、or和not运算，有如下代码：
a = True
print a and 'a=T' or 'a=F'
计算结果不是布尔类型，而是字符串 'a=T'
因为Python把0、空字符串''和None看成 False，其他数值和非空字符串都看成
 True，所以：
True and 'a=T' 计算结果是 'a=T'
继续计算 'a=T']]></description><category></category></item><item><title><![CDATA[Servlet使用过程中关于路径的设置]]></title><link>https://blog.youkuaiyun.com/mhady/article/details/51607456</link><guid>https://blog.youkuaiyun.com/mhady/article/details/51607456</guid><author>mhady</author><pubDate>Tue, 07 Jun 2016 23:38:57 +0800</pubDate><description><![CDATA[在使用servlet进行web编程时，有关的路径设置是一个很头疼的问题，servlet的路径设置主要分为相对路径和绝对路径，下面通过Eclipse构建的一个ServletPathDemo动态网站项目进行分析：
项目文件层次为：]]></description><category></category></item><item><title><![CDATA[Jsp注意事项汇总]]></title><link>https://blog.youkuaiyun.com/mhady/article/details/51593690</link><guid>https://blog.youkuaiyun.com/mhady/article/details/51593690</guid><author>mhady</author><pubDate>Mon, 06 Jun 2016 10:48:27 +0800</pubDate><description><![CDATA[1. Jsp的三大指令
Jsp指令用如下格式表示,有page，include和taglib三个，要注意的是并没有import指令，这个很容易与include记混。
2. Jsp的生命周期
当Jsp页面第一次执行时，会先执行jspInit()函数，将Jsp页面转换为servlet，并编译成字节码文件，上述jspInit()函数的执行只有在Jsp页面第一次运行时才会被调用。当客户端进行访问时，执]]></description><category></category></item><item><title><![CDATA[Java多线程——如何中断线程]]></title><link>https://blog.youkuaiyun.com/mhady/article/details/51425162</link><guid>https://blog.youkuaiyun.com/mhady/article/details/51425162</guid><author>mhady</author><pubDate>Mon, 16 May 2016 17:33:45 +0800</pubDate><description><![CDATA[在讲解中断线程之前，需要了解一下三个函数的具体作用
1. interrupt(): interrupt的字面意思就是中断的意思，所以对不太了解Java多线程编程的同学来说，很容易误解直接调用该函数实现线程中断，其实这个函数的真正含义并非如此，它并不能马上停止线程的执行。线程调用此方法仅仅是将该线程的中断标志位设为true（默认为false），所以总的来说该函数的主要作用就是产生中断信号，设置中断]]></description><category></category></item><item><title><![CDATA[ArrayList与LinkedList的区别]]></title><link>https://blog.youkuaiyun.com/mhady/article/details/51392907</link><guid>https://blog.youkuaiyun.com/mhady/article/details/51392907</guid><author>mhady</author><pubDate>Fri, 13 May 2016 10:23:41 +0800</pubDate><description><![CDATA[1. ArrayList是实现了动态数组的数据结构，LinkedList是基于链表的数据结构
这里的动态数组是指，当数组元素个数不断增多，数组无法存储时，系统会另外申请一个长度为当前长度1.5倍的新数组，然后将之前的元素拷贝到新建的数组中。默认数组大小为10。
2. 对于随机访问get和set，ArrayList要由于LinkedList，因为LinkedList要移动指针。
ArrayLi]]></description><category></category></item><item><title><![CDATA[Java中的final，finally和finalize的区别]]></title><link>https://blog.youkuaiyun.com/mhady/article/details/51392514</link><guid>https://blog.youkuaiyun.com/mhady/article/details/51392514</guid><author>mhady</author><pubDate>Fri, 13 May 2016 09:44:40 +0800</pubDate><description><![CDATA[1. final
final用于声明属性，方法和类。如果一个类被声明为final，意味着它不能再派生出新的子类，不能作为父类被继承。所以一个类不能既被abstract修饰又被final修饰。将变量和方法声明为final，可以保证他们在使用中不被改变。被声明为final的变量，只能在new的时候的初始化，而在以后的引用中只能读取，不可修改。引用变量被final修饰以后，不能再指向其他对象但是所指向]]></description><category></category></item><item><title><![CDATA[Java中类方法与实例方法的区别]]></title><link>https://blog.youkuaiyun.com/mhady/article/details/51377579</link><guid>https://blog.youkuaiyun.com/mhady/article/details/51377579</guid><author>mhady</author><pubDate>Wed, 11 May 2016 20:03:33 +0800</pubDate><description><![CDATA[Java中类的方法分为类方法（用static修饰，也叫静态方法）和实例方法（没有用static修饰，也叫非静态方法），这两种方法之间有什么区别呢？
一. 实例方法
当类的字节码文件加载到内存中时，类的实例方法并没有被分配入口地址，只有当该类的对象创建以后，实例方法才分配了入口地址。从而实例方法可以被类创建的所有对象调用，还有一点需要注意，当我们创建第一个类的对象时，实例方法的入口地址会完成分配]]></description><category></category></item><item><title><![CDATA[Java中的方法重载和重写（覆盖）]]></title><link>https://blog.youkuaiyun.com/mhady/article/details/51361477</link><guid>https://blog.youkuaiyun.com/mhady/article/details/51361477</guid><author>mhady</author><pubDate>Tue, 10 May 2016 11:08:02 +0800</pubDate><description><![CDATA[一. 方法重载（overload）
/*
 * 方法重载的判定：同一类中，方法名相同，参数列表不同（参数个数不同，参数列表中对应位置参数类型不同），其他方法返回值
 * 和访问修饰符都随意。
 */
public class OverloadTest {
	
	public void testFunc(int a, int b, float c){}
	// The first situatio]]></description><category></category></item><item><title><![CDATA[交换机和路由器的区别与联系]]></title><link>https://blog.youkuaiyun.com/mhady/article/details/51296012</link><guid>https://blog.youkuaiyun.com/mhady/article/details/51296012</guid><author>mhady</author><pubDate>Mon, 02 May 2016 13:31:48 +0800</pubDate><description><![CDATA[最近正好趁着华为的网络技术大赛，重新学习了有关计算机网络的相关概念，原来一直对交换机和路由器的概念和作用比较模糊，现在做个对比总结：
1. 从普通用户来看：
路由器的主要作用是跨网络的路径选取，数据包从一台主机发往位于另一网络中的另一台主机，路由器可以选取出传输代价最小的一条路进行数据传输。
交换机的主要作用是同一网络中的不同主机间的数据帧转发。
实际情况是现在的家用路由器普遍都是由路由器]]></description><category></category></item><item><title><![CDATA[Java中的int与Integer对比]]></title><link>https://blog.youkuaiyun.com/mhady/article/details/51183039</link><guid>https://blog.youkuaiyun.com/mhady/article/details/51183039</guid><author>mhady</author><pubDate>Mon, 18 Apr 2016 23:01:55 +0800</pubDate><description><![CDATA[Java中的int类型与Integer类之间的关系是面试Java中很常见的一类题，本文对int和Integer之间的相互关系进行一个简单介绍，在介绍之前先说一下Integer类的三种声明方式：1.  Integer a = new Integer(value); 2. Integer a = value; 3. Integer a = Integer.valueOf(value);下面详细介绍它们]]></description><category></category></item><item><title><![CDATA[CXF开发webservice时所需包介绍]]></title><link>https://blog.youkuaiyun.com/mhady/article/details/50767945</link><guid>https://blog.youkuaiyun.com/mhady/article/details/50767945</guid><author>mhady</author><pubDate>Mon, 29 Feb 2016 20:41:41 +0800</pubDate><description><![CDATA[CXF是开发webservice很流行的框架，http://cxf.apache.org/download.html是CXF官网下载地址，下载解压以后会发现lib中有很多包，在项目中不知道该使用哪些包，其实在lib中有一个文件WHICH_JARS，该文件将在什么情况下使用哪些包都说的很清楚了，下面就是2.7.18版本下的该文件内容：
This directory includes the CXF]]></description><category></category></item><item><title><![CDATA[CXF+Spring实现webservice]]></title><link>https://blog.youkuaiyun.com/mhady/article/details/50589079</link><guid>https://blog.youkuaiyun.com/mhady/article/details/50589079</guid><author>mhady</author><pubDate>Tue, 26 Jan 2016 18:55:06 +0800</pubDate><description><![CDATA[实现webservice主要有axis2和cxf两个框架，感觉目前cxf比较流行，本文介绍一下用cxf和Spring如何实现webservice端口，网上的资源都比较久，好多博客介绍的方法到目前已经出现了这样那样的错误，导致无法实现，所以本文也算是对webservice实现过程中需要注意问题的一个总结。
使用软件：myeclipse 10，tomcat 7，apache-cxf-3.1.4，sp]]></description><category></category></item></channel></rss>