- 浏览: 21812 次
- 性别:
- 来自: 上海
最新评论
-
378629846:
Call call = (Call)new Service() ...
AXIS访问xfire服务端,身份验证的问题!!! 在CSDN挂了2天没人回答!! -
KimHo:
用axis2生成服务端和客户端吧
更加简单
Axis客户端调用JAX-WS出现的问题 -
h140465:
过几天发给代码,不论客户端把验证信息放到哪个节点都能找出来
AXIS访问xfire服务端,身份验证的问题!!! 在CSDN挂了2天没人回答!! -
ldb19890624:
你这个东东 客户端怎么知道 把验证信息往哪个节点放呢。。 ...
AXIS访问xfire服务端,身份验证的问题!!! 在CSDN挂了2天没人回答!!
文章列表
public static void main( String[] args )
{
ApplicationContext context = new ClassPathXmlApplicationContext("beans.xml");
}
这是一段最简单的Spring加载bean配置的代码,spring加载bean的大致流程如下
loadBeanDefinitions方法主要作用
1)读取配置文件
2)防止配置文件import自己导致死循环加载
public int loadBeanDe ...
private final ThreadLocal<Set<EncodedResource>> resourcesCurrentlyBeingLoaded = new NamedThreadLocal<>("XML bean definition resources currently being loaded");
昨天看Spring加载配置文件源码时,对于XmlBeanDefinitionReader中resourcesCurrentlyBeingLoade ...
集合之HashMap
- 博客分类:
- Jdk源码阅读
/**
* 默认初始容量,默认为2的4次方 = 16,2的n次方是为了加快hash计算速度,;;减少hash冲突,,,h & (length-1),,1111111
*/
static final int DEFAULT_INITIAL_CAPACITY = 1 << 4; // aka 16
/**
* 最大容量,默认为2的30次方,
*/
static final int MAXIMUM_CAPACITY = 1 << 30;
/**
* 负载因子(l ...
public class ArrayList<E> extends AbstractList<E>
implements List<E>, RandomAccess, Cloneable, java.io.Serializable
{
private static final long serialVersionUID = 8683452581122892189L;
/**
* 默认容量为10
*/
private static final int DEFAULT_CAPACIT ...
转载自:李会军•宁静致远
最近由于工作关系要做一些Java方面的开发,其中最重要的一块就是Java NIO(New I/O),尽管很早以前了解过一些,但并没有认真去看过它的实现原理,也没有机会在工作中使用,这次也好重新研究一下,顺便写点东西,就当是自己学习 Java NIO的笔记了。本文为NIO使用及原理分析的第一篇,将会介绍NIO中几个重要的概念。
在Java1.4之前的I/O系统中,提供的都是面向流的I/O系统,系统一次一个字节地处理数据,一个输入流产生一个字节的数据,一个输出流消费一个字节的数据,面向流的I/O速度非常慢,而在Java 1.4中推出了NIO,这是一个面向块的I/ ...
Client的主要包含下面几个内部类:
主要的几个类说明:
1. Call,表示一次rpc的调用请求
2. Connection,表示一个client与server之间的连接,一个连接一个线程启动
3. ConnectionId:连接的标记(包括server地址,协议,其他一些连接的配置项信息)
Connection类:
主要属性说明:
private InetSocketAddress server; //IPC服务器地址
private final ConnectionId remoteId;//连接标识
private Socke ...
RMI与IPC的简单实现
- 博客分类:
- Hadoop
RMI的实现
1.编写一个远程接口
/**
* 远程接口
*/
public interface TestInterfactRemote extends Remote{
public String add(String a,String b) throws RemoteException;
public String add() throws RemoteException;
}
2.编写接口的实现类
public class TestInte ...
join是线程的一个方法,在API中,它的英文解释是Waits for this thread to die.等待此线程死亡。谁等待此线程死亡呢?不难看出,这过程中至少存在两个线程,一个调用线程的线程,一个被调用的线程。我们通过一个简单的示例来理解这句话。
package com.doufu.thread.t01;
class ThreadA extends Thread{
private String name;
public ThreadA(String name){
this.name = name;
}
@Override ...
WritableFactories是个工厂类,通过它可以创建实例对象。原文中对此对象的注释是Factories for non-public writables,我的理解是处理那些不确定类型的对象进行实例化。例如在ObjectWritable的readObject方法中就调用了WritableFactories
public static Object readObject(DataInput in, ObjectWritable objectWritable, Configuration conf)
throws IOException {
.... ...
和ObjectWritable一样,GenericWritable也是一个包装类。一个应用场景就是Reduce段的输入值,如果是key type一样,value type不同的,就可以用GenericWritable来代替。GenericWritable和ObjectWritable区别主要在于:ObjectWritable序列化的时候,会将类类型名称也一起序列化,会造成浪费,特别是大量的网络传输。GenericWritable就是为了解决这样的问题,对于少量类型数量,且事先知道类型,可以用GenericWritable来提供效率
GenericWritable是 ...
ObjectWritable是一个封装类,适用于字段需要使用多种类型。
ObjectWritable有三个主要的成员变量,被封装的对象实例instance、该对象运行时类的Class 对象和Configuration 对象
private Class declaredClass;
private Object instance;
private Configuration conf;
ObjectWritable中有个内部类NullInstance,从类名就可以看出,这是用来处理instance为空的。NullInstan ...
最近在看Java特种兵,看到多线程部分,对wait和notify不是很理解,于是写了代码来帮助理解。特此记录下来,以供回顾。 wait方法通过参数可以指定等待的时长。如果没有指定参数,默认一直等待直到被通知。notify方法是通知某个正在等待这个对象的控制权的线程可以继续运行。
调用wait方法时候,必须加上synchronized同步块,不然会抛出java.lang.IllegalMonitorStateException异常
public class WaitAndNotify {
private final static Object object ...
Nutch任务通常从InjectorJob开始,它的作用是从种子文件中取出所有种子存入库中,供之后的任务使用。
InjectorJob类中最重要是UrlMapper,这个类实际处理类
public static class UrlMapper extends
Mapper<LongWritable, Text, String, WebPage> {
private URLNormalizers urlNormalizers;
private int interval;//重新抓取同一个页面的时间间隔(默认为30天)
private ...
Nutch2+Mysql的数据库异常
- 博客分类:
- Nutch
最近使用Nutch2.2.1+MySql进行爬虫研究,发现经常会遇到建表失败,乱码异常种类的问题。经过这些天的研究,特别解决方法记录一下。
首先,Mysql的安装,数据库的编码必须是utf8格式(GBK也可以)。需要修改my.ini文件
[client]
port = 3306
default-character-set = utf8
[mysql]
default-character-set = utf8
[mysqld]
port = 3306
character-set-client-handshake = FALSE
character ...
今天使用Nutch1.7抓取中文网站的时候,发现抓取后的数据是乱码,网上找了很多资料都没有解决。于是查看源代码发现,Nutch解析文件使用的是HtmlParser类,此类中有获取网页编码的代码:
// NUTCH-1006 Meta equiv with single quotes not accepted
private static Pattern metaPattern =
Pattern.compile("<meta\\s+([^>]*http-equiv=(\"|')?content-type(\"|')?[ ...