protected PatriciaTree<V> getNode(Object key) {
		if (key == null) {
			return null;
		}
		String strKey = key.toString();
		if (StringUtils.equals(strKey, prefix)) {
			return this;
		}
		String subKey = this.getSubKey(strKey);
		if (StringUtils.isEmpty(subKey)) {
			return null;
		}
		for (PatriciaTree<V> target : this.children) {
			if (target.isResponsible(subKey)) {
				return target.getNode(subKey);
			}
		}
		return null;
	}