<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[DViewer的专栏]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/DViewer</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; DViewer]]></copyright><item><title><![CDATA[File Descriptors]]></title><link>https://blog.youkuaiyun.com/DViewer/article/details/79057609</link><guid>https://blog.youkuaiyun.com/DViewer/article/details/79057609</guid><author>DViewer</author><pubDate>Sun, 14 Jan 2018 17:03:20 +0800</pubDate><description><![CDATA[One of the first things a UNIX programmer learns is that every running program starts with three files already opened:


Table 1.1. Standard Files Provided by Unix






Descriptive Name

]]></description><category></category></item><item><title><![CDATA[jni中的JNICALL的含义]]></title><link>https://blog.youkuaiyun.com/DViewer/article/details/78773394</link><guid>https://blog.youkuaiyun.com/DViewer/article/details/78773394</guid><author>DViewer</author><pubDate>Mon, 11 Dec 2017 15:45:08 +0800</pubDate><description><![CDATA[这些宏定义是给编译器用的：
/*
 * @(#)jni_md.h 1.14 03/12/19
 *
 * Copyright 2004 Sun Microsystems, Inc. All rights reserved.
 * SUN PROPRIETARY/CONFIDENTIAL. Use is subject to license terms.
 */
#ifndef _JAVASOFT]]></description><category></category></item><item><title><![CDATA[mysql出现错误“ Every derived table must have its own alias”]]></title><link>https://blog.youkuaiyun.com/DViewer/article/details/78545196</link><guid>https://blog.youkuaiyun.com/DViewer/article/details/78545196</guid><author>DViewer</author><pubDate>Wed, 15 Nov 2017 21:20:20 +0800</pubDate><description><![CDATA[Every derived table must have its own alias

这句话的意思是说每个派生出来的表都必须有一个自己的别名

一般在多表查询时，会出现此错误。

因为，进行嵌套查询的时候子查询出来的的结果是作为一个派生表来进行上一级的查询的，所以子查询的结果必须要有一个别名

把MySQL语句改成：select count(*) from (select * ]]></description><category></category></item><item><title><![CDATA[PRACTICAL HASKELL - GETTING STARTED WITH STACK]]></title><link>https://blog.youkuaiyun.com/DViewer/article/details/78498892</link><guid>https://blog.youkuaiyun.com/DViewer/article/details/78498892</guid><author>DViewer</author><pubDate>Fri, 10 Nov 2017 13:36:37 +0800</pubDate><description><![CDATA[Haskell is famous for having a steep learning curve. As a web developer we’re used to clear tutorials that we can understand and complete within an hour or two. Haskell introduces many new concepts no]]></description><category></category></item><item><title><![CDATA[10 Wget Command Examples]]></title><link>https://blog.youkuaiyun.com/DViewer/article/details/78498881</link><guid>https://blog.youkuaiyun.com/DViewer/article/details/78498881</guid><author>DViewer</author><pubDate>Fri, 10 Nov 2017 13:35:43 +0800</pubDate><description><![CDATA[We’ll show you 10 practical examples of Wget Command. Wget is a free utility that can be used for retrieving files using HTTP, HTTPS, and FTP which are considered as the most widely-used Internet prot]]></description><category></category></item><item><title><![CDATA[Updating a JAR File]]></title><link>https://blog.youkuaiyun.com/DViewer/article/details/78478944</link><guid>https://blog.youkuaiyun.com/DViewer/article/details/78478944</guid><author>DViewer</author><pubDate>Wed, 08 Nov 2017 15:03:34 +0800</pubDate><description><![CDATA[The Jar tool provides a u option which you can use to update the contents of an existing JAR file by modifying its manifest or by adding files.
The basic command for adding files has this format:

]]></description><category></category></item><item><title><![CDATA[Flume(ng) 自定义sink实现和属性注入]]></title><link>https://blog.youkuaiyun.com/DViewer/article/details/78472868</link><guid>https://blog.youkuaiyun.com/DViewer/article/details/78472868</guid><author>DViewer</author><pubDate>Tue, 07 Nov 2017 21:38:07 +0800</pubDate><description><![CDATA[最近需要利用flume来做收集远端日志，所以学习一些flume最基本的用法。这里仅作记录。
远端日志收集的整体思路是远端自定义实现log4j的appender把消息发送到flume端，flume端自定义实现一个sink来按照我们的规则保存日志。
自定义Sink代码：


public class LocalFileLogSink extends AbstractSink implemen]]></description><category></category></item><item><title><![CDATA[Using the JavaScript console in Visual Studio Code]]></title><link>https://blog.youkuaiyun.com/DViewer/article/details/78429247</link><guid>https://blog.youkuaiyun.com/DViewer/article/details/78429247</guid><author>DViewer</author><pubDate>Thu, 02 Nov 2017 20:53:52 +0800</pubDate><description><![CDATA[Some time ago I published an article about the JavaScript console in Sublime
 Text. It’s turned out to be one of the most popular articles on this website. As I recently changed my code editor from S]]></description><category></category></item><item><title><![CDATA[Python With Visual Studio Code – A 5 Step Guide]]></title><link>https://blog.youkuaiyun.com/DViewer/article/details/78419574</link><guid>https://blog.youkuaiyun.com/DViewer/article/details/78419574</guid><author>DViewer</author><pubDate>Thu, 02 Nov 2017 20:28:45 +0800</pubDate><description><![CDATA[I am a student of Python and I will try to present a step by step guide about ‘How To Use Python With Visual Studio Code?’. I will be listing down the steps I found and followed to setup Visual Studio]]></description><category></category></item><item><title><![CDATA[emacs Haskell配置]]></title><link>https://blog.youkuaiyun.com/DViewer/article/details/78402145</link><guid>https://blog.youkuaiyun.com/DViewer/article/details/78402145</guid><author>DViewer</author><pubDate>Tue, 31 Oct 2017 12:48:54 +0800</pubDate><description><![CDATA[Interactive commands

As usual, enabling a new feature in the Haskell mode involves changing some configuration file. In particular, we need to enable the interactive features and also define the ke]]></description><category></category></item><item><title><![CDATA[The Haskell process `xx’ has died issue]]></title><link>https://blog.youkuaiyun.com/DViewer/article/details/78401597</link><guid>https://blog.youkuaiyun.com/DViewer/article/details/78401597</guid><author>DViewer</author><pubDate>Tue, 31 Oct 2017 11:33:07 +0800</pubDate><description><![CDATA[genvironment: emacs 2.5 , windows10 (chinese / japanese)
cabal init… , cabal configure… ,
open the Main.hs and press c-c c-l, I get the following message :
The Haskell process 'xx' has died. Restar]]></description><category></category></item><item><title><![CDATA[gcc: __attribute__ ((weak))]]></title><link>https://blog.youkuaiyun.com/DViewer/article/details/78387155</link><guid>https://blog.youkuaiyun.com/DViewer/article/details/78387155</guid><author>DViewer</author><pubDate>Sun, 29 Oct 2017 19:18:34 +0800</pubDate><description><![CDATA[While playing with glibc I noticed one interesting technique. It is
based on gcc's extension that allows you to declare weak symbols. In
essence it works like this:


extern void weak_f (void) __attri]]></description><category></category></item><item><title><![CDATA[slf4j 和 log4j配合使用]]></title><link>https://blog.youkuaiyun.com/DViewer/article/details/78376652</link><guid>https://blog.youkuaiyun.com/DViewer/article/details/78376652</guid><author>DViewer</author><pubDate>Sat, 28 Oct 2017 16:03:08 +0800</pubDate><description><![CDATA[添加logger的日志输出，下面是配置信息供备忘




步骤：


1. 在Maven的porn.xml 文件中添加dependency如下


  
    org.slf4j  
    slf4j-log4j12  
    1.7.2  
  
之后就会添加三个包，









2. 之后在项目下添加log4j.properties
]]></description><category></category></item><item><title><![CDATA[log4j+logback+slf4j的关系与调试]]></title><link>https://blog.youkuaiyun.com/DViewer/article/details/78376230</link><guid>https://blog.youkuaiyun.com/DViewer/article/details/78376230</guid><author>DViewer</author><pubDate>Sat, 28 Oct 2017 15:26:30 +0800</pubDate><description><![CDATA[由于现在开源框架日益丰富，好多开源框架使用的日志组件不尽相同。存在着在一个项目中，不同的版本，不同的框架共存。导致日志输出异常混乱。虽然也不至于对系统造成致命伤害，但是明显可以看出，架构不够精良，追求极致略有不足。 
    其中有一些标准通用接口，标准实现，各种桥接器的存在，下面就让笔者树立一下这些框架之间的关系。 
 
从上图中，我们可以看到4部分。 
接口：将所有日志实现适配到了一起]]></description><category></category></item><item><title><![CDATA[IDEA的查询引用、调用关系图的功能]]></title><link>https://blog.youkuaiyun.com/DViewer/article/details/78371304</link><guid>https://blog.youkuaiyun.com/DViewer/article/details/78371304</guid><author>DViewer</author><pubDate>Sat, 28 Oct 2017 02:02:23 +0800</pubDate><description><![CDATA[Eclipse的"Call Hierarchy"可以查看一个Java方法或类成员变量的调用树（caller和callee两个方向），非常方便。 
在IDEA中类似功能被划分到了三个命令。
 
IntelliJ IDEA中可以在主菜单中选择Navigate | Call Hierarchy命令查看一个Java方法调用树（caller和callee两个方向），但是不像Eclipse那样可以查看类]]></description><category></category></item><item><title><![CDATA[用Emacs作为clojure编辑器]]></title><link>https://blog.youkuaiyun.com/DViewer/article/details/78326016</link><guid>https://blog.youkuaiyun.com/DViewer/article/details/78326016</guid><author>DViewer</author><pubDate>Tue, 24 Oct 2017 09:35:43 +0800</pubDate><description><![CDATA[之所以用Emacs作为clojure编辑器是因为其提供了Clojure的REPL紧密集成，这可以让你立刻运行你刚写完的代码。那种紧密的反馈回路在你日常学习和使用clojure写实时程序时会非常有用，Emacs非常适合和任何Lips方言一起工作，事实上Emacs本身就是用一种叫Emacs Lisp (elisp)的方言写成的
下载安装emacs




你需要使用最新版本的Emacs，Emacs 2]]></description><category></category></item><item><title><![CDATA[golang 变量声明]]></title><link>https://blog.youkuaiyun.com/DViewer/article/details/78252977</link><guid>https://blog.youkuaiyun.com/DViewer/article/details/78252977</guid><author>DViewer</author><pubDate>Mon, 16 Oct 2017 19:05:57 +0800</pubDate><description><![CDATA[In Go, variables are explicitly declared and used by the compiler to
 e.g. check type-correctness of function calls.


 



 



package main






 


import "fmt"






 ]]></description><category></category></item><item><title><![CDATA[Apply and arrays: three tricks]]></title><link>https://blog.youkuaiyun.com/DViewer/article/details/78237039</link><guid>https://blog.youkuaiyun.com/DViewer/article/details/78237039</guid><author>DViewer</author><pubDate>Sat, 14 Oct 2017 21:24:27 +0800</pubDate><description><![CDATA[This blog post describes three tricks for working with arrays via apply.

The apply method
apply is a method that all functions have. Its signature is
    func.apply(thisValue, [arg1, arg2, ...])
]]></description><category></category></item><item><title><![CDATA[Windows 安装Kafka]]></title><link>https://blog.youkuaiyun.com/DViewer/article/details/78200785</link><guid>https://blog.youkuaiyun.com/DViewer/article/details/78200785</guid><author>DViewer</author><pubDate>Wed, 11 Oct 2017 10:28:50 +0800</pubDate><description><![CDATA[Windows 7 安装Apache kafka_2.11-0.9.0.1

   

下载所需文件

Zookeeper: http://www.apache.org/dyn/closer.cgi/zookeeper/

Kafka :http://kafka.apache.org/downloads.html

   

   

安装Zookeeper

进入]]></description><category></category></item><item><title><![CDATA[Windows单机配置Kafka环境]]></title><link>https://blog.youkuaiyun.com/DViewer/article/details/78200753</link><guid>https://blog.youkuaiyun.com/DViewer/article/details/78200753</guid><author>DViewer</author><pubDate>Wed, 11 Oct 2017 10:26:38 +0800</pubDate><description><![CDATA[首先确保机器已经安装好Zookeeper，Zookeeper安装参考 
Windows单机配置Zookeeper环境
然后确保Zookeeper是正常启动状态
下载Kafka

http://kafka.apache.org/downloads.html


下载二进制包

下载后解压缩，我这里解压缩到了 D:\WorkSoftware\kafka_2.11_0.10.1.0 ]]></description><category></category></item></channel></rss>