commit c8f17460aa7d83f7ae2bf46f5eb215b602dd1a25
Author: life <1733802689@qq.com>
Date: Mon Oct 30 08:03:50 2023 +0800
Spring项目版
diff --git a/.idea/.gitignore b/.idea/.gitignore
new file mode 100644
index 0000000..73f69e0
--- /dev/null
+++ b/.idea/.gitignore
@@ -0,0 +1,8 @@
+# Default ignored files
+/shelf/
+/workspace.xml
+# Datasource local storage ignored files
+/dataSources/
+/dataSources.local.xml
+# Editor-based HTTP Client requests
+/httpRequests/
diff --git a/.idea/compiler.xml b/.idea/compiler.xml
new file mode 100644
index 0000000..47bbd1c
--- /dev/null
+++ b/.idea/compiler.xml
@@ -0,0 +1,13 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/.idea/inspectionProfiles/Project_Default.xml b/.idea/inspectionProfiles/Project_Default.xml
new file mode 100644
index 0000000..6560a98
--- /dev/null
+++ b/.idea/inspectionProfiles/Project_Default.xml
@@ -0,0 +1,36 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/.idea/jarRepositories.xml b/.idea/jarRepositories.xml
new file mode 100644
index 0000000..2a89eda
--- /dev/null
+++ b/.idea/jarRepositories.xml
@@ -0,0 +1,20 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/.idea/misc.xml b/.idea/misc.xml
new file mode 100644
index 0000000..9e90418
--- /dev/null
+++ b/.idea/misc.xml
@@ -0,0 +1,17 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/.idea/vcs.xml b/.idea/vcs.xml
new file mode 100644
index 0000000..94a25f7
--- /dev/null
+++ b/.idea/vcs.xml
@@ -0,0 +1,6 @@
+
+
+
+
+
+
\ No newline at end of file
diff --git a/maven-jedis.iml b/maven-jedis.iml
new file mode 100644
index 0000000..78b2cc5
--- /dev/null
+++ b/maven-jedis.iml
@@ -0,0 +1,2 @@
+
+
\ No newline at end of file
diff --git a/pom.xml b/pom.xml
new file mode 100644
index 0000000..1f4a645
--- /dev/null
+++ b/pom.xml
@@ -0,0 +1,47 @@
+
+
+
+ 4.0.0
+
+ com.jedis.query
+ maven-jedis
+ 1.0-SNAPSHOT
+ jar
+
+ maven-jedis Maven Webapp
+
+ http://www.example.com
+
+
+ 17
+ 17
+ UTF-8
+
+
+
+
+
+
+ org.springframework
+ spring-context
+ 6.0.12
+
+
+ junit
+ junit
+ 4.13.2
+ test
+
+
+ javax.servlet
+ servlet-api
+ 2.5
+
+
+ org.apache.tomcat.embed
+ tomcat-embed-core
+ 9.0.79
+
+
+
diff --git a/src/main/java/example/controller/SpringMvcController.java b/src/main/java/example/controller/SpringMvcController.java
new file mode 100644
index 0000000..18e06a1
--- /dev/null
+++ b/src/main/java/example/controller/SpringMvcController.java
@@ -0,0 +1,34 @@
+package example.controller;
+
+
+
+import example.enjoy.EnjoyAutowired;
+import example.enjoy.EnjoyController;
+import example.enjoy.EnjoyRequestMapping;
+import example.enjoy.EnjoyRequestParam;
+import example.service.SpringMvcService;
+
+import javax.servlet.http.HttpServletRequest;
+import javax.servlet.http.HttpServletResponse;
+import java.io.IOException;
+import java.io.PrintWriter;
+
+@EnjoyController
+@EnjoyRequestMapping("/SpringMvc")
+public class SpringMvcController {
+
+ @EnjoyAutowired("SpringMvcServiceImpl") //map.get(key)
+ private SpringMvcService service;
+
+ @EnjoyRequestMapping("/query")
+ public void query(HttpServletRequest request, HttpServletResponse response,
+ @EnjoyRequestParam("name") String name, @EnjoyRequestParam("age") String age){
+ try {
+ PrintWriter pw=response.getWriter();
+ String result = service.query(name, age);
+ pw.write(result);
+ } catch (IOException e) {
+ throw new RuntimeException(e);
+ }
+ }
+}
diff --git a/src/main/java/example/enjoy/EnjoyAutowired.java b/src/main/java/example/enjoy/EnjoyAutowired.java
new file mode 100644
index 0000000..3820fa5
--- /dev/null
+++ b/src/main/java/example/enjoy/EnjoyAutowired.java
@@ -0,0 +1,11 @@
+package example.enjoy;
+
+import javax.swing.*;
+import java.lang.annotation.*;
+
+@Target({ElementType.FIELD})
+@Retention(RetentionPolicy.RUNTIME)
+@Documented //javadoc
+public @interface EnjoyAutowired {
+ String value() default "";
+}
diff --git a/src/main/java/example/enjoy/EnjoyController.java b/src/main/java/example/enjoy/EnjoyController.java
new file mode 100644
index 0000000..49778fb
--- /dev/null
+++ b/src/main/java/example/enjoy/EnjoyController.java
@@ -0,0 +1,10 @@
+package example.enjoy;
+
+import java.lang.annotation.*;
+
+@Target({ElementType.TYPE})
+@Retention(RetentionPolicy.RUNTIME)
+@Documented //javadoc
+public @interface EnjoyController {
+ String value() default "";
+}
diff --git a/src/main/java/example/enjoy/EnjoyRequestMapping.java b/src/main/java/example/enjoy/EnjoyRequestMapping.java
new file mode 100644
index 0000000..df93edd
--- /dev/null
+++ b/src/main/java/example/enjoy/EnjoyRequestMapping.java
@@ -0,0 +1,10 @@
+package example.enjoy;
+
+import java.lang.annotation.*;
+
+@Target({ElementType.TYPE, ElementType.METHOD})
+@Retention(RetentionPolicy.RUNTIME)
+@Documented //javadoc
+public @interface EnjoyRequestMapping {
+ String value() default "";
+}
diff --git a/src/main/java/example/enjoy/EnjoyRequestParam.java b/src/main/java/example/enjoy/EnjoyRequestParam.java
new file mode 100644
index 0000000..894db8f
--- /dev/null
+++ b/src/main/java/example/enjoy/EnjoyRequestParam.java
@@ -0,0 +1,10 @@
+package example.enjoy;
+
+import java.lang.annotation.*;
+
+@Target({ElementType.PARAMETER})
+@Retention(RetentionPolicy.RUNTIME)
+@Documented //javadoc
+public @interface EnjoyRequestParam {
+ String value() default "";
+}
diff --git a/src/main/java/example/enjoy/EnjoyService.java b/src/main/java/example/enjoy/EnjoyService.java
new file mode 100644
index 0000000..a5e09e0
--- /dev/null
+++ b/src/main/java/example/enjoy/EnjoyService.java
@@ -0,0 +1,10 @@
+package example.enjoy;
+
+import java.lang.annotation.*;
+
+@Target({ElementType.TYPE})
+@Retention(RetentionPolicy.RUNTIME)
+@Documented //javadoc
+public @interface EnjoyService {
+ String value() default "";
+}
diff --git a/src/main/java/example/service/Impl/SpringMvcServiceImpl.java b/src/main/java/example/service/Impl/SpringMvcServiceImpl.java
new file mode 100644
index 0000000..8efdc81
--- /dev/null
+++ b/src/main/java/example/service/Impl/SpringMvcServiceImpl.java
@@ -0,0 +1,11 @@
+package example.service.Impl;
+
+
+import example.service.SpringMvcService;
+
+public class SpringMvcServiceImpl implements SpringMvcService {
+ @Override
+ public String query(String name, String age) {
+ return "name==="+name+";age==="+age;
+ }
+}
diff --git a/src/main/java/example/service/SpringMvcService.java b/src/main/java/example/service/SpringMvcService.java
new file mode 100644
index 0000000..d8d69d1
--- /dev/null
+++ b/src/main/java/example/service/SpringMvcService.java
@@ -0,0 +1,5 @@
+package example.service;
+
+public interface SpringMvcService {
+ String query(String name,String age);
+}
diff --git a/src/main/java/example/servlet/DispatcherServlet.java b/src/main/java/example/servlet/DispatcherServlet.java
new file mode 100644
index 0000000..db3f12f
--- /dev/null
+++ b/src/main/java/example/servlet/DispatcherServlet.java
@@ -0,0 +1,218 @@
+package example.servlet;
+
+
+import example.controller.SpringMvcController;
+import example.enjoy.*;
+
+import javax.servlet.*;
+import javax.servlet.http.HttpServlet;
+import javax.servlet.http.HttpServletRequest;
+import javax.servlet.http.HttpServletResponse;
+import java.io.File;
+import java.io.IOException;
+import java.lang.annotation.Annotation;
+import java.lang.reflect.Field;
+import java.lang.reflect.InvocationTargetException;
+import java.lang.reflect.Method;
+import java.net.URL;
+import java.util.*;
+
+public class DispatcherServlet extends HttpServlet {
+
+ List classNames=new ArrayList();
+
+ Map beans=new HashMap();
+
+ Map hanlderMap=new HashMap();
+
+ /**
+ *
+ */
+ private static final long serialVersionUID=1L;
+
+ public void init(ServletConfig config){
+ //扫描出所有的bean
+ scanPackage("org.example");
+
+ doInstance();//根据全类名创建bean
+
+ doIOC();//根据bean进行依赖注入
+
+ }
+
+ private void scanPackage(String basePackage){
+ URL url=this.getClass().getClassLoader().getResource("/"+basePackage.replaceAll("\\.","/"));
+ String fileSet=url.getFile();
+ File file = new File(fileSet);
+ String[] filesStr = file.list();
+ for (String path : filesStr) {
+ File filePath = new File(filesStr + path);
+ if (filePath.isDirectory()){
+ scanPackage(basePackage+"."+path);
+ }else {
+ //加入list
+ classNames.add(basePackage+"."+filePath.getName());//全类名
+ }
+ }
+ }
+
+
+ //根据扫描 List全类名,进行实例化
+ private void doInstance(){
+ if (classNames.size() <=0){
+ System.out.println("包扫描失败");
+ return;
+ }
+ //list的class类 对这些类进行
+
+ for (String className : classNames) {
+ String cn = className.replace(".class","");
+ try {
+ Class> clazz = Class.forName(cn);
+ if (clazz.isAnnotationPresent(EnjoyController.class)){
+ Object instance = clazz.newInstance();//创建控制类
+ EnjoyRequestMapping requestMapping = clazz.getAnnotation(EnjoyRequestMapping.class);
+ String rmvalue=requestMapping.value();
+ beans.put(rmvalue,instance);
+ }else if (clazz.isAnnotationPresent(EnjoyService.class)){
+ EnjoyService service=clazz.getAnnotation(EnjoyService.class);
+ Object instance=clazz.newInstance();
+ beans.put(service.value(),instance);
+ }
+
+ } catch (ClassNotFoundException e) {
+ throw new RuntimeException(e);
+ } catch (InstantiationException e) {
+ throw new RuntimeException(e);
+ } catch (IllegalAccessException e) {
+ throw new RuntimeException(e);
+ }
+ }
+ }
+
+ /**
+ * 把service注入controller
+ */
+ public void doIOC() {
+ if (beans.entrySet().size() <= 0) {
+ System.out.println("没有实例化的类");
+ }
+ //把map里的所有类实例化遍历出来
+ for (Map.Entry entry : beans.entrySet()) {
+ Object instance = entry.getValue();
+ Class> Class = instance.getClass();
+ if (Class.isAnnotationPresent(EnjoyController.class)) {
+ Field[] fields = Class.getDeclaredFields();
+ for (Field field : fields) {
+ if (field.isAnnotationPresent(EnjoyAutowired.class)) {
+ EnjoyAutowired auto = field.getAnnotation(EnjoyAutowired.class);
+ String key = auto.value();
+ field.setAccessible(true);
+ try {
+ field.set(instance, beans.get(key));
+ } catch (IllegalAccessException e) {
+ e.printStackTrace();
+ }
+ } else {
+ continue;
+ }
+ }
+ }else {
+ continue;
+ }
+ }
+ }
+
+
+ private void buildUrlMapping(){
+ if (beans.entrySet().size() <=0){
+ System.out.println("没有类的实例化-----");
+ return;
+ }
+ for (Map.Entry entry : beans.entrySet()) {
+ Object instance = entry.getValue();
+ Class> clazz = instance.getClass();
+ if (clazz.isAnnotationPresent(EnjoyController.class)){
+ EnjoyRequestMapping requestMapping = clazz.getAnnotation(EnjoyRequestMapping.class);
+ String classPath = requestMapping.value();
+ Method[] methods=clazz.getMethods();
+ for (Method method : methods) {
+ if (method.isAnnotationPresent(EnjoyRequestMapping.class)){
+ EnjoyRequestMapping methodMapping=method.getAnnotation(EnjoyRequestMapping.class);
+ String methodPath = methodMapping.value();
+ hanlderMap.put(classPath+methodPath,method);
+ }else {
+ continue;
+ }
+ }
+ }else {
+ continue;
+ }
+ }
+ }
+
+
+ /**
+ * 互相调用
+ * @param req
+ * @param resp
+ * @throws ServletException
+ * @throws IOException
+ */
+ @Override
+ protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
+ super.doGet(req, resp);
+ }
+
+ @Override
+ protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
+ super.doPost(req, resp);
+ String uri = req.getRequestURI();
+ String context = req.getContextPath();
+ String path = uri.replace(context, "");
+
+ Method method = (Method) hanlderMap.get(path);
+
+ SpringMvcController istance=(SpringMvcController) beans.get("/"+path.split("/")[1]);
+
+ Object[] args = hand(req, resp, method);
+ try {
+ method.invoke(istance, args);
+ } catch (IllegalAccessException e) {
+ e.printStackTrace();
+ } catch (InvocationTargetException e) {
+ e.printStackTrace();
+ }
+ }
+
+ private static Object[] hand(HttpServletRequest request, HttpServletResponse response, Method method) {
+ //拿到待执行的方法有哪些参数
+ Class>[] paramClazzs = method.getParameterTypes();
+
+ //根据参数的个数,new 一个参数的数组,将方法的所有参数赋值到args
+ Object[] args = new Object[paramClazzs.length];
+
+ int args_i = 0;
+ int index = 0;
+ for (Class> paramClazz : paramClazzs) {
+ if (ServletRequest.class.isAssignableFrom(paramClazz)) {
+ args[args_i++] = request;
+ }
+ if (ServletResponse.class.isAssignableFrom(paramClazz)) {
+ args[args_i++] = response;
+ }
+ Annotation[] paramAns = method.getParameterAnnotations()[index];
+ if (paramAns.length > 0) {
+ for (Annotation paramAn : paramAns) {
+ if (EnjoyRequestParam.class.isAssignableFrom(paramAn.getClass())) {
+ EnjoyRequestParam rp = (EnjoyRequestParam) paramAn;
+
+ args[args_i++] = request.getParameter(rp.value());
+ }
+ }
+ }
+ index++;
+ }
+ return args;
+ }
+}
diff --git a/src/main/webapp/WEB-INF/web.xml b/src/main/webapp/WEB-INF/web.xml
new file mode 100644
index 0000000..171e09d
--- /dev/null
+++ b/src/main/webapp/WEB-INF/web.xml
@@ -0,0 +1,19 @@
+
+
+
+ Archetype Created Web Application
+
+
+
+
+ DispatcherServlet
+ example.servlet.DispatcherServlet
+
+
+
+ DispatcherServlet
+ /
+
+
diff --git a/src/main/webapp/index.jsp b/src/main/webapp/index.jsp
new file mode 100644
index 0000000..c38169b
--- /dev/null
+++ b/src/main/webapp/index.jsp
@@ -0,0 +1,5 @@
+
+
+Hello World!
+
+
diff --git a/target/classes/example/controller/SpringMvcController.class b/target/classes/example/controller/SpringMvcController.class
new file mode 100644
index 0000000..278e111
Binary files /dev/null and b/target/classes/example/controller/SpringMvcController.class differ
diff --git a/target/classes/example/enjoy/EnjoyAutowired.class b/target/classes/example/enjoy/EnjoyAutowired.class
new file mode 100644
index 0000000..18721e6
Binary files /dev/null and b/target/classes/example/enjoy/EnjoyAutowired.class differ
diff --git a/target/classes/example/enjoy/EnjoyController.class b/target/classes/example/enjoy/EnjoyController.class
new file mode 100644
index 0000000..8574ec4
Binary files /dev/null and b/target/classes/example/enjoy/EnjoyController.class differ
diff --git a/target/classes/example/enjoy/EnjoyRequestMapping.class b/target/classes/example/enjoy/EnjoyRequestMapping.class
new file mode 100644
index 0000000..844d7fc
Binary files /dev/null and b/target/classes/example/enjoy/EnjoyRequestMapping.class differ
diff --git a/target/classes/example/enjoy/EnjoyRequestParam.class b/target/classes/example/enjoy/EnjoyRequestParam.class
new file mode 100644
index 0000000..6114343
Binary files /dev/null and b/target/classes/example/enjoy/EnjoyRequestParam.class differ
diff --git a/target/classes/example/enjoy/EnjoyService.class b/target/classes/example/enjoy/EnjoyService.class
new file mode 100644
index 0000000..12c104d
Binary files /dev/null and b/target/classes/example/enjoy/EnjoyService.class differ
diff --git a/target/classes/example/service/Impl/SpringMvcServiceImpl.class b/target/classes/example/service/Impl/SpringMvcServiceImpl.class
new file mode 100644
index 0000000..37f3586
Binary files /dev/null and b/target/classes/example/service/Impl/SpringMvcServiceImpl.class differ
diff --git a/target/classes/example/service/SpringMvcService.class b/target/classes/example/service/SpringMvcService.class
new file mode 100644
index 0000000..6420de1
Binary files /dev/null and b/target/classes/example/service/SpringMvcService.class differ
diff --git a/target/classes/example/servlet/DispatcherServlet.class b/target/classes/example/servlet/DispatcherServlet.class
new file mode 100644
index 0000000..0c88f88
Binary files /dev/null and b/target/classes/example/servlet/DispatcherServlet.class differ
diff --git a/target/maven-archiver/pom.properties b/target/maven-archiver/pom.properties
new file mode 100644
index 0000000..e9a7454
--- /dev/null
+++ b/target/maven-archiver/pom.properties
@@ -0,0 +1,3 @@
+artifactId=maven-jedis
+groupId=com.jedis.query
+version=1.0-SNAPSHOT
diff --git a/target/maven-jedis-1.0-SNAPSHOT.jar b/target/maven-jedis-1.0-SNAPSHOT.jar
new file mode 100644
index 0000000..9e31616
Binary files /dev/null and b/target/maven-jedis-1.0-SNAPSHOT.jar differ
diff --git a/target/maven-jedis-1.0-SNAPSHOT.war b/target/maven-jedis-1.0-SNAPSHOT.war
new file mode 100644
index 0000000..00ecf5d
Binary files /dev/null and b/target/maven-jedis-1.0-SNAPSHOT.war differ
diff --git a/target/maven-jedis-1.0-SNAPSHOT/WEB-INF/classes/example/controller/SpringMvcController.class b/target/maven-jedis-1.0-SNAPSHOT/WEB-INF/classes/example/controller/SpringMvcController.class
new file mode 100644
index 0000000..278e111
Binary files /dev/null and b/target/maven-jedis-1.0-SNAPSHOT/WEB-INF/classes/example/controller/SpringMvcController.class differ
diff --git a/target/maven-jedis-1.0-SNAPSHOT/WEB-INF/classes/example/enjoy/EnjoyAutowired.class b/target/maven-jedis-1.0-SNAPSHOT/WEB-INF/classes/example/enjoy/EnjoyAutowired.class
new file mode 100644
index 0000000..18721e6
Binary files /dev/null and b/target/maven-jedis-1.0-SNAPSHOT/WEB-INF/classes/example/enjoy/EnjoyAutowired.class differ
diff --git a/target/maven-jedis-1.0-SNAPSHOT/WEB-INF/classes/example/enjoy/EnjoyController.class b/target/maven-jedis-1.0-SNAPSHOT/WEB-INF/classes/example/enjoy/EnjoyController.class
new file mode 100644
index 0000000..8574ec4
Binary files /dev/null and b/target/maven-jedis-1.0-SNAPSHOT/WEB-INF/classes/example/enjoy/EnjoyController.class differ
diff --git a/target/maven-jedis-1.0-SNAPSHOT/WEB-INF/classes/example/enjoy/EnjoyRequestMapping.class b/target/maven-jedis-1.0-SNAPSHOT/WEB-INF/classes/example/enjoy/EnjoyRequestMapping.class
new file mode 100644
index 0000000..844d7fc
Binary files /dev/null and b/target/maven-jedis-1.0-SNAPSHOT/WEB-INF/classes/example/enjoy/EnjoyRequestMapping.class differ
diff --git a/target/maven-jedis-1.0-SNAPSHOT/WEB-INF/classes/example/enjoy/EnjoyRequestParam.class b/target/maven-jedis-1.0-SNAPSHOT/WEB-INF/classes/example/enjoy/EnjoyRequestParam.class
new file mode 100644
index 0000000..6114343
Binary files /dev/null and b/target/maven-jedis-1.0-SNAPSHOT/WEB-INF/classes/example/enjoy/EnjoyRequestParam.class differ
diff --git a/target/maven-jedis-1.0-SNAPSHOT/WEB-INF/classes/example/enjoy/EnjoyService.class b/target/maven-jedis-1.0-SNAPSHOT/WEB-INF/classes/example/enjoy/EnjoyService.class
new file mode 100644
index 0000000..12c104d
Binary files /dev/null and b/target/maven-jedis-1.0-SNAPSHOT/WEB-INF/classes/example/enjoy/EnjoyService.class differ
diff --git a/target/maven-jedis-1.0-SNAPSHOT/WEB-INF/classes/example/service/Impl/SpringMvcServiceImpl.class b/target/maven-jedis-1.0-SNAPSHOT/WEB-INF/classes/example/service/Impl/SpringMvcServiceImpl.class
new file mode 100644
index 0000000..37f3586
Binary files /dev/null and b/target/maven-jedis-1.0-SNAPSHOT/WEB-INF/classes/example/service/Impl/SpringMvcServiceImpl.class differ
diff --git a/target/maven-jedis-1.0-SNAPSHOT/WEB-INF/classes/example/service/SpringMvcService.class b/target/maven-jedis-1.0-SNAPSHOT/WEB-INF/classes/example/service/SpringMvcService.class
new file mode 100644
index 0000000..6420de1
Binary files /dev/null and b/target/maven-jedis-1.0-SNAPSHOT/WEB-INF/classes/example/service/SpringMvcService.class differ
diff --git a/target/maven-jedis-1.0-SNAPSHOT/WEB-INF/classes/example/servlet/DispatcherServlet.class b/target/maven-jedis-1.0-SNAPSHOT/WEB-INF/classes/example/servlet/DispatcherServlet.class
new file mode 100644
index 0000000..0c88f88
Binary files /dev/null and b/target/maven-jedis-1.0-SNAPSHOT/WEB-INF/classes/example/servlet/DispatcherServlet.class differ
diff --git a/target/maven-jedis-1.0-SNAPSHOT/WEB-INF/lib/servlet-api-2.5.jar b/target/maven-jedis-1.0-SNAPSHOT/WEB-INF/lib/servlet-api-2.5.jar
new file mode 100644
index 0000000..fb52493
Binary files /dev/null and b/target/maven-jedis-1.0-SNAPSHOT/WEB-INF/lib/servlet-api-2.5.jar differ
diff --git a/target/maven-jedis-1.0-SNAPSHOT/WEB-INF/lib/spring-aop-6.0.12.jar b/target/maven-jedis-1.0-SNAPSHOT/WEB-INF/lib/spring-aop-6.0.12.jar
new file mode 100644
index 0000000..b790454
Binary files /dev/null and b/target/maven-jedis-1.0-SNAPSHOT/WEB-INF/lib/spring-aop-6.0.12.jar differ
diff --git a/target/maven-jedis-1.0-SNAPSHOT/WEB-INF/lib/spring-beans-6.0.12.jar b/target/maven-jedis-1.0-SNAPSHOT/WEB-INF/lib/spring-beans-6.0.12.jar
new file mode 100644
index 0000000..88dc6b5
Binary files /dev/null and b/target/maven-jedis-1.0-SNAPSHOT/WEB-INF/lib/spring-beans-6.0.12.jar differ
diff --git a/target/maven-jedis-1.0-SNAPSHOT/WEB-INF/lib/spring-context-6.0.12.jar b/target/maven-jedis-1.0-SNAPSHOT/WEB-INF/lib/spring-context-6.0.12.jar
new file mode 100644
index 0000000..06480db
Binary files /dev/null and b/target/maven-jedis-1.0-SNAPSHOT/WEB-INF/lib/spring-context-6.0.12.jar differ
diff --git a/target/maven-jedis-1.0-SNAPSHOT/WEB-INF/lib/spring-core-6.0.12.jar b/target/maven-jedis-1.0-SNAPSHOT/WEB-INF/lib/spring-core-6.0.12.jar
new file mode 100644
index 0000000..0e36cdc
Binary files /dev/null and b/target/maven-jedis-1.0-SNAPSHOT/WEB-INF/lib/spring-core-6.0.12.jar differ
diff --git a/target/maven-jedis-1.0-SNAPSHOT/WEB-INF/lib/spring-expression-6.0.12.jar b/target/maven-jedis-1.0-SNAPSHOT/WEB-INF/lib/spring-expression-6.0.12.jar
new file mode 100644
index 0000000..6266249
Binary files /dev/null and b/target/maven-jedis-1.0-SNAPSHOT/WEB-INF/lib/spring-expression-6.0.12.jar differ
diff --git a/target/maven-jedis-1.0-SNAPSHOT/WEB-INF/lib/spring-jcl-6.0.12.jar b/target/maven-jedis-1.0-SNAPSHOT/WEB-INF/lib/spring-jcl-6.0.12.jar
new file mode 100644
index 0000000..c74f833
Binary files /dev/null and b/target/maven-jedis-1.0-SNAPSHOT/WEB-INF/lib/spring-jcl-6.0.12.jar differ
diff --git a/target/maven-jedis-1.0-SNAPSHOT/WEB-INF/lib/tomcat-annotations-api-9.0.79.jar b/target/maven-jedis-1.0-SNAPSHOT/WEB-INF/lib/tomcat-annotations-api-9.0.79.jar
new file mode 100644
index 0000000..db52f39
Binary files /dev/null and b/target/maven-jedis-1.0-SNAPSHOT/WEB-INF/lib/tomcat-annotations-api-9.0.79.jar differ
diff --git a/target/maven-jedis-1.0-SNAPSHOT/WEB-INF/lib/tomcat-embed-core-9.0.79.jar b/target/maven-jedis-1.0-SNAPSHOT/WEB-INF/lib/tomcat-embed-core-9.0.79.jar
new file mode 100644
index 0000000..a5d6457
Binary files /dev/null and b/target/maven-jedis-1.0-SNAPSHOT/WEB-INF/lib/tomcat-embed-core-9.0.79.jar differ
diff --git a/target/maven-jedis-1.0-SNAPSHOT/WEB-INF/web.xml b/target/maven-jedis-1.0-SNAPSHOT/WEB-INF/web.xml
new file mode 100644
index 0000000..171e09d
--- /dev/null
+++ b/target/maven-jedis-1.0-SNAPSHOT/WEB-INF/web.xml
@@ -0,0 +1,19 @@
+
+
+
+ Archetype Created Web Application
+
+
+
+
+ DispatcherServlet
+ example.servlet.DispatcherServlet
+
+
+
+ DispatcherServlet
+ /
+
+
diff --git a/target/maven-jedis-1.0-SNAPSHOT/index.jsp b/target/maven-jedis-1.0-SNAPSHOT/index.jsp
new file mode 100644
index 0000000..c38169b
--- /dev/null
+++ b/target/maven-jedis-1.0-SNAPSHOT/index.jsp
@@ -0,0 +1,5 @@
+
+
+Hello World!
+
+
diff --git a/target/maven-status/maven-compiler-plugin/compile/default-compile/createdFiles.lst b/target/maven-status/maven-compiler-plugin/compile/default-compile/createdFiles.lst
new file mode 100644
index 0000000..55665e9
--- /dev/null
+++ b/target/maven-status/maven-compiler-plugin/compile/default-compile/createdFiles.lst
@@ -0,0 +1,9 @@
+example\service\Impl\SpringMvcServiceImpl.class
+example\enjoy\EnjoyController.class
+example\servlet\DispatcherServlet.class
+example\enjoy\EnjoyService.class
+example\enjoy\EnjoyAutowired.class
+example\service\SpringMvcService.class
+example\controller\SpringMvcController.class
+example\enjoy\EnjoyRequestMapping.class
+example\enjoy\EnjoyRequestParam.class
diff --git a/target/maven-status/maven-compiler-plugin/compile/default-compile/inputFiles.lst b/target/maven-status/maven-compiler-plugin/compile/default-compile/inputFiles.lst
new file mode 100644
index 0000000..18ad82e
--- /dev/null
+++ b/target/maven-status/maven-compiler-plugin/compile/default-compile/inputFiles.lst
@@ -0,0 +1,9 @@
+C:\Users\李闯\AppData\Local\Temp\Temp0db3f973-e829-414b-9433-ceaf8f4759fe_Test1-master.zip\maven-jedis\src\main\java\example\controller\SpringMvcController.java
+C:\Users\李闯\AppData\Local\Temp\Temp0db3f973-e829-414b-9433-ceaf8f4759fe_Test1-master.zip\maven-jedis\src\main\java\example\enjoy\EnjoyController.java
+C:\Users\李闯\AppData\Local\Temp\Temp0db3f973-e829-414b-9433-ceaf8f4759fe_Test1-master.zip\maven-jedis\src\main\java\example\service\SpringMvcService.java
+C:\Users\李闯\AppData\Local\Temp\Temp0db3f973-e829-414b-9433-ceaf8f4759fe_Test1-master.zip\maven-jedis\src\main\java\example\service\Impl\SpringMvcServiceImpl.java
+C:\Users\李闯\AppData\Local\Temp\Temp0db3f973-e829-414b-9433-ceaf8f4759fe_Test1-master.zip\maven-jedis\src\main\java\example\enjoy\EnjoyRequestParam.java
+C:\Users\李闯\AppData\Local\Temp\Temp0db3f973-e829-414b-9433-ceaf8f4759fe_Test1-master.zip\maven-jedis\src\main\java\example\servlet\DispatcherServlet.java
+C:\Users\李闯\AppData\Local\Temp\Temp0db3f973-e829-414b-9433-ceaf8f4759fe_Test1-master.zip\maven-jedis\src\main\java\example\enjoy\EnjoyRequestMapping.java
+C:\Users\李闯\AppData\Local\Temp\Temp0db3f973-e829-414b-9433-ceaf8f4759fe_Test1-master.zip\maven-jedis\src\main\java\example\enjoy\EnjoyService.java
+C:\Users\李闯\AppData\Local\Temp\Temp0db3f973-e829-414b-9433-ceaf8f4759fe_Test1-master.zip\maven-jedis\src\main\java\example\enjoy\EnjoyAutowired.java