<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[RAPIER512的专栏]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/RAPIER512</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; RAPIER512]]></copyright><item><title><![CDATA[python之commands模块]]></title><link>https://blog.youkuaiyun.com/RAPIER512/article/details/81458956</link><guid>https://blog.youkuaiyun.com/RAPIER512/article/details/81458956</guid><author>RAPIER512</author><pubDate>Mon, 06 Aug 2018 18:24:19 +0800</pubDate><description><![CDATA[ 

要获得shell命令的输出只需要`cmd`命令就可以了,

需要得到命令执行的状态则需要判断$?的值, 在Python中有一个模块commands也很容易做到以上的效果.
看一下三个函数:
1). commands.getstatusoutput(cmd)
用os.popen()执行命令cmd, 然后返回两个元素的元组(status, result)，其中 status为int类型，resu...]]></description><category></category></item><item><title><![CDATA[搭建ELK日志分析平台]]></title><link>https://blog.youkuaiyun.com/RAPIER512/article/details/81122799</link><guid>https://blog.youkuaiyun.com/RAPIER512/article/details/81122799</guid><author>RAPIER512</author><pubDate>Thu, 19 Jul 2018 21:10:23 +0800</pubDate><description><![CDATA[为什么用到ELK：

一般我们需要进行日志分析场景：直接在日志文件中 grep、awk 就可以获得自己想要的信息。但在规模较大的场景中，此方法效率低下，面临问题包括日志量太大如何归档、文本搜索太慢怎么办、如何多维度查询。需要集中化的日志管理，所有服务器上的日志收集汇总。常见解决思路是建立集中式日志收集系统，将所有节点上的日志统一收集，管理，访问。

一般大型系统是一个分布式部署的架构，不同的服务模...]]></description><category></category></item><item><title><![CDATA[python json loads exception  for \e]]></title><link>https://blog.youkuaiyun.com/RAPIER512/article/details/81122290</link><guid>https://blog.youkuaiyun.com/RAPIER512/article/details/81122290</guid><author>RAPIER512</author><pubDate>Thu, 19 Jul 2018 20:39:19 +0800</pubDate><description><![CDATA[正常：


content = &quot;&quot;&quot;{&quot;content&quot;:&quot;abcd   abcd&quot;}&quot;&quot;&quot;
print json.loads(content)


结果：

{u'content': u'abcd \xa0 abcd'}

异常：


content = &quot;&quot;&quot;{&quot;content&quot;:&quot;abcd \e abcd&quot;}&quot;&quot;]]></description><category></category></item><item><title><![CDATA[Linux进程管理工具supervisor安装及使用]]></title><link>https://blog.youkuaiyun.com/RAPIER512/article/details/80541579</link><guid>https://blog.youkuaiyun.com/RAPIER512/article/details/80541579</guid><author>RAPIER512</author><pubDate>Fri, 01 Jun 2018 18:33:45 +0800</pubDate><description><![CDATA[1. 什么是supervisorsuperviosr是一个Linux/Unix系统上的进程监控工具，他/她upervisor是一个Python开发的通用的进程管理程序，可以管理和监控Linux上面的进程，能将一个普通的命令行进程变为后台daemon，并监控进程状态，异常退出时能自动重启。不过同daemontools一样，它不能监控daemon进程superviosr官网点此。2. 为什么用supe...]]></description><category></category></item><item><title><![CDATA[解决 python3 requests headers 参数不能有中文]]></title><link>https://blog.youkuaiyun.com/RAPIER512/article/details/79761593</link><guid>https://blog.youkuaiyun.com/RAPIER512/article/details/79761593</guid><author>RAPIER512</author><pubDate>Fri, 30 Mar 2018 18:34:54 +0800</pubDate><description><![CDATA[1 需求，heeaders 参数需要拼接中文参数param 解决如下url = 'https://....search?keyword=' + param + '&amp;amp;templateId=&amp;amp;page=1&amp;amp;pageSize=10'
headers = {
	&quot;Accept&quot;: &quot;application/json, text/javascript, */*; q=0.01&quot;,
	...]]></description><category></category></item><item><title><![CDATA[求两个集合差的几种常见算法]]></title><link>https://blog.youkuaiyun.com/RAPIER512/article/details/52451773</link><guid>https://blog.youkuaiyun.com/RAPIER512/article/details/52451773</guid><author>RAPIER512</author><pubDate>Tue, 06 Sep 2016 17:14:24 +0800</pubDate><description><![CDATA[有两个数组：
String[] arr01={"Andy","Bill","Cindy","Douglas","Felex","Green"};
String[] arr02={"Andy","Bill","Felex","Green","Gates"};
求存在于arr01而不存在于arr02的元素的集合？

 

最容易想到的解法-双重循环


Java代码  


]]></description><category></category></item><item><title><![CDATA[正则表达式语法]]></title><link>https://blog.youkuaiyun.com/RAPIER512/article/details/52415993</link><guid>https://blog.youkuaiyun.com/RAPIER512/article/details/52415993</guid><author>RAPIER512</author><pubDate>Fri, 02 Sep 2016 17:59:37 +0800</pubDate><description><![CDATA[1.正则表达式基本语法

两个特殊的符号'^'和'$'。他们的作用是分别指出一个字符串的开始和结束。例子如下：
"^The"：表示所有以"The"开始的字符串（"There"，"The cat"等）；
"of despair$"：表示所以以"of despair"结尾的字符串；
"^abc$"：表示开始和结尾都是"abc"的字符串——呵呵，只有"abc"自己了；
"notice"：表示]]></description><category></category></item><item><title><![CDATA[java （JDK 接口动态代理）]]></title><link>https://blog.youkuaiyun.com/RAPIER512/article/details/52233214</link><guid>https://blog.youkuaiyun.com/RAPIER512/article/details/52233214</guid><author>RAPIER512</author><pubDate>Wed, 17 Aug 2016 17:54:37 +0800</pubDate><description><![CDATA[问题：InvocationHandler的invoke方法是由谁来调用的，代理对象是怎么生成的

先从动态案例说起：




Java代码  



package dynamic.proxy;   
  
import java.lang.reflect.InvocationHandler;  
import java.lang.reflect.Method;  
]]></description><category></category></item><item><title><![CDATA[类-静态内部类]]></title><link>https://blog.youkuaiyun.com/RAPIER512/article/details/52045845</link><guid>https://blog.youkuaiyun.com/RAPIER512/article/details/52045845</guid><author>RAPIER512</author><pubDate>Wed, 27 Jul 2016 15:21:17 +0800</pubDate><description><![CDATA[Java语言允许在类中再定义类，这种在其它类内部定义的类就叫内部类。内部类又分为：常规内部类、局部内部类、匿名内部类和静态嵌套类四种。
（1）常规内部类：即与类的成员属性并列的类；
（2）局部内部类：即在代码块内部或者在方法内部的类；
（3）匿名内部类：因为在new的时候直接创建、实现
 类，所以该类必须继承一个类或接口。
（4）静态内部类：用static修饰的内部类。
注意事项：
]]></description><category></category></item><item><title><![CDATA[由于Mybatis实体数据字段不匹配而查不到的解决办法]]></title><link>https://blog.youkuaiyun.com/RAPIER512/article/details/51532846</link><guid>https://blog.youkuaiyun.com/RAPIER512/article/details/51532846</guid><author>RAPIER512</author><pubDate>Sun, 29 May 2016 17:06:12 +0800</pubDate><description><![CDATA[使用MyBatis进行查询操作时无法查询出相应的结果，但是纯sql又能查出数据时，需要考虑下是不是字段对应实体类的属性出现问题，解决方法有如下两点

1、通过在查询的sql语句中定义字段名的别名，让字段名的别名和实体类的属性名一致，这样就可以表的字段名和实体类的属性名一一对应上了，这种方式是通过在sql语句中定义别名来解决字段名和属性名的映射关系的。

2、通过来映射字段名和实体类属性名的]]></description><category></category></item><item><title><![CDATA[跨域解决    &  ajax post 请求springmvc ctr 问题]]></title><link>https://blog.youkuaiyun.com/RAPIER512/article/details/51506672</link><guid>https://blog.youkuaiyun.com/RAPIER512/article/details/51506672</guid><author>RAPIER512</author><pubDate>Thu, 26 May 2016 13:46:51 +0800</pubDate><description><![CDATA[1何为跨域

简单的说即为浏览器限制访问A站点下的js代码对B站点下的url进行ajax请求。假如当前域名是www.abc.com，那么在当前环境中运行的js代码，出于安全考虑，正常情况下不能访问www.zzz.com域名下的资源。

例如：以下代码再本域名下可以通过js代码正常调用接口

(function() {
    var url = "http://localhost:80]]></description><category></category></item><item><title><![CDATA[【js类库AngularJs】解决angular+springmvc的post提交问题]]></title><link>https://blog.youkuaiyun.com/RAPIER512/article/details/51352294</link><guid>https://blog.youkuaiyun.com/RAPIER512/article/details/51352294</guid><author>RAPIER512</author><pubDate>Mon, 09 May 2016 13:12:41 +0800</pubDate><description><![CDATA[AngularJS诞生于2009年，由Misko Hevery 等人创建，后为Google所收购。是一款优秀的前端JS框架，已经被用于Google的多款产品当中。AngularJS有着诸多特性，最为核心的 是：MVVM、模块化、自动化双向数据绑定、语义化标签、依赖注入、等等。

参考资料：

angularjs中文网：http://www.apjs.net/

angularjs官网：]]></description><category></category></item><item><title><![CDATA[文章标题]]></title><link>https://blog.youkuaiyun.com/RAPIER512/article/details/51252353</link><guid>https://blog.youkuaiyun.com/RAPIER512/article/details/51252353</guid><author>RAPIER512</author><pubDate>Tue, 26 Apr 2016 17:33:15 +0800</pubDate><description><![CDATA[Java为数据结构中的映射定义了一个接口java.util.Map，它有四个实现类，分别是HashMap、HashTable、LinkedHashMap和TreeMap。本节实例主要介绍这4中实例的用法和区别。关键技术剖析：Map用于存储键值对，根据键得到值，因此不允许键重复，值可以重复。l  （1）HashMap是一个最常用的Map，它根据键的hashCode值存储数据，根据键可以直接获取它的值，]]></description><category></category></item><item><title><![CDATA[string stringBuffer stringBuilder 区别]]></title><link>https://blog.youkuaiyun.com/RAPIER512/article/details/51252296</link><guid>https://blog.youkuaiyun.com/RAPIER512/article/details/51252296</guid><author>RAPIER512</author><pubDate>Tue, 26 Apr 2016 17:26:45 +0800</pubDate><description><![CDATA[String 字符串常量 
StringBuffer 字符串变量（线程安全） 
StringBuilder 字符串变量（非线程安全） 
 简要的说， String 类型和 StringBuffer 类型的主要性能区别其实在于 String 是不可变的对象, 因此在每次对 String 类型进行改变的时候其实都等同于生成了一个新的 String 对象，然后将指针指向新的 String 对象，所以经常改]]></description><category></category></item><item><title><![CDATA[mybatis做insert操作的时候 怎么才能返回插入的那条数据的id？]]></title><link>https://blog.youkuaiyun.com/RAPIER512/article/details/51198684</link><guid>https://blog.youkuaiyun.com/RAPIER512/article/details/51198684</guid><author>RAPIER512</author><pubDate>Wed, 20 Apr 2016 10:39:32 +0800</pubDate><description><![CDATA[1、useGeneratedKeys=”true” 可以获取自增长的ID 只支持具有自增长方式的那种数据库(mysql, mssql 等 但 oracle 就不支持了 ) 所以可以使用selectKey来获取 
eg:<insert id="xxx" parameterType="yyy" useGeneratedKeys="true"> 
    insert into table(...) va]]></description><category></category></item><item><title><![CDATA[Mybatis 多个参数传递解决方案]]></title><link>https://blog.youkuaiyun.com/RAPIER512/article/details/51164329</link><guid>https://blog.youkuaiyun.com/RAPIER512/article/details/51164329</guid><author>RAPIER512</author><pubDate>Fri, 15 Apr 2016 19:59:39 +0800</pubDate><description><![CDATA[（一）单个参数 
public List getXXBeanList(String xxCode); 
select 字段… from XXX where code = #{xxCode}  
其中方法名和ID一致，#{}中的参数名与方法中的参数名一直， 我这里采用的是XXXBean是采用的短名字, select 后的字段列表要和bean中的属性名一致， 如果不一致的可以用 as 来补充。（二）多参]]></description><category></category></item><item><title><![CDATA[欢迎使用优快云-markdown编辑器]]></title><link>https://blog.youkuaiyun.com/RAPIER512/article/details/51164280</link><guid>https://blog.youkuaiyun.com/RAPIER512/article/details/51164280</guid><author>RAPIER512</author><pubDate>Fri, 15 Apr 2016 19:47:24 +0800</pubDate><description><![CDATA[欢迎使用Markdown编辑器写博客本Markdown编辑器使用StackEdit修改而来，用它写博客，将会带来全新的体验哦：
Markdown和扩展Markdown简洁的语法
代码块高亮
图片链接和图片上传
LaTex数学公式
UML序列图和流程图
离线写博客
导入导出Markdown文件
丰富的快捷键
快捷键
加粗    Ctrl + B 
斜体    Ctrl + I 
引用    Ctrl]]></description><category></category></item><item><title><![CDATA[redis 使用]]></title><link>https://blog.youkuaiyun.com/RAPIER512/article/details/50973673</link><guid>https://blog.youkuaiyun.com/RAPIER512/article/details/50973673</guid><author>RAPIER512</author><pubDate>Thu, 24 Mar 2016 17:48:45 +0800</pubDate><description><![CDATA[本文简要描述了linux环境安装redis的过程，redis相关参数以及简单的使用。




１、安装

下载源码包：

# wget http://redis.googlecode.com/files/redis-2.4.10.tar.gz

解压缩：

# tar xvfz redis-2.4.10.tar.gz 

进入目录：

# cd redis-2.4]]></description><category></category></item><item><title><![CDATA[java  socket 编程]]></title><link>https://blog.youkuaiyun.com/RAPIER512/article/details/50930234</link><guid>https://blog.youkuaiyun.com/RAPIER512/article/details/50930234</guid><author>RAPIER512</author><pubDate>Sat, 19 Mar 2016 11:39:21 +0800</pubDate><description><![CDATA[Java Socket编程
       对于Java Socket编程而言，有两个概念，一个是ServerSocket，一个是Socket。服务端和客户端之间通过Socket建立连接，之后它们就可以进行通信了。首先ServerSocket将在服务端监听某个端口，当发现客户端有Socket来试图连接它时，它会accept该Socket的连接请求，同时在服务端建立一个对应的Socket与之进行通信]]></description><category></category></item><item><title><![CDATA[web.xml 中配置精讲  及其 listener、filter、servlet  加载顺序]]></title><link>https://blog.youkuaiyun.com/RAPIER512/article/details/50621774</link><guid>https://blog.youkuaiyun.com/RAPIER512/article/details/50621774</guid><author>RAPIER512</author><pubDate>Tue, 02 Feb 2016 09:14:31 +0800</pubDate><description><![CDATA[web.xml 中的listener、 filter、servlet 加载顺序及其详解

在项目中总会遇到一些关于加载的优先级问题，刚刚就遇到了一个问题，由于项目中使用了quartz任务调度，quartz在web.xml中是使用listener进行监听的,使得在tomcat启动的时候能马上检查数据库查看那些任务未被按时执行，而数据库的配置信息在是在web.xml中使用servlet配置的，导致]]></description><category></category></item></channel></rss>