diff --git a/sop-example/sop-springmvc/pom.xml b/sop-example/sop-springmvc/pom.xml
index 363c5058..2e6a2013 100644
--- a/sop-example/sop-springmvc/pom.xml
+++ b/sop-example/sop-springmvc/pom.xml
@@ -91,6 +91,18 @@
 		    1.2.17
 		
 
+        
+        
+            io.springfox
+            springfox-swagger2
+            2.9.2
+        
+        
+            com.github.xiaoymin
+            swagger-bootstrap-ui
+            1.9.5
+        
+
 
         
         
diff --git a/sop-example/sop-springmvc/src/main/java/com/gitee/app/config/Swagger2.java b/sop-example/sop-springmvc/src/main/java/com/gitee/app/config/Swagger2.java
new file mode 100644
index 00000000..d09fd292
--- /dev/null
+++ b/sop-example/sop-springmvc/src/main/java/com/gitee/app/config/Swagger2.java
@@ -0,0 +1,21 @@
+package com.gitee.app.config;
+
+import com.gitee.sop.servercommon.swagger.SwaggerSupport;
+import springfox.documentation.swagger2.annotations.EnableSwagger2;
+
+/**
+ * 开启文档,本地微服务文档地址:http://localhost:2222/doc.html
+ * http://ip:port/v2/api-docs
+ */
+@EnableSwagger2
+public class Swagger2 extends SwaggerSupport {
+    @Override
+    protected String getDocTitle() {
+        return "MVC_API";
+    }
+
+    @Override
+    protected boolean swaggerAccessProtected() {
+        return false;
+    }
+}
\ No newline at end of file
diff --git a/sop-example/sop-springmvc/src/main/java/com/gitee/app/HomeController.java b/sop-example/sop-springmvc/src/main/java/com/gitee/app/controller/HomeController.java
similarity index 87%
rename from sop-example/sop-springmvc/src/main/java/com/gitee/app/HomeController.java
rename to sop-example/sop-springmvc/src/main/java/com/gitee/app/controller/HomeController.java
index 04a5d638..7028c51b 100644
--- a/sop-example/sop-springmvc/src/main/java/com/gitee/app/HomeController.java
+++ b/sop-example/sop-springmvc/src/main/java/com/gitee/app/controller/HomeController.java
@@ -1,7 +1,9 @@
-package com.gitee.app;
+package com.gitee.app.controller;
 
 import com.gitee.app.model.Goods;
 import com.gitee.sop.servercommon.annotation.ApiMapping;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 import org.springframework.stereotype.Controller;
@@ -18,6 +20,7 @@ import java.util.Locale;
 /**
  * Handles requests for the application home page.
  */
+@Api(tags = "MVC接口")
 @Controller
 public class HomeController {
 	
@@ -41,6 +44,7 @@ public class HomeController {
 	}
 
 
+	@ApiOperation(value="获取商品", notes = "获取商品说明")
 	@ApiMapping(value = "springmvc.goods.get")
 	@ResponseBody
 	public Goods getGoods(Goods param) {
diff --git a/sop-example/sop-springmvc/src/main/webapp/WEB-INF/spring/appServlet/servlet-context.xml b/sop-example/sop-springmvc/src/main/webapp/WEB-INF/spring/appServlet/servlet-context.xml
index 2956e9bb..e27b63be 100644
--- a/sop-example/sop-springmvc/src/main/webapp/WEB-INF/spring/appServlet/servlet-context.xml
+++ b/sop-example/sop-springmvc/src/main/webapp/WEB-INF/spring/appServlet/servlet-context.xml
@@ -34,6 +34,11 @@
 	
 
 	
+
+	
+	
+	
+	
 	
 
 
diff --git a/sop-example/sop-springmvc/src/main/webapp/WEB-INF/web.xml b/sop-example/sop-springmvc/src/main/webapp/WEB-INF/web.xml
index b7dfa271..630564eb 100644
--- a/sop-example/sop-springmvc/src/main/webapp/WEB-INF/web.xml
+++ b/sop-example/sop-springmvc/src/main/webapp/WEB-INF/web.xml
@@ -29,6 +29,29 @@
 		
 		1
 	
+
+	
+	
+		appServlet
+		/v2/api-docs
+	
+	
+		appServlet
+		/swagger-resources
+	
+	
+		appServlet
+		/swagger-resources/configuration/ui
+	
+	
+		appServlet
+		/swagger-resources/configuration/security
+	
+	
+	
+		appServlet
+		/v2/api-docs-ext
+	
 		
 	
 		appServlet
diff --git a/sop-website/src/main/java/com/gitee/sop/websiteserver/listener/ServiceDocListener.java b/sop-website/src/main/java/com/gitee/sop/websiteserver/listener/ServiceDocListener.java
index dd3eed10..9583c7c7 100644
--- a/sop-website/src/main/java/com/gitee/sop/websiteserver/listener/ServiceDocListener.java
+++ b/sop-website/src/main/java/com/gitee/sop/websiteserver/listener/ServiceDocListener.java
@@ -1,6 +1,7 @@
 package com.gitee.sop.websiteserver.listener;
 
 import com.gitee.sop.gatewaycommon.bean.InstanceDefinition;
+import com.gitee.sop.gatewaycommon.bean.SopConstants;
 import com.gitee.sop.gatewaycommon.route.BaseServiceListener;
 import com.gitee.sop.websiteserver.manager.DocManager;
 import lombok.extern.slf4j.Slf4j;
@@ -45,6 +46,7 @@ public class ServiceDocListener extends BaseServiceListener {
 
     private static String getRouteRequestUrl(InstanceDefinition instance) {
         String query = buildQuery(SECRET);
-        return "http://" + instance.getIp() + ":" + instance.getPort() + "/v2/api-docs" + query;
+        String contextPath = instance.getMetadata().getOrDefault(SopConstants.METADATA_SERVER_CONTEXT_PATH, "");
+        return "http://" + instance.getIp() + ":" + instance.getPort() + contextPath + "/v2/api-docs" + query;
     }
 }