<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[code_soul的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/code_soul</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; code_soul]]></copyright><item><title><![CDATA[09.github分支管理]]></title><link>https://blog.youkuaiyun.com/code_soul/article/details/52447409</link><guid>https://blog.youkuaiyun.com/code_soul/article/details/52447409</guid><author>code_soul</author><pubDate>Tue, 06 Sep 2016 10:05:46 +0800</pubDate><description><![CDATA[查看分支：git branch 
创建分支：git branch  
切换分支：git checkout  
创建+切换分支：git checkout -b  
合并某分支到当前分支：git merge 删除分支：git branch -d]]></description><category></category></item><item><title><![CDATA[08.github远程仓库]]></title><link>https://blog.youkuaiyun.com/code_soul/article/details/52447402</link><guid>https://blog.youkuaiyun.com/code_soul/article/details/52447402</guid><author>code_soul</author><pubDate>Tue, 06 Sep 2016 10:05:24 +0800</pubDate><description><![CDATA[Git是分布式版本控制系统，同一个Git仓库，可以分布到不同的机器上。怎么分布呢？最早，肯定只有一台机器有一个原始版本库，此后，别的机器可以“克隆”这个原始版本库，而且每台机器的版本库其实都是一样的，并没有主次之分。     
 找一台电脑充当服务器的角色，每天24小时开机，其他每个人都从这个“服务器”仓库克隆一份到自己的电脑上，并且各自把各自的提交推送到服务器仓库里，也从服务器仓库中拉取别人的提交]]></description><category></category></item><item><title><![CDATA[07.git基本操作小结]]></title><link>https://blog.youkuaiyun.com/code_soul/article/details/52447384</link><guid>https://blog.youkuaiyun.com/code_soul/article/details/52447384</guid><author>code_soul</author><pubDate>Tue, 06 Sep 2016 10:04:01 +0800</pubDate><description><![CDATA[1. $ git init
2. $ git add <file>
3. $ git commit -m "text"
4. $ git status
5. $ git diff <file>
6. $ git log
7. $ git reflog
8. git reset --hard HEAD^
9. $ git reset --hard <versionId>
10. $ git check]]></description><category></category></item><item><title><![CDATA[06.git文件删除]]></title><link>https://blog.youkuaiyun.com/code_soul/article/details/52447379</link><guid>https://blog.youkuaiyun.com/code_soul/article/details/52447379</guid><author>code_soul</author><pubDate>Tue, 06 Sep 2016 10:03:42 +0800</pubDate><description><![CDATA[1. $ rm -rf second.txt
2. 
$ git checkout – second.txt    撤销删除，从版本库恢复3. $ rm -rf second.txt
4. 
$ git rm second.txt              删除暂存区文件5. 
$ git commit -m “rm second”     提交到版本库分支上]]></description><category></category></item><item><title><![CDATA[05.git撤销修改]]></title><link>https://blog.youkuaiyun.com/code_soul/article/details/52447372</link><guid>https://blog.youkuaiyun.com/code_soul/article/details/52447372</guid><author>code_soul</author><pubDate>Tue, 06 Sep 2016 10:03:10 +0800</pubDate><description><![CDATA[1. 在second.txt添加以后内容。
2. 
$ git status 
On branch master 
Changes not staged for commit: 
  (use “git add …” to update what will be committed) 
  (use “git checkout – …” to discard changes in working d]]></description><category></category></item><item><title><![CDATA[04.git工作区和暂存区]]></title><link>https://blog.youkuaiyun.com/code_soul/article/details/52447367</link><guid>https://blog.youkuaiyun.com/code_soul/article/details/52447367</guid><author>code_soul</author><pubDate>Tue, 06 Sep 2016 10:02:53 +0800</pubDate><description><![CDATA[工作区（非.git）和版本库（.git） 
      
     将提交的文件添加到暂存区 
 
     将暂存区的文件合并到master分支git add命令实际上就是把要提交的所有修改放到暂存区（Stage），然后，执行git commit就可以一次性把暂存区的所有修改提交到分支。]]></description><category></category></item><item><title><![CDATA[03.git版本修改提交、回退]]></title><link>https://blog.youkuaiyun.com/code_soul/article/details/52447359</link><guid>https://blog.youkuaiyun.com/code_soul/article/details/52447359</guid><author>code_soul</author><pubDate>Tue, 06 Sep 2016 10:01:14 +0800</pubDate><description><![CDATA[修改提交1. 继续修改firstCode.txt文件；内容如下：1.fisrt  2.second  3.three
2. 
$ git status 查看当前版本库状态，显示有文件修改，等待add 
On branch master 
Changes not staged for commit: 
  (use “git add …” to update what will be committe]]></description><category></category></item><item><title><![CDATA[02.git创建版本库repository]]></title><link>https://blog.youkuaiyun.com/code_soul/article/details/52447353</link><guid>https://blog.youkuaiyun.com/code_soul/article/details/52447353</guid><author>code_soul</author><pubDate>Tue, 06 Sep 2016 10:00:55 +0800</pubDate><description><![CDATA[1. 创建目录，D:\code\GitTest;
2. 打开cmd或者Git Bash;
3. 直接打开Git Bash，（在所有应用，或者git安装目录找到git bash）;
4. 
$  cd /d/code/GitTest/5. 
$ git init 
Initialized empty Git repository in D:/code/GitTest/.git/6. 一个版本库生成成功]]></description><category></category></item><item><title><![CDATA[01.git简介、安装]]></title><link>https://blog.youkuaiyun.com/code_soul/article/details/52447341</link><guid>https://blog.youkuaiyun.com/code_soul/article/details/52447341</guid><author>code_soul</author><pubDate>Tue, 06 Sep 2016 10:00:15 +0800</pubDate><description><![CDATA[1. linus创建了linux。
2. linus手工合并代码。
3. 开源是的代码库庞大，2002选择商业的版本控制系统BitKeeper。
4. 开发Samba的Andrew试图破解BitKeeper的协议，BitMover公司发现要收回免费使用权。
5. Linus花了两周时间自己用C写了一个分布式版本控制系统，这就是git。 分布式版本控制系统VS集中式版本控制系统1. 集中式版本控制系统]]></description><category></category></item><item><title><![CDATA[redis下载安装]]></title><link>https://blog.youkuaiyun.com/code_soul/article/details/52447330</link><guid>https://blog.youkuaiyun.com/code_soul/article/details/52447330</guid><author>code_soul</author><pubDate>Tue, 06 Sep 2016 09:59:08 +0800</pubDate><description><![CDATA[redis服务安装// 下载redis,并解压redis 
wget http://download.redis.io/releases/redis-3.2.1.tar.gz 
tar -zxvf redis-3.2.1.tar.gz 
mv redis-3.2.1 /usr/java/redis//安装gcc 
yum install gcc//编译 
cd /usr/java/redis/ 
m]]></description><category></category></item><item><title><![CDATA[jvm历史]]></title><link>https://blog.youkuaiyun.com/code_soul/article/details/52447292</link><guid>https://blog.youkuaiyun.com/code_soul/article/details/52447292</guid><author>code_soul</author><pubDate>Tue, 06 Sep 2016 09:56:36 +0800</pubDate><description><![CDATA[关键词：解释器，编译器  并发编程：fork/join1. sun classic VM ，最早的商业版本，只能纯解释器方式执行，如果需要JIT编译器，就必须外挂JIT编译器 ，如果外挂，则JIT编译器接管虚拟机执行系统；sunwji:外挂编译器；
2. JDK1.2时，hotspot vm一款比Exact Vm更优秀的vm诞生了，它和classic VM并存于JDK1.2时期]]></description><category></category></item><item><title><![CDATA[jvm内存模型]]></title><link>https://blog.youkuaiyun.com/code_soul/article/details/52447278</link><guid>https://blog.youkuaiyun.com/code_soul/article/details/52447278</guid><author>code_soul</author><pubDate>Tue, 06 Sep 2016 09:55:55 +0800</pubDate><description><![CDATA[java运行时数据区，jvm内存模型： 
 
    1. 程序计数器程序计数器是一块较小的内存区域，它可以看成当前线程执行字节码的行号指示器。 每个线程都有自己独立的程序计数器，各个线程互不影响。 
因为在任何一个时刻，一个处理器只能处理一个线程，所有程序计数器，还起到了线程切换后的恢复正确的执行位置。 
此内存区域是jvm唯一一个没有OutOfMemoryError的区域。1. 虚拟机栈
虚拟机]]></description><category></category></item><item><title><![CDATA[MAVEN 聚合、继承]]></title><link>https://blog.youkuaiyun.com/code_soul/article/details/52447256</link><guid>https://blog.youkuaiyun.com/code_soul/article/details/52447256</guid><author>code_soul</author><pubDate>Tue, 06 Sep 2016 09:53:54 +0800</pubDate><description><![CDATA[**聚合和继承**
聚合模块功能：maven项目分多模块，为了能够统一构建，需要构建一个聚合模块，包含其他的模块。。  packaging是pom属性，否则无法构建。 
聚合核心配置：module继承： parent 。在父POM中声明一些配置供子POM继承。实现一处声明，多处使用。在子pom中使用parent元素声明父模块。 共通的依赖可以抽到 
父模块中。但是并不是每个子模块都需要，所以在父模块]]></description><category></category></item><item><title><![CDATA[第三方支付网银支付流程]]></title><link>https://blog.youkuaiyun.com/code_soul/article/details/52130840</link><guid>https://blog.youkuaiyun.com/code_soul/article/details/52130840</guid><author>code_soul</author><pubDate>Fri, 05 Aug 2016 17:02:27 +0800</pubDate><description><![CDATA[网银交互流程 
流程描述 
1. 客户在商户下单购买商品，点击立即购买。 
2. 从购买页面跳转到支付收银台页面。 
3. 选择xx网银支付。下面是跳转中后台系统做的事情 ↓ 
4. 商户后台组装form表单，包含订单信息、和签名信息等。(表单见下节) 
5. 跳转到网银页面，显示订单信息 
6. 输入账号密码，或者u-key，支付。 
7. 支付成功。 
8. 页面跳转（回调商户页面）。（8.1.]]></description><category></category></item><item><title><![CDATA[敏感信息隐位]]></title><link>https://blog.youkuaiyun.com/code_soul/article/details/52127128</link><guid>https://blog.youkuaiyun.com/code_soul/article/details/52127128</guid><author>code_soul</author><pubDate>Fri, 05 Aug 2016 11:02:44 +0800</pubDate><description><![CDATA[在金融系统，客户的姓名、电话、身份证、卡号都必须保密；下面是几种隐位、涉及各种类型的报文，用正则屏蔽差异性public class HiddenFieldUtil {
    //日志
    private static final Logger logger = LoggerFactory.getLogger(HiddenFieldUtil.class);
    // 证件号隐位处理器]]></description><category></category></item><item><title><![CDATA[AES、Base64]]></title><link>https://blog.youkuaiyun.com/code_soul/article/details/52126769</link><guid>https://blog.youkuaiyun.com/code_soul/article/details/52126769</guid><author>code_soul</author><pubDate>Fri, 05 Aug 2016 10:39:15 +0800</pubDate><description><![CDATA[import com.gs.utility.io.Transfer;import javax.crypto.Cipher;
import javax.crypto.KeyGenerator;
import javax.crypto.spec.SecretKeySpec;
import java.io.ByteArrayOutputStream;
import java.io.File;
import]]></description><category></category></item><item><title><![CDATA[MD5]]></title><link>https://blog.youkuaiyun.com/code_soul/article/details/52126661</link><guid>https://blog.youkuaiyun.com/code_soul/article/details/52126661</guid><author>code_soul</author><pubDate>Fri, 05 Aug 2016 10:30:55 +0800</pubDate><description><![CDATA[public String cryptMd5(String source, String key)
  {
    byte[] k_ipad = new byte[64];
    byte[] k_opad = new byte[64];
    byte[] keyb;
    byte[] value;
    try
    {
      keyb = key.getBytes("UTF]]></description><category></category></item><item><title><![CDATA[xml signature]]></title><link>https://blog.youkuaiyun.com/code_soul/article/details/52126372</link><guid>https://blog.youkuaiyun.com/code_soul/article/details/52126372</guid><author>code_soul</author><pubDate>Fri, 05 Aug 2016 10:08:02 +0800</pubDate><description><![CDATA[XML-Signature Syntax and Processing, W3C Recommendation规范]]></description><category></category></item><item><title><![CDATA[mybatis学习]]></title><link>https://blog.youkuaiyun.com/code_soul/article/details/52058308</link><guid>https://blog.youkuaiyun.com/code_soul/article/details/52058308</guid><author>code_soul</author><pubDate>Thu, 28 Jul 2016 19:39:21 +0800</pubDate><description><![CDATA[原生mybatis使用； 
一 ：简易mybatis核心配置文件 
① 配置数据源 
② 配置mapper 
文件：Configuration.xml
    <?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE configuration PUBLIC "-//mybatis.org//DTD Config 3.0//EN"
        "http]]></description><category></category></item><item><title><![CDATA[volatile]]></title><link>https://blog.youkuaiyun.com/code_soul/article/details/52058218</link><guid>https://blog.youkuaiyun.com/code_soul/article/details/52058218</guid><author>code_soul</author><pubDate>Thu, 28 Jul 2016 19:26:23 +0800</pubDate><description><![CDATA[volatile 关键字学习volatile修饰的共享变量，可以保证多个线程操作变量的可见性。
什么是原子操作 
 int i = 10;  赋值操作
什么是可见性
什么是指令重排序]]></description><category></category></item></channel></rss>