<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[mayonglong的博客]]></title><description><![CDATA[以现在大多数人的努力程度之低，根本轮不到可以拼天赋。越努力，越幸运！]]></description><link>https://blog.youkuaiyun.com/mayonglong8</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; mayonglong8]]></copyright><item><title><![CDATA[Maven、Webx、Velocity学习总结]]></title><link>https://blog.youkuaiyun.com/mayonglong8/article/details/52245272</link><guid>https://blog.youkuaiyun.com/mayonglong8/article/details/52245272</guid><author>mayonglong8</author><pubDate>Thu, 18 Aug 2016 21:52:54 +0800</pubDate><description><![CDATA[1. 综述

这两周的时间，通过看指南，看代码，跑实例，对淘宝网web应用开发框架有了一个整体的初步认识，主要包括四个方面：

Ø 项目管理工具Maven

Ø MVC框架Webx。

Ø Webx中的View层实现——Velocity

Ø Webx中的Model持久层实现——Ibatis

2. Maven部分

2.1. Maven基础

1. 坐标是指项目的]]></description><category></category></item><item><title><![CDATA[Java中的事务——JDBC事务和JTA事务]]></title><link>https://blog.youkuaiyun.com/mayonglong8/article/details/52217061</link><guid>https://blog.youkuaiyun.com/mayonglong8/article/details/52217061</guid><author>mayonglong8</author><pubDate>Tue, 16 Aug 2016 09:30:08 +0800</pubDate><description><![CDATA[Java事务的类型有三种：JDBC事务、JTA(Java
 Transaction API)事务、容器事务。 常见的容器事务如Spring事务，容器事务主要是J2EE应用服务器提供的，容器事务大多是基于JTA完成，这是一个基于JNDI的，相当复杂的API实现。所以本文暂不讨论容器事务。本文主要介绍J2EE开发中两个比较基本的事务：JDBC事务和JTA事务。

JDBC事务

JDBC的一]]></description><category></category></item><item><title><![CDATA[Android studio 无法启动安卓模拟器]]></title><link>https://blog.youkuaiyun.com/mayonglong8/article/details/52198772</link><guid>https://blog.youkuaiyun.com/mayonglong8/article/details/52198772</guid><author>mayonglong8</author><pubDate>Sat, 13 Aug 2016 12:47:08 +0800</pubDate><description><![CDATA[1.通过Android SDK Manager在extra中，找到并选中了那个Intel x86 Emulator Accelerator
 (HAXM)
2.手动启动HAXM
   去对应的sdk\extras\intel\Hardware_Accelerated_Execution_Manager
 路径下，找到了对应的文件：
D:\tmp\tmp_dev_root\android\]]></description><category></category></item><item><title><![CDATA[Spring 框架的设计理念与设计模式分析]]></title><link>https://blog.youkuaiyun.com/mayonglong8/article/details/52198768</link><guid>https://blog.youkuaiyun.com/mayonglong8/article/details/52198768</guid><author>mayonglong8</author><pubDate>Sat, 13 Aug 2016 12:45:49 +0800</pubDate><description><![CDATA[Spring 的骨骼架构

Spring 总共有十几个组件，但是真正核心的组件只有几个，下面是 Spring 框架的总体架构图：

图 1 .Spring 框架的总体架构图


从上图中可以看出 Spring 框架中的核心组件只有三个：Core、Context 和 Beans。它们构建起了整个 Spring 的骨骼架构。没有它们就不可能有 AOP、Web 等上层的特性功能。下面也将主]]></description><category></category></item><item><title><![CDATA[Lucene教程]]></title><link>https://blog.youkuaiyun.com/mayonglong8/article/details/52198761</link><guid>https://blog.youkuaiyun.com/mayonglong8/article/details/52198761</guid><author>mayonglong8</author><pubDate>Sat, 13 Aug 2016 12:43:17 +0800</pubDate><description><![CDATA[1 lucene简介
1.1 什么是lucene
    Lucene是一个全文搜索框架，而不是应用产品。因此它并不像www.baidu.com 或者google Desktop那么拿来就能用，它只是提供了一种工具让你能实现这些产品。
2 lucene的工作方式
    lucene提供的服务实际包含两部分：一入一出。所谓入是写入，即将你提供的源（本质是字符串）写入索引或者将其从索引中删除]]></description><category></category></item><item><title><![CDATA[IO工作机制]]></title><link>https://blog.youkuaiyun.com/mayonglong8/article/details/52198756</link><guid>https://blog.youkuaiyun.com/mayonglong8/article/details/52198756</guid><author>mayonglong8</author><pubDate>Sat, 13 Aug 2016 12:41:03 +0800</pubDate><description><![CDATA[一、简介

IO操作面临很多问题，信息量的巨大，网络的环境等等，因为IO不仅仅是对本地文件、目录的操作，有时对二进制流、还有一部分是网络方面的资源，所以多种原因直接造成IO操作无疑是耗时且复杂多变的。Java对IO的支持是个不断的演变过程，经过了很多的优化，直到JDK1.4以后，才趋于稳定，在JDK1.4中，加入了nio类，解决了很多性能问题，虽然我们有足够的理由不去了解关于Java IO以前]]></description><category></category></item><item><title><![CDATA[输入输出（入门经典）]]></title><link>https://blog.youkuaiyun.com/mayonglong8/article/details/52198750</link><guid>https://blog.youkuaiyun.com/mayonglong8/article/details/52198750</guid><author>mayonglong8</author><pubDate>Sat, 13 Aug 2016 12:39:48 +0800</pubDate><description><![CDATA[今天我们开始进入学习 Java 中比较让人头疼的事， 那就是 I/O 流、多线程、网络编程。这里对 I/O 流的一个详细讲解。希望对大家有点用吧。（不看后悔哦）

一、什么是IO

Java中I/O操作主要是指使用Java进行输入，输出操作。 Java所有的I/O机制都是基于数据流进行输入输出，这些数据流表示了字符或者字节数据的流动序列。

Java的I/O流提供了读写数据的标准方法。]]></description><category></category></item><item><title><![CDATA[spring中的设计模式]]></title><link>https://blog.youkuaiyun.com/mayonglong8/article/details/52187692</link><guid>https://blog.youkuaiyun.com/mayonglong8/article/details/52187692</guid><author>mayonglong8</author><pubDate>Thu, 11 Aug 2016 23:35:59 +0800</pubDate><description><![CDATA[下面来简单列举spring中的设计模式： 
1.简单工厂 
又叫做静态工厂方法（StaticFactory Method）模式，但不属于23种GOF设计模式之一。 
简单工厂模式的实质是由一个工厂类根据传入的参数，动态决定应该创建哪一个产品类。 
spring中的BeanFactory就是简单工厂模式的体现，根据传入一个唯一的标识来获得bean对象，但是否是在传入参数后创建还是传入参数前创]]></description><category></category></item><item><title><![CDATA[Spring事务配置的五种方式]]></title><link>https://blog.youkuaiyun.com/mayonglong8/article/details/52187686</link><guid>https://blog.youkuaiyun.com/mayonglong8/article/details/52187686</guid><author>mayonglong8</author><pubDate>Thu, 11 Aug 2016 23:35:24 +0800</pubDate><description><![CDATA[总结如下：

    Spring配置文件中关于事务配置总是由三个组成部分，分别是DataSource、TransactionManager和代理机制这三部分，无论哪种配置方式，一般变化的只是代理机制这部分。

    DataSource、TransactionManager这两部分只是会根据数据访问方式有所变化，比如使用hibernate进行数据访问时，DataSource实际为Ses]]></description><category></category></item><item><title><![CDATA[理解Spring IOC]]></title><link>https://blog.youkuaiyun.com/mayonglong8/article/details/52187680</link><guid>https://blog.youkuaiyun.com/mayonglong8/article/details/52187680</guid><author>mayonglong8</author><pubDate>Thu, 11 Aug 2016 23:34:34 +0800</pubDate><description><![CDATA[1.1、IoC是什么

Ioc—Inversion of Control，即“控制反转”，不是什么技术，而是一种设计思想。在Java开发中，Ioc意味着将你设计好的对象交给容器控制，而不是传统的在你的对象内部直接控制。

　　●谁控制谁，控制什么：传统Java
 SE程序设计，我们直接在对象内部通过new进行创建对象，是程序主动去创建依赖对象；而IoC是有专门一个容器来创建这些对象，即由]]></description><category></category></item><item><title><![CDATA[synchronized详解]]></title><link>https://blog.youkuaiyun.com/mayonglong8/article/details/52187674</link><guid>https://blog.youkuaiyun.com/mayonglong8/article/details/52187674</guid><author>mayonglong8</author><pubDate>Thu, 11 Aug 2016 23:33:26 +0800</pubDate><description><![CDATA[Java语言的关键字，当它用来修饰一个方法或者一个代码块的时候，能够保证在同一时刻最多只有一个线程执行该段代码。

     一、当两个并发线程访问同一个对象object中的这个synchronized(this)同步代码块时，一个时间内只能有一个线程得到执行。另一个线程必须等待当前线程执行完这个代码块以后才能执行该代码块。

     二、然而，当一个线程访问object的一个synch]]></description><category></category></item><item><title><![CDATA[并发编程Lock]]></title><link>https://blog.youkuaiyun.com/mayonglong8/article/details/52187670</link><guid>https://blog.youkuaiyun.com/mayonglong8/article/details/52187670</guid><author>mayonglong8</author><pubDate>Thu, 11 Aug 2016 23:32:48 +0800</pubDate><description><![CDATA[一.synchronized的缺陷

　　synchronized是java中的一个关键字，也就是说是Java语言内置的特性。那么为什么会出现Lock呢？

　　在上面一篇文章中，我们了解到如果一个代码块被synchronized修饰了，当一个线程获取了对应的锁，并执行该代码块时，其他线程便只能一直等待，等待获取锁的线程释放锁，而这里获取锁的线程释放锁只会有两种情况：

　　1）获取锁]]></description><category></category></item><item><title><![CDATA[多线程实现的三种方式]]></title><link>https://blog.youkuaiyun.com/mayonglong8/article/details/52187663</link><guid>https://blog.youkuaiyun.com/mayonglong8/article/details/52187663</guid><author>mayonglong8</author><pubDate>Thu, 11 Aug 2016 23:32:00 +0800</pubDate><description><![CDATA[JAVA多线程实现方式主要有三种：继承Thread类、实现Runnable接口、使用ExecutorService、Callable、Future实现有返回结果的多线程。其中前两种方式线程执行完后都没有返回值，只有最后一种是带返回值的。



1、继承Thread类实现多线程

       继承Thread类的方法尽管被我列为一种多线程实现方式，但Thread本质上也是实现了Runn]]></description><category></category></item><item><title><![CDATA[线程基础]]></title><link>https://blog.youkuaiyun.com/mayonglong8/article/details/52187653</link><guid>https://blog.youkuaiyun.com/mayonglong8/article/details/52187653</guid><author>mayonglong8</author><pubDate>Thu, 11 Aug 2016 23:30:52 +0800</pubDate><description><![CDATA[一、线程的基本概念
       在操作系统中两个比较容易混淆的概念是进程（process）和线程（thread）。操作系统中的进程是资源的组织单位。进程有一个包含了程序内容和数据的地址空间，以及其它的资源，包括打开的文件、子进程和信号处理器等。不同进程的地址空间是互相隔离的。而线程表示的是程序的执行流程，是CPU调度的基本单位。线程有自己的程序计数器、寄存器、栈和帧等。引入线程的动机在于操作系]]></description><category></category></item><item><title><![CDATA[（源码分析）Method的Invoke方法]]></title><link>https://blog.youkuaiyun.com/mayonglong8/article/details/52187632</link><guid>https://blog.youkuaiyun.com/mayonglong8/article/details/52187632</guid><author>mayonglong8</author><pubDate>Thu, 11 Aug 2016 23:28:31 +0800</pubDate><description><![CDATA[在写代码的时候，发现Method可以调用子类的对象，但子类即使是改写了的Method，方法名一样，去调用父类的对象也会报错，虽然这是很符合多态的现象，也符合java的动态绑定规范，但还是想弄懂java是如何实现的，就学习了下Method的源代码。 

Method的invoke方法
 
1.先检查 AccessibleObject的override属性是否为true。
Accessibl]]></description><category></category></item><item><title><![CDATA[zxing实现二维码生成和解析]]></title><link>https://blog.youkuaiyun.com/mayonglong8/article/details/52187627</link><guid>https://blog.youkuaiyun.com/mayonglong8/article/details/52187627</guid><author>mayonglong8</author><pubDate>Thu, 11 Aug 2016 23:27:31 +0800</pubDate><description><![CDATA[二维码的生成与解析。有多种途径。我选择用大品牌，google老大的zxing。

gitHub链接是(我用的3.0.0，已经是nio了)

https://github.com/zxing/zxing/tree/zxing-3.0.0

 

 


Java代码  


// 其中输出图像和读取图像的类在core包  
  
MultiFormatReader  ]]></description><category></category></item><item><title><![CDATA[深入理解Java的接口和抽象类]]></title><link>https://blog.youkuaiyun.com/mayonglong8/article/details/52187619</link><guid>https://blog.youkuaiyun.com/mayonglong8/article/details/52187619</guid><author>mayonglong8</author><pubDate>Thu, 11 Aug 2016 23:26:07 +0800</pubDate><description><![CDATA[一.抽象类

　　在了解抽象类之前，先来了解一下抽象方法。抽象方法是一种特殊的方法：它只有声明，而没有具体的实现。抽象方法的声明格式为：







1



abstract void fun();








　　抽象方法必须用abstract关键字进行修饰。如果一个类含有抽象方法，则称这个类为抽象类，抽象类必须在类前用abstract关键字]]></description><category></category></item><item><title><![CDATA[注解总结]]></title><link>https://blog.youkuaiyun.com/mayonglong8/article/details/52187607</link><guid>https://blog.youkuaiyun.com/mayonglong8/article/details/52187607</guid><author>mayonglong8</author><pubDate>Thu, 11 Aug 2016 23:24:54 +0800</pubDate><description><![CDATA[一、理解注解 
Annotation( 注解 ) 是 JDK5.0 及以后版本引入的一个特性 。 注解是（@interface） Java 的一个新的类型（与接口很相似 ） ，它与类（Class）、接口（interface）、枚举（enum）是在同一个层次。我们可以定义注解、声明注解、获得注解，并且根据获得的注解做相应的处理，许多框架都大量应用了注解，以后继续学习。 
二、对于java.lan]]></description><category></category></item><item><title><![CDATA[自定义注解]]></title><link>https://blog.youkuaiyun.com/mayonglong8/article/details/52187601</link><guid>https://blog.youkuaiyun.com/mayonglong8/article/details/52187601</guid><author>mayonglong8</author><pubDate>Thu, 11 Aug 2016 23:24:02 +0800</pubDate><description><![CDATA[自定义注解类编写的一些规则:

1. Annotation型定义为@interface, 所有的Annotation会自动继承java.lang.Annotation这一接口,并且不能再去继承别的类或是接口.

2. 参数成员只能用public或默认(default)这两个访问权修饰

3. 参数成员只能用基本类型byte,short,char,int,long,float,doubl]]></description><category></category></item><item><title><![CDATA[微信扫码支付]]></title><link>https://blog.youkuaiyun.com/mayonglong8/article/details/52187580</link><guid>https://blog.youkuaiyun.com/mayonglong8/article/details/52187580</guid><author>mayonglong8</author><pubDate>Thu, 11 Aug 2016 23:21:04 +0800</pubDate><description><![CDATA[接入扫码支付（包含PC网站支付）包含三个阶段，问这里只讲使用，也就是第2阶段的《启动设计和开发》。点击查看开发者文档（扫码支付）后，这里感觉微信的文档没有支付宝好理解（稍微吐槽下~~~），不过我们忽略一切，直接进入模式二：模式二最简单直接，不需要在商户后台进行配置，推荐大家使用，微信也说流程更为简单，我这里也讲的是模式二，模式一大家有兴趣可以自行研究下。如上图，总流程有14步，主要流程是生成订单、]]></description><category></category></item></channel></rss>