1. non-simplify mode:
```
dubbo://120.0.0.1:20880/org.apache.dubbo.demo.DemoService?key=value
```
the store path of ZK will be: `/dubbo/porg.apache.dubbo.demo.DemoService/url`

2. simplify mode:
```
dubbo://120.0.0.1:20880/org.apache.dubbo.demo.DemoService?key=value
```
the store path of ZK will be: `/dubbo/porg.apache.dubbo.demo.DemoService/url`

3. simplify mode with path specified:
```
dubbo://120.0.0.1:20880/path-value?key=value
```
the store path of ZK will be: `/dubbo/path-value/url`
public ServiceConfig(Service service) {
        appendAnnotation(Service.class, service);
        setMethods(MethodConfig.constructMethodConfig(service.methods()));
    }
    @Deprecated
    private static List<ProtocolConfig> convertProviderToProtocol(List<ProviderConfig> providers) {
        if (CollectionUtils.isEmpty(providers)) {
            return null;
        }
        List<ProtocolConfig> protocols = new ArrayList<ProtocolConfig>(providers.size());
        for (ProviderConfig provider : providers) {
            protocols.add(convertProviderToProtocol(provider));
        }
        return protocols;
    }
    @Deprecated
    private static List<ProviderConfig> convertProtocolToProvider(List<ProtocolConfig> protocols) {
        if (CollectionUtils.isEmpty(protocols)) {
            return null;
        }
        List<ProviderConfig> providers = new ArrayList<ProviderConfig>(protocols.size());
        for (ProtocolConfig provider : protocols) {
            providers.add(convertProtocolToProvider(provider));
        }
        return providers;
    }
    @Deprecated
    private static ProtocolConfig convertProviderToProtocol(ProviderConfig provider) {
        ProtocolConfig protocol = new ProtocolConfig();
        protocol.setName(provider.getProtocol().getName());