diff --git a/pom.xml b/pom.xml
index 233bde9..9e9c6c1 100644
--- a/pom.xml
+++ b/pom.xml
@@ -28,7 +28,7 @@
 	<dependencies>
 		<dependency>
 			<groupId>org.springframework.boot</groupId>
-			<artifactId>spring-boot-starter-web</artifactId>
+			<artifactId>spring-boot-starter</artifactId>
 		</dependency>
 
 		<dependency>
diff --git a/src/main/java/com/alibaba/dubbo/test/DubboFeatureTestApplication.java b/src/main/java/com/alibaba/dubbo/test/DubboFeatureTestApplication.java
index 0f26ebb..d63335c 100644
--- a/src/main/java/com/alibaba/dubbo/test/DubboFeatureTestApplication.java
+++ b/src/main/java/com/alibaba/dubbo/test/DubboFeatureTestApplication.java
@@ -3,10 +3,12 @@
 import org.springframework.boot.SpringApplication;
 import org.springframework.boot.autoconfigure.SpringBootApplication;
 
+
 @SpringBootApplication
 public class DubboFeatureTestApplication {
 
-	public static void main(String[] args) {
+	public static void main(String[] args) throws InterruptedException {
 		SpringApplication.run(DubboFeatureTestApplication.class, args);
+		Thread.sleep(100000000);
 	}
 }
diff --git a/src/main/java/com/alibaba/dubbo/test/service/impl/CatServiceImpl.java b/src/main/java/com/alibaba/dubbo/test/service/impl/CatServiceImpl.java
index e685783..de2ba8b 100644
--- a/src/main/java/com/alibaba/dubbo/test/service/impl/CatServiceImpl.java
+++ b/src/main/java/com/alibaba/dubbo/test/service/impl/CatServiceImpl.java
@@ -3,6 +3,7 @@
 import com.alibaba.dubbo.test.service.CatService;
 import com.alibaba.dubbo.test.service.MouseService;
 
+import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 
 /**
@@ -11,6 +12,7 @@
 @Service("catService")
 public class CatServiceImpl implements CatService {
 
+    @Autowired
     private MouseService mouseService;
 
     @Override
diff --git a/src/main/java/com/alibaba/dubbo/test/service/impl/DogServiceImpl.java b/src/main/java/com/alibaba/dubbo/test/service/impl/DogServiceImpl.java
index 7a56d31..a6c3baa 100644
--- a/src/main/java/com/alibaba/dubbo/test/service/impl/DogServiceImpl.java
+++ b/src/main/java/com/alibaba/dubbo/test/service/impl/DogServiceImpl.java
@@ -4,6 +4,7 @@
 import com.alibaba.dubbo.test.service.DogService;
 import com.alibaba.dubbo.test.service.MouseService;
 
+import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 
 /**
@@ -11,8 +12,10 @@
  */
 @Service("dogService")
 public class DogServiceImpl implements DogService {
+    @Autowired
     private CatService catService;
 
+    @Autowired
     private MouseService mouseService;
 
     @Override
diff --git a/src/main/java/com/alibaba/dubbo/test/service/impl/LionServiceImpl.java b/src/main/java/com/alibaba/dubbo/test/service/impl/LionServiceImpl.java
index 75ff244..4cec2dd 100644
--- a/src/main/java/com/alibaba/dubbo/test/service/impl/LionServiceImpl.java
+++ b/src/main/java/com/alibaba/dubbo/test/service/impl/LionServiceImpl.java
@@ -5,6 +5,7 @@
 import com.alibaba.dubbo.test.service.LionService;
 import com.alibaba.dubbo.test.service.MouseService;
 
+import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 
 /**
@@ -12,10 +13,13 @@
  */
 @Service("lionService")
 public class LionServiceImpl implements LionService {
+    @Autowired
     private CatService catService;
 
+    @Autowired
     private MouseService mouseService;
 
+    @Autowired
     private DogService dogService;
 
     @Override
diff --git a/src/main/resources/dubbo-cat.xml b/src/main/resources/dubbo-cat.xml
index d618fc9..1d004d2 100644
--- a/src/main/resources/dubbo-cat.xml
+++ b/src/main/resources/dubbo-cat.xml
@@ -24,7 +24,8 @@
     <dubbo:application name="Cat"/>
 
     <!-- 使用multicast广播注册中心暴露服务地址 -->
-    <dubbo:registry address="zookeeper://11.160.112.23:2181?backup=11.239.190.141:2181,11.239.172.213:2181"/>
+    <dubbo:registry client="curator"
+                    address="zookeeper://11.160.112.23:2181?backup=11.239.190.141:2181,11.239.172.213:2181"/>
 
     <!-- 用dubbo协议在20880端口暴露服务 -->
     <dubbo:protocol name="dubbo" port="-1"/>
