- 浏览: 169242 次
- 性别:
- 来自: 深圳
最新评论
-
g24317854:
感谢,遇到同样的问题,确实是返回首字母大写的问题
org.xml.sax.SAXException: Invalid element -
lvweifang:
差评差评差评差评差评差评差评差评差评差评差评差评差评差评差评差 ...
org.xml.sax.SAXException: Invalid element -
chen_juns:
谢谢博主,按照你方案已解决
org.xml.sax.SAXException: Invalid element -
天馒:
运行结果什么也没有呢
Android之文件&XML -
jkptthui:
讲得很详细,学习了...
Android之Service&BroadCastReceiver
文章列表
webmagic爬虫
- 博客分类:
- test
package com.wilian.astro.webmagic.follifollie;
import com.wilian.astro.webmagic.vo.WatchVO;
import us.codecraft.webmagic.Page;
import us.codecraft.webmagic.Site;
import us.codecraft.webmagic.Spider;
import us.codecraft.webmagic.processor.PageProcessor;
/**
*
* @ClassName: Official ...
1.什么是序列化?
把Java对象转换为字节序列的过程称为对象的序列化,把字节序列恢复为Java对象的过程称为对象的反序列化。
对象的序列化主要有如下2种用途:
把对象的字节序列永久地保存到硬盘上,通常存放在一个文件中
在网络上传送对象的字节序列
2.序列化的实现方式
类继承Serializable接口,可使用writeObject方法和readObject方法控制类序列化的过程。 默认情况下只会初始化化非transient得实例变量。 一般使用writeObject方法和readObject方法来优化序列化的过程或者对敏感数据进行特殊的处理。
package com ...
JDK RMI框架及相关技术综述
- 博客分类:
- java分布式
1.RMI基本原理
RMI框架为远程对象分别生成了客户端代理和服务端代理。(HelloWorld的实例中可以看到客户端端的远程对象为代理类。)位于客户端的代理类称为存根STUB,服务端的代理类称为骨架SKELETON。存根与骨架通过SOCKET进行通信。服务端与客户端之间传送的方法参数或返回值,必须是远程对象(Remote接口也集成Serializable接口)、可序列化对象、基本类型。
2.分布式垃圾回收
RMI框架采用分布式垃圾收集机制(DGC)来管理远程对象的生命周期,DGC的主要规则是,只有当一个远程对象不受到任何本地引用和远程引用,这个对象才会结束生命周期,并且可以被本地Ja ...
RMI版HelloWorld
- 博客分类:
- java分布式
1.创建远程接口
package com.wilian.rmi.server;
import java.rmi.Remote;
import java.rmi.RemoteException;
public interface HelloWorld extends Remote{//必须继承Remote接口
//必须要抛出RemoteExcepttion的异常,不然启动远程服务时会报错java.rmi.server.ExportException: remote object implements illegal remote interface;
...
今天开发项目遇到一个问题,简单记录下,希望能帮到遇到同样问题的同学
我使用Axis1.4开发webservice客户端,客户端代码如下:
Service service = new Service();
Call call;
try {
call = (Call)service.createCall();
call.setTargetEndpointAddress(d2Url);
QName qn = new QName("", "CMSID");
call.addParameter(qn, XMLType.SOAP_STR ...
编译hadoop-eclipse插件
- 博客分类:
- Hadoop
转载 http://www.ilablog.org/%E7%BC%96%E8%AF%91hadoop-eclipse%E6%8F%92%E4%BB%B6/
编译hadoop-eclipse插件
目录
一、所需软件… 2
二、Ant和Cygwin安装… 2
三、编译hadoop-eclipse-plugin-1.0.3.jar插件… 5
前言:
由于开发人员使用不同的eclipse版本,hadoop自0.20.x版本后不再提供现成的hadoop-eclipse插件而是给出了源码自行编译。
一、所需软件
Windows 7旗舰版
Eclipse 3.7. ...
Zookeeper集群环境安装
- 博客分类:
- Hadoop
1.集群机器配置
主机名
IP
namenode
192.168.1.250
datanode1
192.168.1.237
datanode2
192.168.1.251
2.上述机器上分别安装Hadoop的集群,不在累述。其中namenode为master,其他为slave
3.下载zookeeper-3.3.5.tar.gz,下面以namenode为例
解压到/home/wilian目录下 tar -xzvf zookeeper-3.3.5.tar.gz
4.设置环境变量
export ZOOKEEPER_HOME ...
Hadoop FS Shell
- 博客分类:
- Hadoop
[wilian@localhost hadoop-0.20.2]$ bin/hadoop fs -help
hadoop fs is the command to execute fs commands. The full syntax is:
hadoop fs [-fs <local | file system URI>] [-conf <configuration file>]
[-D <property=value>] [-ls <path>] [-lsr <path>] [-du <p ...
Redis 主从复制
- 博客分类:
- Redis
redis主从复制过程:当配置好slave后,slave与master建立连接,然后发送sync命令。无论是第一次连接还是重新连接,master都会启动一个后台进程,将数据库快照保存到文件中,同时master主进程会开始收集新的写命令并缓存。后台进程完成写文件后,master就发送文件给slave,slave将文件保存到硬盘上,再加载到内存中,接着master就会把缓存的命令转发给slave,后续master将收到的写命令发送给slave。如果master同时收到多个slave发来的同步连接命令,master只会启动一个进程来写数据库镜像,然后发送给所有的slave。
单机上配置实例:
m ...
Redis 常用命令之服务器相关命令
- 博客分类:
- Redis
redis-cli -h 192.168.12.12 远程登录redis客户端
redis 127.0.0.1:6379> ping 测试连接是否存活
PONG
redis 127.0.0.1:6379> echo wilian 在命令行打印一些内容
"wilian"
redis 127.0.0.1:6379> select 1 选择数据库。Redis数据库编号从0~15,我们可以选择任意一个数据库来进行数据的存取
OK
redis 127.0.0.1:6379[1]> dbsize 返回当前数据库中key的数 ...
Redis 常用命令之键值相关命令
- 博客分类:
- Redis
redis 127.0.0.1:6379> keys * 列出所有的key
1) "myset1"
2) "mylist5"
3) "key2"
4) "mail"
5) "muset2"
6) "myset2"
7) "mylist6"
8) "mylist2"
9) "mysset"
10) "myset3"
11) "mylist ...
Redis sorted set操作
- 博客分类:
- Redis
sorted set是set的一个升级版本,它在set的基础上增加了一个顺序属性,这一属性在添加
修改元素的时候可以指定,每次指定后,zset会自动重新按新的值调整顺序。可以理解为有
两列的mysql表,一列存value,一列存顺序。操作中key理解为zset的名字。
和set一样sorted set也是string类型元素的集合,不同的是每个元素都会关联一个double
类型的score。sorted set的实现是skip list和hash table的混合体。
当元素被添加到集合中时,一个元素到score的映射被添加到hash table中,所以给定一个 ...
Redis sets操作
- 博客分类:
- Redis
set 是集合,和我们数学中的集合概念相似,对集合的操作有添加删除元素,有对多个集合
求交并差等操作,操作中key理解为集合的名字。
Redis的set是string类型的无序集合。set元素最大可以包含(2的32次方)个元素。
set的是通过hash table实现的,所以添加、删除和查找的复杂度都是O(1)。hash table会随
着添加或者删除自动的调整大小。需要注意的是调整hash table大小时候需要同步(获取写
锁)会阻塞其他读写操作,可能不久后就会改用跳表(skip list)来实现,跳表已经在sorted
set 中使用了。关于set 集合 ...
Redis lists操作
- 博客分类:
- Redis
list 是一个链表结构,主要功能是push、pop、获取一个范围的所有值等等,操作中key理
解为链表的名字。
Redis的list 类型其实就是一个每个子元素都是string类型的双向链表。链表的最大长度是(2
的32次方)。我们可以通过push,pop操作从链表的头部或者尾部添加删除元素。这使得list
既可以用作栈,也可以用作队列。
有意思的是list 的pop操作还有阻塞版本的,当我们[lr]pop一个list 对象时,如果list 是空,
或者不存在,会立即返回nil。但是阻塞版本的b[lr]pop可以则可以阻塞,当然可以加超时时
间,超时后也会返 ...
Redis hashes操作
- 博客分类:
- Redis
Redis hash是一个string类型的field 和value的映射表.它的添加、删除操作都是O(1)(平均)。
hash特别适合用于存储对象。相较于将对象的每个字段存成单个string类型。将一个对象存
储在hash类型中会占用更少的内存,并且可以更方便的存取整个对象。省内存的原因是新
建一个hash对象时开始是用zipmap(又称为small hash)来存储的。这个zipmap其实并不
是hash table,但是zipmap相比正常的hash实现可以节省不少hash本身需要的一些元数据
存储开销。尽管zipmap的添加,删除,查找都是O(n),但是由于一般对象的fi ...