diff --git a/zheng-qa/pom.xml b/zheng-qa/pom.xml
index 188b7f60..762ec982 100644
--- a/zheng-qa/pom.xml
+++ b/zheng-qa/pom.xml
@@ -21,5 +21,6 @@
zheng-qa-dao
zheng-qa-service
+ zheng-qa-web
diff --git a/zheng-qa/zheng-qa-web/pom.xml b/zheng-qa/zheng-qa-web/pom.xml
new file mode 100644
index 00000000..7095bc76
--- /dev/null
+++ b/zheng-qa/zheng-qa-web/pom.xml
@@ -0,0 +1,108 @@
+
+ 4.0.0
+
+
+ com.zheng
+ zheng-qa
+ 1.0.0
+
+
+ zheng-qa-web
+ war
+
+ zheng-qa-web Maven Webapp
+ http://www.zhangshuzheng.cn
+
+
+
+ com.zheng
+ zheng-qa-service
+ 1.0.0
+ jar
+
+
+ junit
+ junit
+ 4.12
+ test
+
+
+ javax.servlet
+ servlet-api
+ 2.5
+ provided
+
+
+ javax.servlet
+ jstl
+ 1.2
+
+
+
+
+
+ dev
+
+ dev
+
+
+ true
+
+
+
+ test
+
+ test
+
+
+
+ prod
+
+ prod
+
+
+
+
+
+ zheng-qa-web
+
+ src/main/resources/profiles/${env}.properties
+
+
+
+ src/main/resources
+ true
+
+
+
+
+
+ org.eclipse.jetty
+ jetty-maven-plugin
+ 9.0.0.v20130308
+
+ 3
+
+ /zheng-qa-web
+
+
+ 8080
+
+ automatic
+
+
+
+ org.apache.maven.plugins
+ maven-surefire-plugin
+ 2.18.1
+
+
+ true
+
+ true
+
+
+
+
+
diff --git a/zheng-qa/zheng-qa-web/src/main/java/com/zheng/qa/web/controller/BaseController.java b/zheng-qa/zheng-qa-web/src/main/java/com/zheng/qa/web/controller/BaseController.java
new file mode 100644
index 00000000..45b14b10
--- /dev/null
+++ b/zheng-qa/zheng-qa-web/src/main/java/com/zheng/qa/web/controller/BaseController.java
@@ -0,0 +1,15 @@
+package com.zheng.qa.web.controller;
+
+/**
+ * 控制器基类
+ * @author shuzheng
+ * @date 2016年7月7日 上午10:08:47
+ */
+public class BaseController {
+
+ public static final String RESULT = "result";
+ public static final String DATA = "data";
+ public static final String SUCCESS = "success";
+ public static final String FAILED = "failed";
+
+}
\ No newline at end of file
diff --git a/zheng-qa/zheng-qa-web/src/main/resources/applicationContext-threadpool.xml b/zheng-qa/zheng-qa-web/src/main/resources/applicationContext-threadpool.xml
new file mode 100644
index 00000000..daed0d1d
--- /dev/null
+++ b/zheng-qa/zheng-qa-web/src/main/resources/applicationContext-threadpool.xml
@@ -0,0 +1,26 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/zheng-qa/zheng-qa-web/src/main/resources/config.properties b/zheng-qa/zheng-qa-web/src/main/resources/config.properties
new file mode 100644
index 00000000..ac1847b2
--- /dev/null
+++ b/zheng-qa/zheng-qa-web/src/main/resources/config.properties
@@ -0,0 +1 @@
+env=${profile.env}
\ No newline at end of file
diff --git a/zheng-qa/zheng-qa-web/src/main/resources/log4j.properties b/zheng-qa/zheng-qa-web/src/main/resources/log4j.properties
new file mode 100644
index 00000000..22b10ad4
--- /dev/null
+++ b/zheng-qa/zheng-qa-web/src/main/resources/log4j.properties
@@ -0,0 +1,23 @@
+#off/fatal/error/warn/info/debug/all
+log4j.debug=false
+log4j.rootLogger=info, stdout
+
+# Console output
+log4j.appender.stdout=org.apache.log4j.ConsoleAppender
+log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
+log4j.appender.stdout.layout.ConversionPattern=%d [%t] %-5p [%c] - %m%n
+
+#Spring logging configuration
+log4j.category.org.springframework = warn
+
+#Druid logging configuration
+log4j.logger.druid.sql=warn,stdout
+log4j.logger.druid.sql.DataSource=warn,stdout
+log4j.logger.druid.sql.Connection=warn,stdout
+log4j.logger.druid.sql.Statement=warn,stdout
+log4j.logger.druid.sql.ResultSet=warn,stdout
+
+# MyBatis logging configuration
+log4j.logger.com.zheng.qa.dao.mapper=debug
+#log4j.logger.com.zheng.qa.dao.mapper.UserMapper=debug
+#log4j.logger.com.zheng.qa.dao.mapper.UserMapper.selectUser=debug
\ No newline at end of file
diff --git a/zheng-qa/zheng-qa-web/src/main/resources/profiles/dev.properties b/zheng-qa/zheng-qa-web/src/main/resources/profiles/dev.properties
new file mode 100644
index 00000000..baede636
--- /dev/null
+++ b/zheng-qa/zheng-qa-web/src/main/resources/profiles/dev.properties
@@ -0,0 +1 @@
+profile.env=dev
\ No newline at end of file
diff --git a/zheng-qa/zheng-qa-web/src/main/resources/profiles/prod.properties b/zheng-qa/zheng-qa-web/src/main/resources/profiles/prod.properties
new file mode 100644
index 00000000..bb7a8fdf
--- /dev/null
+++ b/zheng-qa/zheng-qa-web/src/main/resources/profiles/prod.properties
@@ -0,0 +1 @@
+profile.env=prod
\ No newline at end of file
diff --git a/zheng-qa/zheng-qa-web/src/main/resources/profiles/test.properties b/zheng-qa/zheng-qa-web/src/main/resources/profiles/test.properties
new file mode 100644
index 00000000..4ff006f4
--- /dev/null
+++ b/zheng-qa/zheng-qa-web/src/main/resources/profiles/test.properties
@@ -0,0 +1 @@
+profile.env=test
\ No newline at end of file
diff --git a/zheng-qa/zheng-qa-web/src/main/resources/springMVC-servlet.xml b/zheng-qa/zheng-qa-web/src/main/resources/springMVC-servlet.xml
new file mode 100644
index 00000000..8a3c464d
--- /dev/null
+++ b/zheng-qa/zheng-qa-web/src/main/resources/springMVC-servlet.xml
@@ -0,0 +1,13 @@
+
+
+
+
+
+
\ No newline at end of file
diff --git a/zheng-qa/zheng-qa-web/src/main/webapp/WEB-INF/jsp/404.jsp b/zheng-qa/zheng-qa-web/src/main/webapp/WEB-INF/jsp/404.jsp
new file mode 100644
index 00000000..60ed2798
--- /dev/null
+++ b/zheng-qa/zheng-qa-web/src/main/webapp/WEB-INF/jsp/404.jsp
@@ -0,0 +1,17 @@
+<%@ page contentType="text/html; charset=utf-8"%>
+<%@ taglib uri="http://java.sun.com/jstl/core_rt" prefix="c"%>
+<%@ taglib uri="http://java.sun.com/jsp/jstl/fmt" prefix="fmt"%>
+<%@ taglib uri="http://java.sun.com/jsp/jstl/functions" prefix="fn"%>
+<%@ taglib uri="http://www.springframework.org/tags" prefix="spring"%>
+<%@ taglib uri="http://www.springframework.org/tags/form" prefix="form"%>
+
+
+
+
+
+
+
+
+404
+
+
\ No newline at end of file
diff --git a/zheng-qa/zheng-qa-web/src/main/webapp/WEB-INF/jsp/500.jsp b/zheng-qa/zheng-qa-web/src/main/webapp/WEB-INF/jsp/500.jsp
new file mode 100644
index 00000000..b83cdeeb
--- /dev/null
+++ b/zheng-qa/zheng-qa-web/src/main/webapp/WEB-INF/jsp/500.jsp
@@ -0,0 +1,43 @@
+<%@ page contentType="text/html; charset=utf-8"%>
+<%@ taglib uri="http://java.sun.com/jstl/core_rt" prefix="c"%>
+<%@ taglib uri="http://java.sun.com/jsp/jstl/fmt" prefix="fmt"%>
+<%@ taglib uri="http://java.sun.com/jsp/jstl/functions" prefix="fn"%>
+<%@ taglib uri="http://www.springframework.org/tags" prefix="spring"%>
+<%@ taglib uri="http://www.springframework.org/tags/form" prefix="form"%>
+
+
+
+
+
+500
+
+
+
+ 错误代码:500<%//=request.getAttribute("javax.servlet.error.status_code")%>
+ 您访问的页面有错误!
+ 错误原因:${error.message}
+ 错误内容:${error}
+ 跳转到首页!
+
+<%
+/**
+监控出错人的IP
+String ip = request.getHeader(" x-forwarded-for");
+if (ip == null || ip.length() == 0 || " unknown".equalsIgnoreCase(ip)) {
+ ip = request.getHeader(" Proxy-Client-IP"); // 获取代理ip
+}
+if (ip == null || ip.length() == 0 || " unknown".equalsIgnoreCase(ip)) {
+ ip = request.getHeader(" WL-Proxy-Client-IP"); // 获取代理ip
+}
+if (ip == null || ip.length() == 0 || " unknown".equalsIgnoreCase(ip)) {
+ ip = request.getRemoteAddr(); // 获取真实ip
+}
+//out.println(ip+"
你的地址是:
");
+
+Document doc = Jsoup.connect("http://ip.chinaz.com/?IP="+ip).timeout(9000).get();
+Element e = doc.select("#status").first();
+//out.println(e);
+*/
+%>
+
+
\ No newline at end of file
diff --git a/zheng-qa/zheng-qa-web/src/main/webapp/WEB-INF/jsp/index.jsp b/zheng-qa/zheng-qa-web/src/main/webapp/WEB-INF/jsp/index.jsp
new file mode 100644
index 00000000..c88cefdc
--- /dev/null
+++ b/zheng-qa/zheng-qa-web/src/main/webapp/WEB-INF/jsp/index.jsp
@@ -0,0 +1,17 @@
+<%@ page contentType="text/html; charset=utf-8"%>
+<%@ taglib uri="http://java.sun.com/jstl/core_rt" prefix="c"%>
+<%@ taglib uri="http://java.sun.com/jsp/jstl/fmt" prefix="fmt"%>
+<%@ taglib uri="http://java.sun.com/jsp/jstl/functions" prefix="fn"%>
+<%@ taglib uri="http://www.springframework.org/tags" prefix="spring"%>
+<%@ taglib uri="http://www.springframework.org/tags/form" prefix="form"%>
+
+
+
+
+
+ 首页
+
+
+
+
+
\ No newline at end of file
diff --git a/zheng-qa/zheng-qa-web/src/main/webapp/WEB-INF/web.xml b/zheng-qa/zheng-qa-web/src/main/webapp/WEB-INF/web.xml
new file mode 100644
index 00000000..35d5839f
--- /dev/null
+++ b/zheng-qa/zheng-qa-web/src/main/webapp/WEB-INF/web.xml
@@ -0,0 +1,97 @@
+
+
+
+
+
+ CharacterEncodingFilter
+ org.springframework.web.filter.CharacterEncodingFilter
+
+ encoding
+ UTF-8
+
+
+
+ CharacterEncodingFilter
+ /*
+ REQUEST
+ FORWARD
+
+
+
+
+ org.springframework.web.context.ContextLoaderListener
+
+
+ contextConfigLocation
+
+ classpath*:applicationContext*.xml
+
+
+
+
+
+ log4jConfigLocation
+ classpath:log4j.properties
+
+
+
+
+ springMVC
+ org.springframework.web.servlet.DispatcherServlet
+
+ contextConfigLocation
+ classpath*:springMVC-servlet.xml
+
+ 1
+
+
+ springMVC
+ /
+
+
+
+
+
+
+
+ DruidStatView
+ com.alibaba.druid.support.http.StatViewServlet
+
+
+ DruidStatView
+ /druid/*
+
+
+
+
+ 120
+
+
+
+
+ index.html
+ index.jsp
+
+
+
+
+ 404
+ /WEB-INF/jsp/404.jsp
+
+
+ 500
+ /WEB-INF/jsp/500.jsp
+
+
\ No newline at end of file