From b56c0495d63f52e8ab7f98ae81ab75f8e9fe681f Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=E6=9D=8E=E6=98=8E=E5=81=A5?= <2161737470@qq.com>
Date: Mon, 8 Jan 2024 17:21:15 +0800
Subject: [PATCH 1/2] =?UTF-8?q?=E7=AC=AC=E5=8D=81=E4=B8=80=E6=AC=A1?=
=?UTF-8?q?=E4=BD=9C=E4=B8=9A?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../spring_MVC_02/pom.xml" | 90 +
.../spring_MVC_02/spring_MVC_02.iml" | 6 +
.../main/java/com/mdd/config/JdbcConfig.java" | 23 +
.../java/com/mdd/config/MybatisConfig.java" | 30 +
.../java/com/mdd/config/SpringConfig.java" | 11 +
.../java/com/mdd/config/SpringMvcConfig.java" | 11 +
.../java/com/mdd/config/WebInitConfig.java" | 37 +
.../com/mdd/controller/userController.java" | 73 +
.../src/main/java/com/mdd/domain/Result.java" | 69 +
.../src/main/java/com/mdd/domain/User.java" | 49 +
.../main/java/com/mdd/mapper/UserMapper.java" | 33 +
.../java/com/mdd/service/UserService.java" | 22 +
.../mdd/service/impl/UserServiceImpl.java" | 45 +
.../src/main/webapp/WEB-INF/web.xml" | 7 +
.../spring_MVC_02/src/main/webapp/index.jsp" | 5 +
.../classes/com/mdd/config/JdbcConfig.class" | Bin 0 -> 861 bytes
.../com/mdd/config/MybatisConfig.class" | Bin 0 -> 1200 bytes
.../com/mdd/config/SpringConfig.class" | Bin 0 -> 631 bytes
.../com/mdd/config/SpringMvcConfig.class" | Bin 0 -> 566 bytes
.../com/mdd/config/WebInitConfig.class" | Bin 0 -> 858 bytes
.../com/mdd/controller/userController.class" | Bin 0 -> 3143 bytes
.../classes/com/mdd/domain/Result.class" | Bin 0 -> 2103 bytes
.../target/classes/com/mdd/domain/User.class" | Bin 0 -> 1546 bytes
.../classes/com/mdd/mapper/UserMapper.class" | Bin 0 -> 1023 bytes
.../com/mdd/service/UserService.class" | Bin 0 -> 402 bytes
.../mdd/service/impl/UserServiceImpl.class" | Bin 0 -> 1728 bytes
.../compile/default-compile/createdFiles.lst" | 11 +
.../compile/default-compile/inputFiles.lst" | 10 +
.../target/tomcat/conf/logging.properties" | 64 +
.../target/tomcat/conf/tomcat-users.xml" | 26 +
.../spring_MVC_02/target/tomcat/conf/web.xml" | 4283 +++++++++++++++++
.../target/tomcat/logs/access_log.2024-01-02" | 37 +
.../target/tomcat/logs/access_log.2024-01-03" | 35 +
.../target/tomcat/logs/access_log.2024-01-04" | 17 +
.../target/tomcat/logs/access_log.2024-01-05" | 18 +
.../_/org/apache/jsp/index_jsp.class" | Bin 0 -> 3727 bytes
.../_/org/apache/jsp/index_jsp.java" | 79 +
37 files changed, 5091 insertions(+)
create mode 100644 "04 \346\235\216\346\230\216\345\201\245/20240104 SpringMVC\346\225\264\345\220\210Mybatis/spring_MVC_02/pom.xml"
create mode 100644 "04 \346\235\216\346\230\216\345\201\245/20240104 SpringMVC\346\225\264\345\220\210Mybatis/spring_MVC_02/spring_MVC_02.iml"
create mode 100644 "04 \346\235\216\346\230\216\345\201\245/20240104 SpringMVC\346\225\264\345\220\210Mybatis/spring_MVC_02/src/main/java/com/mdd/config/JdbcConfig.java"
create mode 100644 "04 \346\235\216\346\230\216\345\201\245/20240104 SpringMVC\346\225\264\345\220\210Mybatis/spring_MVC_02/src/main/java/com/mdd/config/MybatisConfig.java"
create mode 100644 "04 \346\235\216\346\230\216\345\201\245/20240104 SpringMVC\346\225\264\345\220\210Mybatis/spring_MVC_02/src/main/java/com/mdd/config/SpringConfig.java"
create mode 100644 "04 \346\235\216\346\230\216\345\201\245/20240104 SpringMVC\346\225\264\345\220\210Mybatis/spring_MVC_02/src/main/java/com/mdd/config/SpringMvcConfig.java"
create mode 100644 "04 \346\235\216\346\230\216\345\201\245/20240104 SpringMVC\346\225\264\345\220\210Mybatis/spring_MVC_02/src/main/java/com/mdd/config/WebInitConfig.java"
create mode 100644 "04 \346\235\216\346\230\216\345\201\245/20240104 SpringMVC\346\225\264\345\220\210Mybatis/spring_MVC_02/src/main/java/com/mdd/controller/userController.java"
create mode 100644 "04 \346\235\216\346\230\216\345\201\245/20240104 SpringMVC\346\225\264\345\220\210Mybatis/spring_MVC_02/src/main/java/com/mdd/domain/Result.java"
create mode 100644 "04 \346\235\216\346\230\216\345\201\245/20240104 SpringMVC\346\225\264\345\220\210Mybatis/spring_MVC_02/src/main/java/com/mdd/domain/User.java"
create mode 100644 "04 \346\235\216\346\230\216\345\201\245/20240104 SpringMVC\346\225\264\345\220\210Mybatis/spring_MVC_02/src/main/java/com/mdd/mapper/UserMapper.java"
create mode 100644 "04 \346\235\216\346\230\216\345\201\245/20240104 SpringMVC\346\225\264\345\220\210Mybatis/spring_MVC_02/src/main/java/com/mdd/service/UserService.java"
create mode 100644 "04 \346\235\216\346\230\216\345\201\245/20240104 SpringMVC\346\225\264\345\220\210Mybatis/spring_MVC_02/src/main/java/com/mdd/service/impl/UserServiceImpl.java"
create mode 100644 "04 \346\235\216\346\230\216\345\201\245/20240104 SpringMVC\346\225\264\345\220\210Mybatis/spring_MVC_02/src/main/webapp/WEB-INF/web.xml"
create mode 100644 "04 \346\235\216\346\230\216\345\201\245/20240104 SpringMVC\346\225\264\345\220\210Mybatis/spring_MVC_02/src/main/webapp/index.jsp"
create mode 100644 "04 \346\235\216\346\230\216\345\201\245/20240104 SpringMVC\346\225\264\345\220\210Mybatis/spring_MVC_02/target/classes/com/mdd/config/JdbcConfig.class"
create mode 100644 "04 \346\235\216\346\230\216\345\201\245/20240104 SpringMVC\346\225\264\345\220\210Mybatis/spring_MVC_02/target/classes/com/mdd/config/MybatisConfig.class"
create mode 100644 "04 \346\235\216\346\230\216\345\201\245/20240104 SpringMVC\346\225\264\345\220\210Mybatis/spring_MVC_02/target/classes/com/mdd/config/SpringConfig.class"
create mode 100644 "04 \346\235\216\346\230\216\345\201\245/20240104 SpringMVC\346\225\264\345\220\210Mybatis/spring_MVC_02/target/classes/com/mdd/config/SpringMvcConfig.class"
create mode 100644 "04 \346\235\216\346\230\216\345\201\245/20240104 SpringMVC\346\225\264\345\220\210Mybatis/spring_MVC_02/target/classes/com/mdd/config/WebInitConfig.class"
create mode 100644 "04 \346\235\216\346\230\216\345\201\245/20240104 SpringMVC\346\225\264\345\220\210Mybatis/spring_MVC_02/target/classes/com/mdd/controller/userController.class"
create mode 100644 "04 \346\235\216\346\230\216\345\201\245/20240104 SpringMVC\346\225\264\345\220\210Mybatis/spring_MVC_02/target/classes/com/mdd/domain/Result.class"
create mode 100644 "04 \346\235\216\346\230\216\345\201\245/20240104 SpringMVC\346\225\264\345\220\210Mybatis/spring_MVC_02/target/classes/com/mdd/domain/User.class"
create mode 100644 "04 \346\235\216\346\230\216\345\201\245/20240104 SpringMVC\346\225\264\345\220\210Mybatis/spring_MVC_02/target/classes/com/mdd/mapper/UserMapper.class"
create mode 100644 "04 \346\235\216\346\230\216\345\201\245/20240104 SpringMVC\346\225\264\345\220\210Mybatis/spring_MVC_02/target/classes/com/mdd/service/UserService.class"
create mode 100644 "04 \346\235\216\346\230\216\345\201\245/20240104 SpringMVC\346\225\264\345\220\210Mybatis/spring_MVC_02/target/classes/com/mdd/service/impl/UserServiceImpl.class"
create mode 100644 "04 \346\235\216\346\230\216\345\201\245/20240104 SpringMVC\346\225\264\345\220\210Mybatis/spring_MVC_02/target/maven-status/maven-compiler-plugin/compile/default-compile/createdFiles.lst"
create mode 100644 "04 \346\235\216\346\230\216\345\201\245/20240104 SpringMVC\346\225\264\345\220\210Mybatis/spring_MVC_02/target/maven-status/maven-compiler-plugin/compile/default-compile/inputFiles.lst"
create mode 100644 "04 \346\235\216\346\230\216\345\201\245/20240104 SpringMVC\346\225\264\345\220\210Mybatis/spring_MVC_02/target/tomcat/conf/logging.properties"
create mode 100644 "04 \346\235\216\346\230\216\345\201\245/20240104 SpringMVC\346\225\264\345\220\210Mybatis/spring_MVC_02/target/tomcat/conf/tomcat-users.xml"
create mode 100644 "04 \346\235\216\346\230\216\345\201\245/20240104 SpringMVC\346\225\264\345\220\210Mybatis/spring_MVC_02/target/tomcat/conf/web.xml"
create mode 100644 "04 \346\235\216\346\230\216\345\201\245/20240104 SpringMVC\346\225\264\345\220\210Mybatis/spring_MVC_02/target/tomcat/logs/access_log.2024-01-02"
create mode 100644 "04 \346\235\216\346\230\216\345\201\245/20240104 SpringMVC\346\225\264\345\220\210Mybatis/spring_MVC_02/target/tomcat/logs/access_log.2024-01-03"
create mode 100644 "04 \346\235\216\346\230\216\345\201\245/20240104 SpringMVC\346\225\264\345\220\210Mybatis/spring_MVC_02/target/tomcat/logs/access_log.2024-01-04"
create mode 100644 "04 \346\235\216\346\230\216\345\201\245/20240104 SpringMVC\346\225\264\345\220\210Mybatis/spring_MVC_02/target/tomcat/logs/access_log.2024-01-05"
create mode 100644 "04 \346\235\216\346\230\216\345\201\245/20240104 SpringMVC\346\225\264\345\220\210Mybatis/spring_MVC_02/target/tomcat/work/Tomcat/localhost/_/org/apache/jsp/index_jsp.class"
create mode 100644 "04 \346\235\216\346\230\216\345\201\245/20240104 SpringMVC\346\225\264\345\220\210Mybatis/spring_MVC_02/target/tomcat/work/Tomcat/localhost/_/org/apache/jsp/index_jsp.java"
diff --git "a/04 \346\235\216\346\230\216\345\201\245/20240104 SpringMVC\346\225\264\345\220\210Mybatis/spring_MVC_02/pom.xml" "b/04 \346\235\216\346\230\216\345\201\245/20240104 SpringMVC\346\225\264\345\220\210Mybatis/spring_MVC_02/pom.xml"
new file mode 100644
index 0000000..5f0235d
--- /dev/null
+++ "b/04 \346\235\216\346\230\216\345\201\245/20240104 SpringMVC\346\225\264\345\220\210Mybatis/spring_MVC_02/pom.xml"
@@ -0,0 +1,90 @@
+
+ 4.0.0
+ com.mdd
+ spring_MVC_02
+ war
+ 1.0-SNAPSHOT
+
+
+
+
+
+ org.springframework
+ spring-jdbc
+ 5.2.25.RELEASE
+
+
+ org.springframework
+ spring-test
+ 5.2.25.RELEASE
+
+
+
+ org.mybatis
+ mybatis
+ 3.5.13
+
+
+
+ org.mybatis
+ mybatis-spring
+ 2.0.5
+
+
+
+ com.mysql
+ mysql-connector-j
+ 8.1.0
+
+
+
+ junit
+ junit
+ 4.13.2
+ test
+
+
+
+ com.alibaba
+ druid
+ 1.1.23
+
+
+
+ org.springframework
+ spring-webmvc
+ 5.2.25.RELEASE
+
+
+
+ javax.servlet
+ javax.servlet-api
+ 3.1.0
+
+ provided
+
+
+
+ com.fasterxml.jackson.core
+ jackson-databind
+ 2.11.3
+
+
+
+
+
+
+
+
+ org.apache.tomcat.maven
+ tomcat7-maven-plugin
+ 2.2
+
+ 80
+ /
+
+
+
+
+
diff --git "a/04 \346\235\216\346\230\216\345\201\245/20240104 SpringMVC\346\225\264\345\220\210Mybatis/spring_MVC_02/spring_MVC_02.iml" "b/04 \346\235\216\346\230\216\345\201\245/20240104 SpringMVC\346\225\264\345\220\210Mybatis/spring_MVC_02/spring_MVC_02.iml"
new file mode 100644
index 0000000..cf88eaa
--- /dev/null
+++ "b/04 \346\235\216\346\230\216\345\201\245/20240104 SpringMVC\346\225\264\345\220\210Mybatis/spring_MVC_02/spring_MVC_02.iml"
@@ -0,0 +1,6 @@
+
+
+
+
+
+
\ No newline at end of file
diff --git "a/04 \346\235\216\346\230\216\345\201\245/20240104 SpringMVC\346\225\264\345\220\210Mybatis/spring_MVC_02/src/main/java/com/mdd/config/JdbcConfig.java" "b/04 \346\235\216\346\230\216\345\201\245/20240104 SpringMVC\346\225\264\345\220\210Mybatis/spring_MVC_02/src/main/java/com/mdd/config/JdbcConfig.java"
new file mode 100644
index 0000000..37ba9f2
--- /dev/null
+++ "b/04 \346\235\216\346\230\216\345\201\245/20240104 SpringMVC\346\225\264\345\220\210Mybatis/spring_MVC_02/src/main/java/com/mdd/config/JdbcConfig.java"
@@ -0,0 +1,23 @@
+package com.mdd.config;
+
+import com.alibaba.druid.pool.DruidDataSource;
+import org.springframework.context.annotation.Bean;
+
+import javax.sql.DataSource;
+
+public class JdbcConfig {
+ // jdbc负责连接mysql,配置驱动,url,用户名,密码
+ // spring如何加载第三方的Bean,通过写一个方法,返回这个bea 的类弄。并上这个方法上写一个注解@Bean
+
+ @Bean
+ public DataSource getDataSource(){
+ // 此时 DataSource 为实现类,需通过 druid 代理 dataSource
+ DruidDataSource ds = new DruidDataSource();
+ // 配置驱动,url,用户名,密码
+ ds.setDriverClassName("com.mysql.cj.jdbc.Driver");
+ ds.setUrl("jdbc:mysql://localhost:3306/mybatis?useSSL=false");
+ ds.setUsername("root");
+ ds.setPassword("123456");
+ return ds;
+ }
+}
diff --git "a/04 \346\235\216\346\230\216\345\201\245/20240104 SpringMVC\346\225\264\345\220\210Mybatis/spring_MVC_02/src/main/java/com/mdd/config/MybatisConfig.java" "b/04 \346\235\216\346\230\216\345\201\245/20240104 SpringMVC\346\225\264\345\220\210Mybatis/spring_MVC_02/src/main/java/com/mdd/config/MybatisConfig.java"
new file mode 100644
index 0000000..9fc6581
--- /dev/null
+++ "b/04 \346\235\216\346\230\216\345\201\245/20240104 SpringMVC\346\225\264\345\220\210Mybatis/spring_MVC_02/src/main/java/com/mdd/config/MybatisConfig.java"
@@ -0,0 +1,30 @@
+package com.mdd.config;
+
+import org.mybatis.spring.SqlSessionFactoryBean;
+import org.mybatis.spring.mapper.MapperScannerConfigurer;
+import org.springframework.context.annotation.Bean;
+
+import javax.sql.DataSource;
+
+public class MybatisConfig {
+
+ // 1.1 获取工厂对象
+ @Bean
+ public SqlSessionFactoryBean sqlSessionFactoryBean(DataSource ds){
+ SqlSessionFactoryBean ssfb = new SqlSessionFactoryBean();
+ // 1.2 设置实体类的别名
+ ssfb.setTypeAliasesPackage("com.mdd.domain"); // 实体类所在包的位置
+ // 1.3 设置数据源
+ ssfb.setDataSource(ds);
+ return ssfb;
+ }
+
+ // 2 获取Mapper 代理对象
+ @Bean
+ public MapperScannerConfigurer mapperScannerConfigurer(){
+ MapperScannerConfigurer msc = new MapperScannerConfigurer();
+ msc.setBasePackage("com.mdd.mapper"); // 代理类包的位置
+ return msc;
+ }
+
+}
diff --git "a/04 \346\235\216\346\230\216\345\201\245/20240104 SpringMVC\346\225\264\345\220\210Mybatis/spring_MVC_02/src/main/java/com/mdd/config/SpringConfig.java" "b/04 \346\235\216\346\230\216\345\201\245/20240104 SpringMVC\346\225\264\345\220\210Mybatis/spring_MVC_02/src/main/java/com/mdd/config/SpringConfig.java"
new file mode 100644
index 0000000..20dd4fc
--- /dev/null
+++ "b/04 \346\235\216\346\230\216\345\201\245/20240104 SpringMVC\346\225\264\345\220\210Mybatis/spring_MVC_02/src/main/java/com/mdd/config/SpringConfig.java"
@@ -0,0 +1,11 @@
+package com.mdd.config;
+
+import org.springframework.context.annotation.ComponentScan;
+import org.springframework.context.annotation.Configuration;
+import org.springframework.context.annotation.Import;
+
+@Configuration
+@ComponentScan({"com.mdd.service","com.mdd.mapper"})
+@Import({JdbcConfig.class, MybatisConfig.class})
+public class SpringConfig {
+}
diff --git "a/04 \346\235\216\346\230\216\345\201\245/20240104 SpringMVC\346\225\264\345\220\210Mybatis/spring_MVC_02/src/main/java/com/mdd/config/SpringMvcConfig.java" "b/04 \346\235\216\346\230\216\345\201\245/20240104 SpringMVC\346\225\264\345\220\210Mybatis/spring_MVC_02/src/main/java/com/mdd/config/SpringMvcConfig.java"
new file mode 100644
index 0000000..9346b84
--- /dev/null
+++ "b/04 \346\235\216\346\230\216\345\201\245/20240104 SpringMVC\346\225\264\345\220\210Mybatis/spring_MVC_02/src/main/java/com/mdd/config/SpringMvcConfig.java"
@@ -0,0 +1,11 @@
+package com.mdd.config;
+
+import org.springframework.context.annotation.ComponentScan;
+import org.springframework.context.annotation.Configuration;
+import org.springframework.web.servlet.config.annotation.EnableWebMvc;
+
+@Configuration
+@ComponentScan("com.mdd.controller")
+@EnableWebMvc
+public class SpringMvcConfig {
+}
diff --git "a/04 \346\235\216\346\230\216\345\201\245/20240104 SpringMVC\346\225\264\345\220\210Mybatis/spring_MVC_02/src/main/java/com/mdd/config/WebInitConfig.java" "b/04 \346\235\216\346\230\216\345\201\245/20240104 SpringMVC\346\225\264\345\220\210Mybatis/spring_MVC_02/src/main/java/com/mdd/config/WebInitConfig.java"
new file mode 100644
index 0000000..36c699b
--- /dev/null
+++ "b/04 \346\235\216\346\230\216\345\201\245/20240104 SpringMVC\346\225\264\345\220\210Mybatis/spring_MVC_02/src/main/java/com/mdd/config/WebInitConfig.java"
@@ -0,0 +1,37 @@
+package com.mdd.config;
+
+import org.springframework.web.filter.CharacterEncodingFilter;
+import org.springframework.web.servlet.support.AbstractAnnotationConfigDispatcherServletInitializer;
+
+import javax.servlet.Filter;
+
+public class WebInitConfig extends AbstractAnnotationConfigDispatcherServletInitializer {
+
+ // 加载 spring 容器配置
+ @Override
+ protected Class>[] getRootConfigClasses() {
+ return new Class[]{SpringConfig.class};
+ }
+
+ // 加载 springMVC 容器配置
+ @Override
+ protected Class>[] getServletConfigClasses() {
+ return new Class[]{SpringMvcConfig.class};
+ }
+
+ // 设置哪些请求路径归属 springMVC 处理
+ @Override
+ protected String[] getServletMappings() {
+ return new String[]{"/"};
+ }
+
+ // 解决中文乱码问题 (post)
+ /* @Override
+ protected Filter[] getServletFilters() {
+ CharacterEncodingFilter filter = new CharacterEncodingFilter();
+ filter.setEncoding("UTF-8");
+ return new Filter[]{filter};
+ }*/
+
+
+}
diff --git "a/04 \346\235\216\346\230\216\345\201\245/20240104 SpringMVC\346\225\264\345\220\210Mybatis/spring_MVC_02/src/main/java/com/mdd/controller/userController.java" "b/04 \346\235\216\346\230\216\345\201\245/20240104 SpringMVC\346\225\264\345\220\210Mybatis/spring_MVC_02/src/main/java/com/mdd/controller/userController.java"
new file mode 100644
index 0000000..e7bd24f
--- /dev/null
+++ "b/04 \346\235\216\346\230\216\345\201\245/20240104 SpringMVC\346\225\264\345\220\210Mybatis/spring_MVC_02/src/main/java/com/mdd/controller/userController.java"
@@ -0,0 +1,73 @@
+package com.mdd.controller;
+
+import com.mdd.domain.Result;
+import com.mdd.domain.User;
+import com.mdd.service.UserService;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.format.annotation.DateTimeFormat;
+import org.springframework.stereotype.Controller;
+import org.springframework.web.bind.annotation.*;
+
+import javax.xml.crypto.Data;
+import java.util.ArrayList;
+import java.util.Arrays;
+import java.util.Date;
+import java.util.List;
+
+// 使用 REST风格简化代码
+@RestController
+@RequestMapping("users")
+public class userController {
+
+ @Autowired
+ private UserService userService;
+
+ // 查询所有用户
+ @GetMapping
+ public Result selectAll(){
+ List users = userService.selectAll();
+ System.out.println("selectAll is ok...");
+ return Result.success(200,"查询成功",users);
+ }
+
+ // 新增用户
+ @PostMapping
+ public Result addUser(@RequestBody User user){
+ Integer num = userService.addUser(user);
+ System.out.println("user add is ok...");
+ if(num > 0) return Result.success(200,"新增成功");
+ return Result.failure(404,"新增失败");
+ }
+
+ // 根据id查询用户
+ @GetMapping("/{id}")
+ // @PathVariable 绑定路径参数
+ public Result selectById(@PathVariable Integer id){
+ System.out.println("selectById is ok...");
+ User user = userService.selectById(id);
+ if(user != null) return Result.success(200,"查询成功",user);
+ return Result.failure(404,"查无此人");
+ }
+
+ // 根据id修改用户
+ @PutMapping
+ // @PathVariable 绑定路径参数
+ public Result updateById(@RequestBody User user){
+ Integer num = userService.updateById(user);
+ System.out.println("updateById is ok...");
+ if(num > 0 ) return Result.success(200,"修改成功");
+ return Result.failure(404,"修改失败");
+ }
+
+ // 根据id删除用户
+ @DeleteMapping("/{id}")
+ // @PathVariable 绑定路径参数
+ public Result deleteById(@PathVariable Integer id){
+ Integer num = userService.deleteById(id);
+ System.out.println("deleteById is ok...");
+ if(num > 0 ) return Result.success(200,"删除成功");
+ return Result.failure(404,"删除失败");
+ }
+
+
+}
diff --git "a/04 \346\235\216\346\230\216\345\201\245/20240104 SpringMVC\346\225\264\345\220\210Mybatis/spring_MVC_02/src/main/java/com/mdd/domain/Result.java" "b/04 \346\235\216\346\230\216\345\201\245/20240104 SpringMVC\346\225\264\345\220\210Mybatis/spring_MVC_02/src/main/java/com/mdd/domain/Result.java"
new file mode 100644
index 0000000..750d1b3
--- /dev/null
+++ "b/04 \346\235\216\346\230\216\345\201\245/20240104 SpringMVC\346\225\264\345\220\210Mybatis/spring_MVC_02/src/main/java/com/mdd/domain/Result.java"
@@ -0,0 +1,69 @@
+package com.mdd.domain;
+
+public class Result {
+ private Integer code;
+ private String msg;
+ private Object data;
+
+ // 静态方法
+ // 成功有数据
+ public static Result success(Integer code,String msg,Object data){
+ return new Result(code,msg,data);
+ }
+ // 成功无数据
+ public static Result success(Integer code,String msg){
+ Result result = new Result();
+ result.setCode(code);
+ result.setMsg(msg);
+ return result;
+ }
+ // 失败
+ public static Result failure(Integer code,String msg){
+ Result result = new Result();
+ result.setCode(code);
+ result.setMsg(msg);
+ return result;
+ }
+
+ public Result() {
+ }
+
+ public Result(Integer code, String msg, Object data) {
+ this.code = code;
+ this.msg = msg;
+ this.data = data;
+ }
+
+ public Integer getCode() {
+ return code;
+ }
+
+ public void setCode(Integer code) {
+ this.code = code;
+ }
+
+ public String getMsg() {
+ return msg;
+ }
+
+ public void setMsg(String msg) {
+ this.msg = msg;
+ }
+
+ public Object getData() {
+ return data;
+ }
+
+ public void setData(Object data) {
+ this.data = data;
+ }
+
+ @Override
+ public String toString() {
+ return "Result{" +
+ "code=" + code +
+ ", msg='" + msg + '\'' +
+ ", data=" + data +
+ '}';
+ }
+}
diff --git "a/04 \346\235\216\346\230\216\345\201\245/20240104 SpringMVC\346\225\264\345\220\210Mybatis/spring_MVC_02/src/main/java/com/mdd/domain/User.java" "b/04 \346\235\216\346\230\216\345\201\245/20240104 SpringMVC\346\225\264\345\220\210Mybatis/spring_MVC_02/src/main/java/com/mdd/domain/User.java"
new file mode 100644
index 0000000..f5afd7c
--- /dev/null
+++ "b/04 \346\235\216\346\230\216\345\201\245/20240104 SpringMVC\346\225\264\345\220\210Mybatis/spring_MVC_02/src/main/java/com/mdd/domain/User.java"
@@ -0,0 +1,49 @@
+package com.mdd.domain;
+
+public class User {
+ private Integer id;
+ private String userName;
+ private String password;
+
+ public User() {
+ }
+
+ public User(Integer id, String userName, String password) {
+ this.id = id;
+ this.userName = userName;
+ this.password = password;
+ }
+
+ public Integer getId() {
+ return id;
+ }
+
+ public void setId(Integer id) {
+ this.id = id;
+ }
+
+ public String getUserName() {
+ return userName;
+ }
+
+ public void setUserName(String userName) {
+ this.userName = userName;
+ }
+
+ public String getPassword() {
+ return password;
+ }
+
+ public void setPassword(String password) {
+ this.password = password;
+ }
+
+ @Override
+ public String toString() {
+ return "User{" +
+ "id=" + id +
+ ", userName='" + userName + '\'' +
+ ", password='" + password + '\'' +
+ '}';
+ }
+}
diff --git "a/04 \346\235\216\346\230\216\345\201\245/20240104 SpringMVC\346\225\264\345\220\210Mybatis/spring_MVC_02/src/main/java/com/mdd/mapper/UserMapper.java" "b/04 \346\235\216\346\230\216\345\201\245/20240104 SpringMVC\346\225\264\345\220\210Mybatis/spring_MVC_02/src/main/java/com/mdd/mapper/UserMapper.java"
new file mode 100644
index 0000000..2e41a26
--- /dev/null
+++ "b/04 \346\235\216\346\230\216\345\201\245/20240104 SpringMVC\346\225\264\345\220\210Mybatis/spring_MVC_02/src/main/java/com/mdd/mapper/UserMapper.java"
@@ -0,0 +1,33 @@
+package com.mdd.mapper;
+
+import com.mdd.domain.User;
+import org.apache.ibatis.annotations.Delete;
+import org.apache.ibatis.annotations.Insert;
+import org.apache.ibatis.annotations.Select;
+import org.apache.ibatis.annotations.Update;
+
+import java.util.List;
+
+public interface UserMapper {
+
+ // 新增用户
+ @Insert("insert into users(id, user_name, password) value(null,#{userName},#{password})")
+ Integer addUser(User user);
+
+ // 查询所有
+ @Select("select id, user_name userName, password from users")
+ List selectAll();
+
+ // 根据ID查询
+ @Select("select id, user_name userName, password from users where id = #{id}")
+ User selectById(int id);
+
+ // 根据ID修改
+ @Update("update users set user_name = #{userName},password = #{password} where id = #{id}")
+ Integer updateById(User user);
+
+ // 根据ID删除
+ @Delete("delete from users where id = #{id}")
+ Integer deleteById(int id);
+
+}
diff --git "a/04 \346\235\216\346\230\216\345\201\245/20240104 SpringMVC\346\225\264\345\220\210Mybatis/spring_MVC_02/src/main/java/com/mdd/service/UserService.java" "b/04 \346\235\216\346\230\216\345\201\245/20240104 SpringMVC\346\225\264\345\220\210Mybatis/spring_MVC_02/src/main/java/com/mdd/service/UserService.java"
new file mode 100644
index 0000000..4324e25
--- /dev/null
+++ "b/04 \346\235\216\346\230\216\345\201\245/20240104 SpringMVC\346\225\264\345\220\210Mybatis/spring_MVC_02/src/main/java/com/mdd/service/UserService.java"
@@ -0,0 +1,22 @@
+package com.mdd.service;
+
+import com.mdd.domain.User;
+
+import java.util.List;
+
+public interface UserService {
+ // 新增用户
+ Integer addUser(User user);
+
+ // 查询所有
+ List selectAll();
+
+ // 根据ID查询
+ User selectById(int id);
+
+ // 根据ID修改
+ Integer updateById(User user);
+
+ // 根据ID删除
+ Integer deleteById(int id);
+}
diff --git "a/04 \346\235\216\346\230\216\345\201\245/20240104 SpringMVC\346\225\264\345\220\210Mybatis/spring_MVC_02/src/main/java/com/mdd/service/impl/UserServiceImpl.java" "b/04 \346\235\216\346\230\216\345\201\245/20240104 SpringMVC\346\225\264\345\220\210Mybatis/spring_MVC_02/src/main/java/com/mdd/service/impl/UserServiceImpl.java"
new file mode 100644
index 0000000..1792ce0
--- /dev/null
+++ "b/04 \346\235\216\346\230\216\345\201\245/20240104 SpringMVC\346\225\264\345\220\210Mybatis/spring_MVC_02/src/main/java/com/mdd/service/impl/UserServiceImpl.java"
@@ -0,0 +1,45 @@
+package com.mdd.service.impl;
+
+import com.mdd.domain.User;
+import com.mdd.mapper.UserMapper;
+import com.mdd.service.UserService;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+
+import java.util.List;
+@Service
+public class UserServiceImpl implements UserService {
+
+ @Autowired
+ private UserMapper userMapper;
+
+ @Override
+ public Integer addUser(User user) {
+ System.out.println("业务层正在做添加用户操作!");
+ return userMapper.addUser(user);
+ }
+
+ @Override
+ public List selectAll() {
+ System.out.println("业务层正在做查询所有用户操作!");
+ return userMapper.selectAll();
+ }
+
+ @Override
+ public User selectById(int id) {
+ System.out.println("业务层正在做查询某个用户操作!");
+ return userMapper.selectById(id);
+ }
+
+ @Override
+ public Integer updateById(User user) {
+ System.out.println("业务层正在做修改用户操作!");
+ return userMapper.updateById(user);
+ }
+
+ @Override
+ public Integer deleteById(int id) {
+ System.out.println("业务层正在做删除用户操作!");
+ return userMapper.deleteById(id);
+ }
+}
diff --git "a/04 \346\235\216\346\230\216\345\201\245/20240104 SpringMVC\346\225\264\345\220\210Mybatis/spring_MVC_02/src/main/webapp/WEB-INF/web.xml" "b/04 \346\235\216\346\230\216\345\201\245/20240104 SpringMVC\346\225\264\345\220\210Mybatis/spring_MVC_02/src/main/webapp/WEB-INF/web.xml"
new file mode 100644
index 0000000..9f88c1f
--- /dev/null
+++ "b/04 \346\235\216\346\230\216\345\201\245/20240104 SpringMVC\346\225\264\345\220\210Mybatis/spring_MVC_02/src/main/webapp/WEB-INF/web.xml"
@@ -0,0 +1,7 @@
+
+
+
+ Archetype Created Web Application
+
diff --git "a/04 \346\235\216\346\230\216\345\201\245/20240104 SpringMVC\346\225\264\345\220\210Mybatis/spring_MVC_02/src/main/webapp/index.jsp" "b/04 \346\235\216\346\230\216\345\201\245/20240104 SpringMVC\346\225\264\345\220\210Mybatis/spring_MVC_02/src/main/webapp/index.jsp"
new file mode 100644
index 0000000..c38169b
--- /dev/null
+++ "b/04 \346\235\216\346\230\216\345\201\245/20240104 SpringMVC\346\225\264\345\220\210Mybatis/spring_MVC_02/src/main/webapp/index.jsp"
@@ -0,0 +1,5 @@
+
+
+Hello World!
+
+
diff --git "a/04 \346\235\216\346\230\216\345\201\245/20240104 SpringMVC\346\225\264\345\220\210Mybatis/spring_MVC_02/target/classes/com/mdd/config/JdbcConfig.class" "b/04 \346\235\216\346\230\216\345\201\245/20240104 SpringMVC\346\225\264\345\220\210Mybatis/spring_MVC_02/target/classes/com/mdd/config/JdbcConfig.class"
new file mode 100644
index 0000000000000000000000000000000000000000..96bdbe5b885e8cf722ffe7020c2b58dfe7465ec1
GIT binary patch
literal 861
zcmah{T~8B16uq;Qb}b9Vib|^}pkkrYL909zKcXc*m<<}MO?;f)9m>?*9h{va{40Ga
zi6;I4f0XgwEs^+OoQFC0-Z^vb$IQ=P-+ll<8(L+Ug{2bQD1!q_F5Dzsc438Z)rDJx
zw_UhHxK@I@C1@}xK31u+PZ>-#*82>40}XkD>=aiTj8)Z
z#BsECjXILXgLT+outlLxPUvtR(`XNLW;^Zn);3R00&F6CHp*nL=ResOaV9-z(!GMw
z+In!0?Be|g?T3%HJ=i3#_Rl9^Fi$P;Sfm5~IvC2(;&W#BD0xNQSY+8A&WFL}M*c7p
zX3x^(cIZ^W%%S
z7xSPCRkXbc0WQG;dRPWrK@qwYxY
y3$h#_eCox|EHyQSmIBi)UA15wq4XN>$Yn@k`_G!1dqZ8p_oG
literal 0
HcmV?d00001
diff --git "a/04 \346\235\216\346\230\216\345\201\245/20240104 SpringMVC\346\225\264\345\220\210Mybatis/spring_MVC_02/target/classes/com/mdd/config/MybatisConfig.class" "b/04 \346\235\216\346\230\216\345\201\245/20240104 SpringMVC\346\225\264\345\220\210Mybatis/spring_MVC_02/target/classes/com/mdd/config/MybatisConfig.class"
new file mode 100644
index 0000000000000000000000000000000000000000..036c40cf361ba0063752abc8d18d0548de2ee68a
GIT binary patch
literal 1200
zcmb7@-%k@k5XZmUmbTP#V6nx5BH*t=f2@S~RAWLhJYCgT(!?jTy)Jd3cUSMOO8+Z;
zDTyTh0sc|O*}Fz0IZ^LnXLokyGc!AL-+z4l24D}nIpndG!TlT(*vjI8mJjvvD1*m2
zWVEuP<#q-;8B`h4&y=Hr=M2fpc9$V_;PxfMqNyDDa%}gccO-g4(iBYB62q?Wls?at
zso=fx8P-k9wYlBzbIWy()quArJrOAXAUri0ivEXTNBX{UokL*-t~Y5(;V`r+=85|1Kx>a5IoVR6iV?RD#-Vbdkj1OLoB};JAtxg
zSNV#H-FF-}pn6<~0@XuMl+v*$Z28IcPIcXZJPWw^Wy*Dhl--IgMkDEUEV`0j^de(V
zdJIo1v1LZ~ydCdG#H8(840~|}{na-YJ@BClTY9BU4c&=67GN+`{`L783~GIYTHolq
zwopzUHPrKHfHUmIP_EDLH(X?x#}m{U?p!xt3`;t7J`^-0uX-oa3iQOu;Ak?E`$Hvs
z>Ax1%sTj~07o&-bj5~oItfrp(1+u>!K!)<4CX;LpvTYG{2E`_B&~K-|B!~oq)S-e2v?KzU|S|K&XT&+4q
zy7rkaB3J<_+8f9c+6XbrA$TKlo`DI25>_Zcmh!ueGI_6(pH5|sB)u^1&H|ex6Qo9Y
literal 0
HcmV?d00001
diff --git "a/04 \346\235\216\346\230\216\345\201\245/20240104 SpringMVC\346\225\264\345\220\210Mybatis/spring_MVC_02/target/classes/com/mdd/config/SpringConfig.class" "b/04 \346\235\216\346\230\216\345\201\245/20240104 SpringMVC\346\225\264\345\220\210Mybatis/spring_MVC_02/target/classes/com/mdd/config/SpringConfig.class"
new file mode 100644
index 0000000000000000000000000000000000000000..4b13d7f2080bdf4fffe1642f799e3160e1b9e459
GIT binary patch
literal 631
zcmb7BO-lnY5Phlr&{}P+pG6b|59*;g2woIH3W8Dd*2dc<=}K
zqr};@ig*y+g~`4*GjDcYUf-Ty0PLbx!~~WKST10NA%CEa_J<4;Tib1hY{PaGL%FGq
zI*-FZxhoM2h^aQM6oa;KI>BQy>u+?#u-23|5Gjwi}=q#OOs;OKf6Jahw74u^#u^_Sd
E4&@lFuK)l5
literal 0
HcmV?d00001
diff --git "a/04 \346\235\216\346\230\216\345\201\245/20240104 SpringMVC\346\225\264\345\220\210Mybatis/spring_MVC_02/target/classes/com/mdd/config/SpringMvcConfig.class" "b/04 \346\235\216\346\230\216\345\201\245/20240104 SpringMVC\346\225\264\345\220\210Mybatis/spring_MVC_02/target/classes/com/mdd/config/SpringMvcConfig.class"
new file mode 100644
index 0000000000000000000000000000000000000000..258fccae6579fd9ad79b213f90f4172b9177f6f1
GIT binary patch
literal 566
zcmb7BO-lnY5Pj*V)@p051uvpE_0SvyFBMUWo~nYCdhnFprZu{olx(*3Z+Q|t_yhb=
z;$;0mL^
zIFR;I1QB@}Jrjy(AguEE!&z`QDq+~@g(l|laL7ZWM{3Ob6RY(2bQ*Ru++nEnO=?4V
zqI|99k9hl5Oa;T*MXH^O*WQS9}M9rGlsJF+5{Gh^>Oos;*Di?65r
zoiVjpA`$;1F`gJLwd;pMQ(|!{qSOygv$biqwkNYDilk*Y{I#8#40s~#G?MO9iEo`9
zYp>ju3`mzw6$KO-*8dicq3)&OkGizXn)gIcu*Y|$!-`D>7{qqLE3+x1FVZ+B0ADce5d^~Mo+s88>&l#FW
zN-KBF(AeEOWAJ)rAQ_hWO3SySVI=K)5vAnm^i3?%GhtO>Pn@2+P&vbPKQ==?91M7D
z^tnp-2N}H~YOl0jGISH^-WfA-^iq-MlJdH{d!PDW#8~iD=!BPkie3m+qJk}ySEiQCJUt!9e*>0pft3~p#u>J1c~gQIJ{z0xysUI?#ZX=v`;}kHi04%&
zcs|N9V;w(8BLK13d!*njetG
zX=Sv|@BaY%PMbNjX>OLz78YsWt^)87OJsRi#tKCh$%iEj2)t{|eQb0Z;T3uB5*F_e
pf(fBh#;j6q_n##19%=Qzq%}Mum32+?q^Wt2v@wH3f38&Z_z#BWV6vjVi!Omnz$PA%SN(oCLTVo)EEi`QwplJt46G#`jIb$c7%-F$8(v+@m
zh^kT_P^-QGLh#rYDnt_=+PA9e-$5e!KU7t}JN9^-WJZdj==xsYbI$L6_nhPT`@bi@
z1L(%r3GBcdb$9`9)+2+nbvTFf3Puum3!@2);evvT35?@y@%kMF?~29u6kHOE?<@E~
zj2|laNWA}8fhNWY1z82U0z=Fu6-+6(tiY6UMaHy*dfzpiF~gZPvxbBnnXH{x^SZ8b
zRV=9&ORsw+Y#a40&&(U+rfW{*jDE|qJ?r-JL8zv)TE>3jXB$yRwoS2
za@9#K>)Fn{sznBBzwg;|reo-IyWym1nO>iS>ejY#2{nVZPMF4wX&LAI{Dk3L&=^fZ
zDr0B0+_>hLVjeEmc$ZCv-xHx{ZOe1)T+VP*ak#-~%1Cvtku$Phe=f(vw6;Yyx}Dcd
zOC2>_Kj(2@t+1rmO_?j&tfu;&nNu^SD_(6`2{AuY1lhl8@5$BPg_ga2baA+>RCC6J
zI$>IRT%|LHcUGI3p`p`wGf7+p(=-)TX^ZK$*wbBIT{7GxJowDNBxW%uA-R0}{BemtpCmDlPm?%+YZ98oF60f(42XE?(sf7Mx%25CKQG^041z_|Vw@pyh;-?W
z!6GN%rB^;Sgk1!)h+#uW0Htb^UDCaM{&I;?9emF4i!@c(Ij0#NNss
zq`gu{UZXk>ukeuLL8svtZ&*U#`hY5jmnStd=R2(MtwNSn3W#g%#V-D|*ukF~5~@Vm
zactpi1IJzA$cp4_FJ~%8iDPa1Z;&4Hp$adBn}E&O$LD0Q0sGO)nZyci=PqHKM>U^-
zo$ZfMwTNm7nO{+ps(p+NP55g8a!Tn~K-~jwsV=x};0V%*UqC6c3HMt97oqzEn$dwy
zhIyIqMCf3pi%%_F5vNc&O055b^d>NF(1Y-MNMLj=4p@+SwCuf>m`^Y2cS_01@9b@pXo6+mJau_{~e1y9cNdID=jH40b
zF|HoxzbxcE!3PPwI2i(e!%+Zt3(6)^7Qjimh!oj7|HP)Eew{+UkT_k2xQnq>YIuM=
z2V=zD5pg$OAt%d-nhW+A@qQV71>y$27n$(tB}gt_E0OmX$OkG)y*ZS+d5zRtVp2a>
z2K*Q$JWi=k5V|)8ekcN8uhfHNTqX5TB=xspZuFES-WoD*Tf_W(jCp$*<^eQdkU|cz
u22RD8dm`qZQ0xY-tV)lzVtNR%PgN4T3a5FTDx4|YONvjgb3Pnx@Aw~mq%1lB
literal 0
HcmV?d00001
diff --git "a/04 \346\235\216\346\230\216\345\201\245/20240104 SpringMVC\346\225\264\345\220\210Mybatis/spring_MVC_02/target/classes/com/mdd/domain/Result.class" "b/04 \346\235\216\346\230\216\345\201\245/20240104 SpringMVC\346\225\264\345\220\210Mybatis/spring_MVC_02/target/classes/com/mdd/domain/Result.class"
new file mode 100644
index 0000000000000000000000000000000000000000..602d196a779f2ebfd7a1c7ded1a1dbb555abd8c5
GIT binary patch
literal 2103
zcmbVMX-^YT6g{t$c3MWMr4(_+l`<5n;KCxf;D+K7H6(s98QQT9>0-M0#rU5zk&g|Pz}#oya*rQINf*e$o_wpQ7=+|(wiwm!IQ!qVY5gfxK|@v_s>6_4ho0wLXI
zO1HZa*|0=HBu0>DB4wrzV^7Q&Aw2(R5W#l~fUvml3Eqzokh~kv2hmlN5Js!60Tq(3
z>+MF-dFYC4Lt5EcnLmZmP}xmfz-2KPO-#WuF@sqX8H}39V$8&Gj8mZA1nWfi+HR%f
zG!#so;tG}8j~|^{Nns|eQ2}}S
z7;tL);=5h>NBpVWT2SqNIGp1fAK{UTPBQKkPwNa8`M-$mrB7krvF#vr}QlGDZtc0xJ0txo-;}-{jM-lip~gtHNAtlmEVD3&Fmo2!^=_?
zu)rwGO%UTK%N-$#U|afoADc*Cn}n2ZlQ7B1+*1IBN#y*@1+JRc+o+6Kl$4M@{4;@c#SC{xc(Q^#BFT=
literal 0
HcmV?d00001
diff --git "a/04 \346\235\216\346\230\216\345\201\245/20240104 SpringMVC\346\225\264\345\220\210Mybatis/spring_MVC_02/target/classes/com/mdd/domain/User.class" "b/04 \346\235\216\346\230\216\345\201\245/20240104 SpringMVC\346\225\264\345\220\210Mybatis/spring_MVC_02/target/classes/com/mdd/domain/User.class"
new file mode 100644
index 0000000000000000000000000000000000000000..9bacc51805ed1e4509da289a7df15a5ed3568d82
GIT binary patch
literal 1546
zcmZ{j+iuf95QhJCoWx1oCZtIUrO;BKN!^2ia_k`&R6?p$6{JEXF5TElT_twqIB31ZN!;Mx%y?&K|M_-i{pat`-vBnTlSdI+4%1j=v&LpUi;Xx5$8g&EzT;bM%i9)E`aR1#G`f~RIhJtb
zd$!Z&{d1$&`|NroklC>v+iwb_8Y{;F@}6tbsp5g{Scm=YiRHaFPC9{(+cG-GhG+9S
z3d;Ve-4m!DwA`-VHBH@gyN2!PAE-Q)*=od!59wl|i0A(Zlcd|0zfXYG#!4(bfnE$fZV4a>3Y
z22V#t6*Uzl+)z=*jEV|o1ZKyB3(vpq+a1&LXgYlIi*4?zc!^hRwgl9*#eQ^|-8#pp
zzZ4q|l4Er&(St}Bg+OUs?Cr^!)$(cZ#`(GBP=nW#E*)$66*{VVB|lW#j*nqA!V?6nN?r`5fpGphk9#|Y57B=>`bJ3-7(EjN%ZbYXp~x-~@GgDbk9Aq$WY;5<%|cK@v!6667v{EL;P^W91G!Oazf9L6#ChmXkqZ
zqYFE-Od$1ZKzK9^LO%>yeiWzFH6Bg#7t$Xuktt^fP&69T0J(BL{7#W8)dwh))i59r
Z1EsGN9bjtm2CK0fG)GUdL3Jdo`~y6a3K;+Z
literal 0
HcmV?d00001
diff --git "a/04 \346\235\216\346\230\216\345\201\245/20240104 SpringMVC\346\225\264\345\220\210Mybatis/spring_MVC_02/target/classes/com/mdd/mapper/UserMapper.class" "b/04 \346\235\216\346\230\216\345\201\245/20240104 SpringMVC\346\225\264\345\220\210Mybatis/spring_MVC_02/target/classes/com/mdd/mapper/UserMapper.class"
new file mode 100644
index 0000000000000000000000000000000000000000..e0768865e9f7fb06fac2d1d113ad2ab28fbaaf42
GIT binary patch
literal 1023
zcmb7DU27CE6uoJ?UAJmmtJc;J2rbBrEC%YMwNMpdVXfj)Uwn}4CT>$Q$uP;ZNZCK;
zLw`VjROy|Jv$Ms4#fM>%d(S=hoaE-}`p+c*ynz>Oc-DsJ1lnAPV<$5LucH3QCM*$x
z37c?bSP_34_fPp5XPTQa>lrV{7$dO#EjL~z^1E_ssO6zC)^o3{aRgrWZ8l~+<)ahH
z)DXjt@fv_E$m@}$b;flr2^^^qp~`qmb4cx#Z2z>Z|a(aFuGl_EOJGy(J#00zL
zso-9g-R2oP4p=nywX7;7Qzw0WO@X?;lIlW2xY|sbga|yfO2}qmyJ_O)Df}2nP~lEV
zH*>O0JqI?=M)H%=I00+Lpnv9RDzn!`YaH+DB_tslUP1{VuwJYCGCajGTP8qY0iP8>
zYl*-jEaAR|yH)%zS6ot>NZDZqK+l2_eK;pt#xKspP2!TKs!3P*KLzps2B$*U^H5WdB4<+77
zQ(TzUaL@Vf&zbL^&o2OXSO-`JSP=rL)N897!cCOsbty`vgsMwvD&h6}INi#f6joM+
zNGhib)(DGMTb;WnYYFRUU^-{4NKNZJkeQ;Au4^=Dj;;^G&uT4?nE
literal 0
HcmV?d00001
diff --git "a/04 \346\235\216\346\230\216\345\201\245/20240104 SpringMVC\346\225\264\345\220\210Mybatis/spring_MVC_02/target/classes/com/mdd/service/impl/UserServiceImpl.class" "b/04 \346\235\216\346\230\216\345\201\245/20240104 SpringMVC\346\225\264\345\220\210Mybatis/spring_MVC_02/target/classes/com/mdd/service/impl/UserServiceImpl.class"
new file mode 100644
index 0000000000000000000000000000000000000000..95110fc135bfda980f932566fa3207d630e10aa2
GIT binary patch
literal 1728
zcmaJ>TW=Fb6#mA9_!5^;hlGT1=_P>e081}WibF`C4RtXWVaWT$JGevlVy(xZyg{D;
z2??pZ6h-1LA*2?lswQcHzV~;;rhVccAkNquC$JkHcF&&K^L_Kpxy-+>|9S!73w)oz
zS{QNc#%D2no}iU4lpTHn~PyY+XFF-YI`t>u_(r)IK+^sRfTtq
zS1Q6|7%Y@r+pta3u$wE!nfA{d!@#MUqoge+WmQgDV%%|D#g%lOD#N~l>y?da#gk6?
ztjBF}!S#MLrUZAY##vrct~YJ)HozFKDffc(gh{lWBhry-lwnmmGs)0#*fj-1cR@Ph
zc+H*?-f2#|F{BD^iCdH0liK$eJJb)7w%^tkPJ++Nk}#xQv6}LWt%W@Kv{{s!ralxy
zHr>XUuFa*>jLu~W=lFSUSllTac}Iz|@CeqSv&7IF3So#>g(XUA+_Fe!+NY=~X&D7s
zRfLZhW!d4X=FvGafq;=v+EKzKTEvH@^Cm-oI-d!RWQa)m&+@vQ6_YE`0whe5wdnL|
zblBMvMYraa#DvsIUZ<0@EM>bif*~DR-l`IwaMg507(OJIL?6~iaX5)@@GZmkg}Iyc
zt9R;8e`@@CuRimze(7do_V4=D+b?fCY+Rmg{CsWU`OK?lm!g<1@LLc5dwjQXA5C(v7ik5Y7mY|rnA
zq*ncjj_e;;Jv@)j2%gY#iz?9!Ng+l`G+kc{;?ofrTksJPGTkloPZN)k)v8jOIO-G6
zBgO)}{lq)4OlHdG{j|CN5V24@(K{eF?z0ZgBN3FlnP|7HAa^^`L`e5Wcpkcz@{kM?
p4-xU!6^Iw}KrI@k_=6?IYl6gCA|76WxTQFP9nGZdY`4QM;0;Ro&SU@p
literal 0
HcmV?d00001
diff --git "a/04 \346\235\216\346\230\216\345\201\245/20240104 SpringMVC\346\225\264\345\220\210Mybatis/spring_MVC_02/target/maven-status/maven-compiler-plugin/compile/default-compile/createdFiles.lst" "b/04 \346\235\216\346\230\216\345\201\245/20240104 SpringMVC\346\225\264\345\220\210Mybatis/spring_MVC_02/target/maven-status/maven-compiler-plugin/compile/default-compile/createdFiles.lst"
new file mode 100644
index 0000000..0349eb3
--- /dev/null
+++ "b/04 \346\235\216\346\230\216\345\201\245/20240104 SpringMVC\346\225\264\345\220\210Mybatis/spring_MVC_02/target/maven-status/maven-compiler-plugin/compile/default-compile/createdFiles.lst"
@@ -0,0 +1,11 @@
+com\mdd\config\WebInitConfig.class
+com\mdd\config\MybatisConfig.class
+com\mdd\domain\User.class
+com\mdd\config\SpringConfig.class
+com\mdd\config\SpringMvcConfig.class
+com\mdd\controller\userController.class
+com\mdd\service\UserService.class
+com\mdd\service\impl\UserServiceImpl.class
+com\mdd\mapper\UserMapper.class
+com\mdd\domain\Result.class
+com\mdd\config\JdbcConfig.class
diff --git "a/04 \346\235\216\346\230\216\345\201\245/20240104 SpringMVC\346\225\264\345\220\210Mybatis/spring_MVC_02/target/maven-status/maven-compiler-plugin/compile/default-compile/inputFiles.lst" "b/04 \346\235\216\346\230\216\345\201\245/20240104 SpringMVC\346\225\264\345\220\210Mybatis/spring_MVC_02/target/maven-status/maven-compiler-plugin/compile/default-compile/inputFiles.lst"
new file mode 100644
index 0000000..f8505fb
--- /dev/null
+++ "b/04 \346\235\216\346\230\216\345\201\245/20240104 SpringMVC\346\225\264\345\220\210Mybatis/spring_MVC_02/target/maven-status/maven-compiler-plugin/compile/default-compile/inputFiles.lst"
@@ -0,0 +1,10 @@
+E:\SSM\mybatis\mybatis_project\spring_MVC_02\src\main\java\com\mdd\config\SpringConfig.java
+E:\SSM\mybatis\mybatis_project\spring_MVC_02\src\main\java\com\mdd\config\MybatisConfig.java
+E:\SSM\mybatis\mybatis_project\spring_MVC_02\src\main\java\com\mdd\mapper\UserMapper.java
+E:\SSM\mybatis\mybatis_project\spring_MVC_02\src\main\java\com\mdd\service\UserService.java
+E:\SSM\mybatis\mybatis_project\spring_MVC_02\src\main\java\com\mdd\controller\userController.java
+E:\SSM\mybatis\mybatis_project\spring_MVC_02\src\main\java\com\mdd\domain\User.java
+E:\SSM\mybatis\mybatis_project\spring_MVC_02\src\main\java\com\mdd\config\WebInitConfig.java
+E:\SSM\mybatis\mybatis_project\spring_MVC_02\src\main\java\com\mdd\config\SpringMvcConfig.java
+E:\SSM\mybatis\mybatis_project\spring_MVC_02\src\main\java\com\mdd\config\JdbcConfig.java
+E:\SSM\mybatis\mybatis_project\spring_MVC_02\src\main\java\com\mdd\service\impl\UserServiceImpl.java
diff --git "a/04 \346\235\216\346\230\216\345\201\245/20240104 SpringMVC\346\225\264\345\220\210Mybatis/spring_MVC_02/target/tomcat/conf/logging.properties" "b/04 \346\235\216\346\230\216\345\201\245/20240104 SpringMVC\346\225\264\345\220\210Mybatis/spring_MVC_02/target/tomcat/conf/logging.properties"
new file mode 100644
index 0000000..76c9512
--- /dev/null
+++ "b/04 \346\235\216\346\230\216\345\201\245/20240104 SpringMVC\346\225\264\345\220\210Mybatis/spring_MVC_02/target/tomcat/conf/logging.properties"
@@ -0,0 +1,64 @@
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements. See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License. You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+handlers = 1catalina.org.apache.juli.FileHandler, 2localhost.org.apache.juli.FileHandler, 3manager.org.apache.juli.FileHandler, 4host-manager.org.apache.juli.FileHandler, java.util.logging.ConsoleHandler
+
+.handlers = 1catalina.org.apache.juli.FileHandler, java.util.logging.ConsoleHandler
+
+############################################################
+# Handler specific properties.
+# Describes specific configuration info for Handlers.
+############################################################
+
+1catalina.org.apache.juli.FileHandler.level = FINE
+1catalina.org.apache.juli.FileHandler.directory = ${catalina.base}/logs
+1catalina.org.apache.juli.FileHandler.prefix = catalina.
+
+2localhost.org.apache.juli.FileHandler.level = FINE
+2localhost.org.apache.juli.FileHandler.directory = ${catalina.base}/logs
+2localhost.org.apache.juli.FileHandler.prefix = localhost.
+
+3manager.org.apache.juli.FileHandler.level = FINE
+3manager.org.apache.juli.FileHandler.directory = ${catalina.base}/logs
+3manager.org.apache.juli.FileHandler.prefix = manager.
+
+4host-manager.org.apache.juli.FileHandler.level = FINE
+4host-manager.org.apache.juli.FileHandler.directory = ${catalina.base}/logs
+4host-manager.org.apache.juli.FileHandler.prefix = host-manager.
+
+java.util.logging.ConsoleHandler.level = FINE
+java.util.logging.ConsoleHandler.formatter = java.util.logging.SimpleFormatter
+
+
+############################################################
+# Facility specific properties.
+# Provides extra control for each logger.
+############################################################
+
+org.apache.catalina.core.ContainerBase.[Catalina].[localhost].level = INFO
+org.apache.catalina.core.ContainerBase.[Catalina].[localhost].handlers = 2localhost.org.apache.juli.FileHandler
+
+org.apache.catalina.core.ContainerBase.[Catalina].[localhost].[/manager].level = INFO
+org.apache.catalina.core.ContainerBase.[Catalina].[localhost].[/manager].handlers = 3manager.org.apache.juli.FileHandler
+
+org.apache.catalina.core.ContainerBase.[Catalina].[localhost].[/host-manager].level = INFO
+org.apache.catalina.core.ContainerBase.[Catalina].[localhost].[/host-manager].handlers = 4host-manager.org.apache.juli.FileHandler
+
+# For example, set the org.apache.catalina.util.LifecycleBase logger to log
+# each component that extends LifecycleBase changing state:
+#org.apache.catalina.util.LifecycleBase.level = FINE
+
+# To see debug messages in TldLocationsCache, uncomment the following line:
+#org.apache.jasper.compiler.TldLocationsCache.level = FINE
diff --git "a/04 \346\235\216\346\230\216\345\201\245/20240104 SpringMVC\346\225\264\345\220\210Mybatis/spring_MVC_02/target/tomcat/conf/tomcat-users.xml" "b/04 \346\235\216\346\230\216\345\201\245/20240104 SpringMVC\346\225\264\345\220\210Mybatis/spring_MVC_02/target/tomcat/conf/tomcat-users.xml"
new file mode 100644
index 0000000..7114f5d
--- /dev/null
+++ "b/04 \346\235\216\346\230\216\345\201\245/20240104 SpringMVC\346\225\264\345\220\210Mybatis/spring_MVC_02/target/tomcat/conf/tomcat-users.xml"
@@ -0,0 +1,26 @@
+
+
+
+
+
diff --git "a/04 \346\235\216\346\230\216\345\201\245/20240104 SpringMVC\346\225\264\345\220\210Mybatis/spring_MVC_02/target/tomcat/conf/web.xml" "b/04 \346\235\216\346\230\216\345\201\245/20240104 SpringMVC\346\225\264\345\220\210Mybatis/spring_MVC_02/target/tomcat/conf/web.xml"
new file mode 100644
index 0000000..cc8383c
--- /dev/null
+++ "b/04 \346\235\216\346\230\216\345\201\245/20240104 SpringMVC\346\225\264\345\220\210Mybatis/spring_MVC_02/target/tomcat/conf/web.xml"
@@ -0,0 +1,4283 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ default
+ org.apache.catalina.servlets.DefaultServlet
+
+ debug
+ 0
+
+
+ listings
+ false
+
+ 1
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ jsp
+ org.apache.jasper.servlet.JspServlet
+
+ fork
+ false
+
+
+ xpoweredBy
+ false
+
+ 3
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ default
+ /
+
+
+
+
+ jsp
+ *.jsp
+ *.jspx
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 30
+
+
+
+
+
+
+
+
+
+
+
+ 123
+ application/vnd.lotus-1-2-3
+
+
+ 3dml
+ text/vnd.in3d.3dml
+
+
+ 3g2
+ video/3gpp2
+
+
+ 3gp
+ video/3gpp
+
+
+ 7z
+ application/x-7z-compressed
+
+
+ aab
+ application/x-authorware-bin
+
+
+ aac
+ audio/x-aac
+
+
+ aam
+ application/x-authorware-map
+
+
+ aas
+ application/x-authorware-seg
+
+
+ abs
+ audio/x-mpeg
+
+
+ abw
+ application/x-abiword
+
+
+ ac
+ application/pkix-attr-cert
+
+
+ acc
+ application/vnd.americandynamics.acc
+
+
+ ace
+ application/x-ace-compressed
+
+
+ acu
+ application/vnd.acucobol
+
+
+ acutc
+ application/vnd.acucorp
+
+
+ adp
+ audio/adpcm
+
+
+ aep
+ application/vnd.audiograph
+
+
+ afm
+ application/x-font-type1
+
+
+ afp
+ application/vnd.ibm.modcap
+
+
+ ahead
+ application/vnd.ahead.space
+
+
+ ai
+ application/postscript
+
+
+ aif
+ audio/x-aiff
+
+
+ aifc
+ audio/x-aiff
+
+
+ aiff
+ audio/x-aiff
+
+
+ aim
+ application/x-aim
+
+
+ air
+ application/vnd.adobe.air-application-installer-package+zip
+
+
+ ait
+ application/vnd.dvb.ait
+
+
+ ami
+ application/vnd.amiga.ami
+
+
+ anx
+ application/annodex
+
+
+ apk
+ application/vnd.android.package-archive
+
+
+ application
+ application/x-ms-application
+
+
+ apr
+ application/vnd.lotus-approach
+
+
+ art
+ image/x-jg
+
+
+ asc
+ application/pgp-signature
+
+
+ asf
+ video/x-ms-asf
+
+
+ asm
+ text/x-asm
+
+
+ aso
+ application/vnd.accpac.simply.aso
+
+
+ asx
+ video/x-ms-asf
+
+
+ atc
+ application/vnd.acucorp
+
+
+ atom
+ application/atom+xml
+
+
+ atomcat
+ application/atomcat+xml
+
+
+ atomsvc
+ application/atomsvc+xml
+
+
+ atx
+ application/vnd.antix.game-component
+
+
+ au
+ audio/basic
+
+
+ avi
+ video/x-msvideo
+
+
+ avx
+ video/x-rad-screenplay
+
+
+ aw
+ application/applixware
+
+
+ axa
+ audio/annodex
+
+
+ axv
+ video/annodex
+
+
+ azf
+ application/vnd.airzip.filesecure.azf
+
+
+ azs
+ application/vnd.airzip.filesecure.azs
+
+
+ azw
+ application/vnd.amazon.ebook
+
+
+ bat
+ application/x-msdownload
+
+
+ bcpio
+ application/x-bcpio
+
+
+ bdf
+ application/x-font-bdf
+
+
+ bdm
+ application/vnd.syncml.dm+wbxml
+
+
+ bed
+ application/vnd.realvnc.bed
+
+
+ bh2
+ application/vnd.fujitsu.oasysprs
+
+
+ bin
+ application/octet-stream
+
+
+ bmi
+ application/vnd.bmi
+
+
+ bmp
+ image/bmp
+
+
+ body
+ text/html
+
+
+ book
+ application/vnd.framemaker
+
+
+ box
+ application/vnd.previewsystems.box
+
+
+ boz
+ application/x-bzip2
+
+
+ bpk
+ application/octet-stream
+
+
+ btif
+ image/prs.btif
+
+
+ bz
+ application/x-bzip
+
+
+ bz2
+ application/x-bzip2
+
+
+ c
+ text/x-c
+
+
+ c11amc
+ application/vnd.cluetrust.cartomobile-config
+
+
+ c11amz
+ application/vnd.cluetrust.cartomobile-config-pkg
+
+
+ c4d
+ application/vnd.clonk.c4group
+
+
+ c4f
+ application/vnd.clonk.c4group
+
+
+ c4g
+ application/vnd.clonk.c4group
+
+
+ c4p
+ application/vnd.clonk.c4group
+
+
+ c4u
+ application/vnd.clonk.c4group
+
+
+ cab
+ application/vnd.ms-cab-compressed
+
+
+ cap
+ application/vnd.tcpdump.pcap
+
+
+ car
+ application/vnd.curl.car
+
+
+ cat
+ application/vnd.ms-pki.seccat
+
+
+ cc
+ text/x-c
+
+
+ cct
+ application/x-director
+
+
+ ccxml
+ application/ccxml+xml
+
+
+ cdbcmsg
+ application/vnd.contact.cmsg
+
+
+ cdf
+ application/x-cdf
+
+
+ cdkey
+ application/vnd.mediastation.cdkey
+
+
+ cdmia
+ application/cdmi-capability
+
+
+ cdmic
+ application/cdmi-container
+
+
+ cdmid
+ application/cdmi-domain
+
+
+ cdmio
+ application/cdmi-object
+
+
+ cdmiq
+ application/cdmi-queue
+
+
+ cdx
+ chemical/x-cdx
+
+
+ cdxml
+ application/vnd.chemdraw+xml
+
+
+ cdy
+ application/vnd.cinderella
+
+
+ cer
+ application/pkix-cert
+
+
+ cgm
+ image/cgm
+
+
+ chat
+ application/x-chat
+
+
+ chm
+ application/vnd.ms-htmlhelp
+
+
+ chrt
+ application/vnd.kde.kchart
+
+
+ cif
+ chemical/x-cif
+
+
+ cii
+ application/vnd.anser-web-certificate-issue-initiation
+
+
+ cil
+ application/vnd.ms-artgalry
+
+
+ cla
+ application/vnd.claymore
+
+
+ class
+ application/java
+
+
+ clkk
+ application/vnd.crick.clicker.keyboard
+
+
+ clkp
+ application/vnd.crick.clicker.palette
+
+
+ clkt
+ application/vnd.crick.clicker.template
+
+
+ clkw
+ application/vnd.crick.clicker.wordbank
+
+
+ clkx
+ application/vnd.crick.clicker
+
+
+ clp
+ application/x-msclip
+
+
+ cmc
+ application/vnd.cosmocaller
+
+
+ cmdf
+ chemical/x-cmdf
+
+
+ cml
+ chemical/x-cml
+
+
+ cmp
+ application/vnd.yellowriver-custom-menu
+
+
+ cmx
+ image/x-cmx
+
+
+ cod
+ application/vnd.rim.cod
+
+
+ com
+ application/x-msdownload
+
+
+ conf
+ text/plain
+
+
+ cpio
+ application/x-cpio
+
+
+ cpp
+ text/x-c
+
+
+ cpt
+ application/mac-compactpro
+
+
+ crd
+ application/x-mscardfile
+
+
+ crl
+ application/pkix-crl
+
+
+ crt
+ application/x-x509-ca-cert
+
+
+ cryptonote
+ application/vnd.rig.cryptonote
+
+
+ csh
+ application/x-csh
+
+
+ csml
+ chemical/x-csml
+
+
+ csp
+ application/vnd.commonspace
+
+
+ css
+ text/css
+
+
+ cst
+ application/x-director
+
+
+ csv
+ text/csv
+
+
+ cu
+ application/cu-seeme
+
+
+ curl
+ text/vnd.curl
+
+
+ cww
+ application/prs.cww
+
+
+ cxt
+ application/x-director
+
+
+ cxx
+ text/x-c
+
+
+ dae
+ model/vnd.collada+xml
+
+
+ daf
+ application/vnd.mobius.daf
+
+
+ dataless
+ application/vnd.fdsn.seed
+
+
+ davmount
+ application/davmount+xml
+
+
+ dcr
+ application/x-director
+
+
+ dcurl
+ text/vnd.curl.dcurl
+
+
+ dd2
+ application/vnd.oma.dd2+xml
+
+
+ ddd
+ application/vnd.fujixerox.ddd
+
+
+ deb
+ application/x-debian-package
+
+
+ def
+ text/plain
+
+
+ deploy
+ application/octet-stream
+
+
+ der
+ application/x-x509-ca-cert
+
+
+ dfac
+ application/vnd.dreamfactory
+
+
+ dib
+ image/bmp
+
+
+ dic
+ text/x-c
+
+
+ dir
+ application/x-director
+
+
+ dis
+ application/vnd.mobius.dis
+
+
+ dist
+ application/octet-stream
+
+
+ distz
+ application/octet-stream
+
+
+ djv
+ image/vnd.djvu
+
+
+ djvu
+ image/vnd.djvu
+
+
+ dll
+ application/x-msdownload
+
+
+ dmg
+ application/octet-stream
+
+
+ dmp
+ application/vnd.tcpdump.pcap
+
+
+ dms
+ application/octet-stream
+
+
+ dna
+ application/vnd.dna
+
+
+ doc
+ application/msword
+
+
+ docm
+ application/vnd.ms-word.document.macroenabled.12
+
+
+ docx
+ application/vnd.openxmlformats-officedocument.wordprocessingml.document
+
+
+ dot
+ application/msword
+
+
+ dotm
+ application/vnd.ms-word.template.macroenabled.12
+
+
+ dotx
+ application/vnd.openxmlformats-officedocument.wordprocessingml.template
+
+
+ dp
+ application/vnd.osgi.dp
+
+
+ dpg
+ application/vnd.dpgraph
+
+
+ dra
+ audio/vnd.dra
+
+
+ dsc
+ text/prs.lines.tag
+
+
+ dssc
+ application/dssc+der
+
+
+ dtb
+ application/x-dtbook+xml
+
+
+ dtd
+ application/xml-dtd
+
+
+ dts
+ audio/vnd.dts
+
+
+ dtshd
+ audio/vnd.dts.hd
+
+
+ dump
+ application/octet-stream
+
+
+ dv
+ video/x-dv
+
+
+ dvb
+ video/vnd.dvb.file
+
+
+ dvi
+ application/x-dvi
+
+
+ dwf
+ model/vnd.dwf
+
+
+ dwg
+ image/vnd.dwg
+
+
+ dxf
+ image/vnd.dxf
+
+
+ dxp
+ application/vnd.spotfire.dxp
+
+
+ dxr
+ application/x-director
+
+
+ ecelp4800
+ audio/vnd.nuera.ecelp4800
+
+
+ ecelp7470
+ audio/vnd.nuera.ecelp7470
+
+
+ ecelp9600
+ audio/vnd.nuera.ecelp9600
+
+
+ ecma
+ application/ecmascript
+
+
+ edm
+ application/vnd.novadigm.edm
+
+
+ edx
+ application/vnd.novadigm.edx
+
+
+ efif
+ application/vnd.picsel
+
+
+ ei6
+ application/vnd.pg.osasli
+
+
+ elc
+ application/octet-stream
+
+
+ eml
+ message/rfc822
+
+
+ emma
+ application/emma+xml
+
+
+ eol
+ audio/vnd.digital-winds
+
+
+ eot
+ application/vnd.ms-fontobject
+
+
+ eps
+ application/postscript
+
+
+ epub
+ application/epub+zip
+
+
+ es3
+ application/vnd.eszigno3+xml
+
+
+ esf
+ application/vnd.epson.esf
+
+
+ et3
+ application/vnd.eszigno3+xml
+
+
+ etx
+ text/x-setext
+
+
+ exe
+ application/octet-stream
+
+
+ exi
+ application/exi
+
+
+ ext
+ application/vnd.novadigm.ext
+
+
+ ez
+ application/andrew-inset
+
+
+ ez2
+ application/vnd.ezpix-album
+
+
+ ez3
+ application/vnd.ezpix-package
+
+
+ f
+ text/x-fortran
+
+
+ f4v
+ video/x-f4v
+
+
+ f77
+ text/x-fortran
+
+
+ f90
+ text/x-fortran
+
+
+ fbs
+ image/vnd.fastbidsheet
+
+
+ fcs
+ application/vnd.isac.fcs
+
+
+ fdf
+ application/vnd.fdf
+
+
+ fe_launch
+ application/vnd.denovo.fcselayout-link
+
+
+ fg5
+ application/vnd.fujitsu.oasysgp
+
+
+ fgd
+ application/x-director
+
+
+ fh
+ image/x-freehand
+
+
+ fh4
+ image/x-freehand
+
+
+ fh5
+ image/x-freehand
+
+
+ fh7
+ image/x-freehand
+
+
+ fhc
+ image/x-freehand
+
+
+ fig
+ application/x-xfig
+
+
+ flac
+ audio/flac
+
+
+ fli
+ video/x-fli
+
+
+ flo
+ application/vnd.micrografx.flo
+
+
+ flv
+ video/x-flv
+
+
+ flw
+ application/vnd.kde.kivio
+
+
+ flx
+ text/vnd.fmi.flexstor
+
+
+ fly
+ text/vnd.fly
+
+
+ fm
+ application/vnd.framemaker
+
+
+ fnc
+ application/vnd.frogans.fnc
+
+
+ for
+ text/x-fortran
+
+
+ fpx
+ image/vnd.fpx
+
+
+ frame
+ application/vnd.framemaker
+
+
+ fsc
+ application/vnd.fsc.weblaunch
+
+
+ fst
+ image/vnd.fst
+
+
+ ftc
+ application/vnd.fluxtime.clip
+
+
+ fti
+ application/vnd.anser-web-funds-transfer-initiation
+
+
+ fvt
+ video/vnd.fvt
+
+
+ fxp
+ application/vnd.adobe.fxp
+
+
+ fxpl
+ application/vnd.adobe.fxp
+
+
+ fzs
+ application/vnd.fuzzysheet
+
+
+ g2w
+ application/vnd.geoplan
+
+
+ g3
+ image/g3fax
+
+
+ g3w
+ application/vnd.geospace
+
+
+ gac
+ application/vnd.groove-account
+
+
+ gbr
+ application/rpki-ghostbusters
+
+
+ gdl
+ model/vnd.gdl
+
+
+ geo
+ application/vnd.dynageo
+
+
+ gex
+ application/vnd.geometry-explorer
+
+
+ ggb
+ application/vnd.geogebra.file
+
+
+ ggt
+ application/vnd.geogebra.tool
+
+
+ ghf
+ application/vnd.groove-help
+
+
+ gif
+ image/gif
+
+
+ gim
+ application/vnd.groove-identity-message
+
+
+ gmx
+ application/vnd.gmx
+
+
+ gnumeric
+ application/x-gnumeric
+
+
+ gph
+ application/vnd.flographit
+
+
+ gqf
+ application/vnd.grafeq
+
+
+ gqs
+ application/vnd.grafeq
+
+
+ gram
+ application/srgs
+
+
+ gre
+ application/vnd.geometry-explorer
+
+
+ grv
+ application/vnd.groove-injector
+
+
+ grxml
+ application/srgs+xml
+
+
+ gsf
+ application/x-font-ghostscript
+
+
+ gtar
+ application/x-gtar
+
+
+ gtm
+ application/vnd.groove-tool-message
+
+
+ gtw
+ model/vnd.gtw
+
+
+ gv
+ text/vnd.graphviz
+
+
+ gxt
+ application/vnd.geonext
+
+
+ gz
+ application/x-gzip
+
+
+ h
+ text/x-c
+
+
+ h261
+ video/h261
+
+
+ h263
+ video/h263
+
+
+ h264
+ video/h264
+
+
+ hal
+ application/vnd.hal+xml
+
+
+ hbci
+ application/vnd.hbci
+
+
+ hdf
+ application/x-hdf
+
+
+ hh
+ text/x-c
+
+
+ hlp
+ application/winhlp
+
+
+ hpgl
+ application/vnd.hp-hpgl
+
+
+ hpid
+ application/vnd.hp-hpid
+
+
+ hps
+ application/vnd.hp-hps
+
+
+ hqx
+ application/mac-binhex40
+
+
+ htc
+ text/x-component
+
+
+ htke
+ application/vnd.kenameaapp
+
+
+ htm
+ text/html
+
+
+ html
+ text/html
+
+
+ hvd
+ application/vnd.yamaha.hv-dic
+
+
+ hvp
+ application/vnd.yamaha.hv-voice
+
+
+ hvs
+ application/vnd.yamaha.hv-script
+
+
+ i2g
+ application/vnd.intergeo
+
+
+ icc
+ application/vnd.iccprofile
+
+
+ ice
+ x-conference/x-cooltalk
+
+
+ icm
+ application/vnd.iccprofile
+
+
+ ico
+ image/x-icon
+
+
+ ics
+ text/calendar
+
+
+ ief
+ image/ief
+
+
+ ifb
+ text/calendar
+
+
+ ifm
+ application/vnd.shana.informed.formdata
+
+
+ iges
+ model/iges
+
+
+ igl
+ application/vnd.igloader
+
+
+ igm
+ application/vnd.insors.igm
+
+
+ igs
+ model/iges
+
+
+ igx
+ application/vnd.micrografx.igx
+
+
+ iif
+ application/vnd.shana.informed.interchange
+
+
+ imp
+ application/vnd.accpac.simply.imp
+
+
+ ims
+ application/vnd.ms-ims
+
+
+ in
+ text/plain
+
+
+ ink
+ application/inkml+xml
+
+
+ inkml
+ application/inkml+xml
+
+
+ iota
+ application/vnd.astraea-software.iota
+
+
+ ipfix
+ application/ipfix
+
+
+ ipk
+ application/vnd.shana.informed.package
+
+
+ irm
+ application/vnd.ibm.rights-management
+
+
+ irp
+ application/vnd.irepository.package+xml
+
+
+ iso
+ application/octet-stream
+
+
+ itp
+ application/vnd.shana.informed.formtemplate
+
+
+ ivp
+ application/vnd.immervision-ivp
+
+
+ ivu
+ application/vnd.immervision-ivu
+
+
+ jad
+ text/vnd.sun.j2me.app-descriptor
+
+
+ jam
+ application/vnd.jam
+
+
+ jar
+ application/java-archive
+
+
+ java
+ text/x-java-source
+
+
+ jisp
+ application/vnd.jisp
+
+
+ jlt
+ application/vnd.hp-jlyt
+
+
+ jnlp
+ application/x-java-jnlp-file
+
+
+ joda
+ application/vnd.joost.joda-archive
+
+
+ jpe
+ image/jpeg
+
+
+ jpeg
+ image/jpeg
+
+
+ jpg
+ image/jpeg
+
+
+ jpgm
+ video/jpm
+
+
+ jpgv
+ video/jpeg
+
+
+ jpm
+ video/jpm
+
+
+ js
+ application/javascript
+
+
+ jsf
+ text/plain
+
+
+ json
+ application/json
+
+
+ jspf
+ text/plain
+
+
+ kar
+ audio/midi
+
+
+ karbon
+ application/vnd.kde.karbon
+
+
+ kfo
+ application/vnd.kde.kformula
+
+
+ kia
+ application/vnd.kidspiration
+
+
+ kml
+ application/vnd.google-earth.kml+xml
+
+
+ kmz
+ application/vnd.google-earth.kmz
+
+
+ kne
+ application/vnd.kinar
+
+
+ knp
+ application/vnd.kinar
+
+
+ kon
+ application/vnd.kde.kontour
+
+
+ kpr
+ application/vnd.kde.kpresenter
+
+
+ kpt
+ application/vnd.kde.kpresenter
+
+
+ ksp
+ application/vnd.kde.kspread
+
+
+ ktr
+ application/vnd.kahootz
+
+
+ ktx
+ image/ktx
+
+
+ ktz
+ application/vnd.kahootz
+
+
+ kwd
+ application/vnd.kde.kword
+
+
+ kwt
+ application/vnd.kde.kword
+
+
+ lasxml
+ application/vnd.las.las+xml
+
+
+ latex
+ application/x-latex
+
+
+ lbd
+ application/vnd.llamagraphics.life-balance.desktop
+
+
+ lbe
+ application/vnd.llamagraphics.life-balance.exchange+xml
+
+
+ les
+ application/vnd.hhe.lesson-player
+
+
+ lha
+ application/octet-stream
+
+
+ link66
+ application/vnd.route66.link66+xml
+
+
+ list
+ text/plain
+
+
+ list3820
+ application/vnd.ibm.modcap
+
+
+ listafp
+ application/vnd.ibm.modcap
+
+
+ log
+ text/plain
+
+
+ lostxml
+ application/lost+xml
+
+
+ lrf
+ application/octet-stream
+
+
+ lrm
+ application/vnd.ms-lrm
+
+
+ ltf
+ application/vnd.frogans.ltf
+
+
+ lvp
+ audio/vnd.lucent.voice
+
+
+ lwp
+ application/vnd.lotus-wordpro
+
+
+ lzh
+ application/octet-stream
+
+
+ m13
+ application/x-msmediaview
+
+
+ m14
+ application/x-msmediaview
+
+
+ m1v
+ video/mpeg
+
+
+ m21
+ application/mp21
+
+
+ m2a
+ audio/mpeg
+
+
+ m2v
+ video/mpeg
+
+
+ m3a
+ audio/mpeg
+
+
+ m3u
+ audio/x-mpegurl
+
+
+ m3u8
+ application/vnd.apple.mpegurl
+
+
+ m4a
+ audio/mp4
+
+
+ m4b
+ audio/mp4
+
+
+ m4r
+ audio/mp4
+
+
+ m4u
+ video/vnd.mpegurl
+
+
+ m4v
+ video/mp4
+
+
+ ma
+ application/mathematica
+
+
+ mac
+ image/x-macpaint
+
+
+ mads
+ application/mads+xml
+
+
+ mag
+ application/vnd.ecowin.chart
+
+
+ maker
+ application/vnd.framemaker
+
+
+ man
+ text/troff
+
+
+ mathml
+ application/mathml+xml
+
+
+ mb
+ application/mathematica
+
+
+ mbk
+ application/vnd.mobius.mbk
+
+
+ mbox
+ application/mbox
+
+
+ mc1
+ application/vnd.medcalcdata
+
+
+ mcd
+ application/vnd.mcd
+
+
+ mcurl
+ text/vnd.curl.mcurl
+
+
+ mdb
+ application/x-msaccess
+
+
+ mdi
+ image/vnd.ms-modi
+
+
+ me
+ text/troff
+
+
+ mesh
+ model/mesh
+
+
+ meta4
+ application/metalink4+xml
+
+
+ mets
+ application/mets+xml
+
+
+ mfm
+ application/vnd.mfmp
+
+
+ mft
+ application/rpki-manifest
+
+
+ mgp
+ application/vnd.osgeo.mapguide.package
+
+
+ mgz
+ application/vnd.proteus.magazine
+
+
+ mid
+ audio/midi
+
+
+ midi
+ audio/midi
+
+
+ mif
+ application/x-mif
+
+
+ mime
+ message/rfc822
+
+
+ mj2
+ video/mj2
+
+
+ mjp2
+ video/mj2
+
+
+ mlp
+ application/vnd.dolby.mlp
+
+
+ mmd
+ application/vnd.chipnuts.karaoke-mmd
+
+
+ mmf
+ application/vnd.smaf
+
+
+ mmr
+ image/vnd.fujixerox.edmics-mmr
+
+
+ mny
+ application/x-msmoney
+
+
+ mobi
+ application/x-mobipocket-ebook
+
+
+ mods
+ application/mods+xml
+
+
+ mov
+ video/quicktime
+
+
+ movie
+ video/x-sgi-movie
+
+
+ mp1
+ audio/mpeg
+
+
+ mp2
+ audio/mpeg
+
+
+ mp21
+ application/mp21
+
+
+ mp2a
+ audio/mpeg
+
+
+ mp3
+ audio/mpeg
+
+
+ mp4
+ video/mp4
+
+
+ mp4a
+ audio/mp4
+
+
+ mp4s
+ application/mp4
+
+
+ mp4v
+ video/mp4
+
+
+ mpa
+ audio/mpeg
+
+
+ mpc
+ application/vnd.mophun.certificate
+
+
+ mpe
+ video/mpeg
+
+
+ mpeg
+ video/mpeg
+
+
+ mpega
+ audio/x-mpeg
+
+
+ mpg
+ video/mpeg
+
+
+ mpg4
+ video/mp4
+
+
+ mpga
+ audio/mpeg
+
+
+ mpkg
+ application/vnd.apple.installer+xml
+
+
+ mpm
+ application/vnd.blueice.multipass
+
+
+ mpn
+ application/vnd.mophun.application
+
+
+ mpp
+ application/vnd.ms-project
+
+
+ mpt
+ application/vnd.ms-project
+
+
+ mpv2
+ video/mpeg2
+
+
+ mpy
+ application/vnd.ibm.minipay
+
+
+ mqy
+ application/vnd.mobius.mqy
+
+
+ mrc
+ application/marc
+
+
+ mrcx
+ application/marcxml+xml
+
+
+ ms
+ text/troff
+
+
+ mscml
+ application/mediaservercontrol+xml
+
+
+ mseed
+ application/vnd.fdsn.mseed
+
+
+ mseq
+ application/vnd.mseq
+
+
+ msf
+ application/vnd.epson.msf
+
+
+ msh
+ model/mesh
+
+
+ msi
+ application/x-msdownload
+
+
+ msl
+ application/vnd.mobius.msl
+
+
+ msty
+ application/vnd.muvee.style
+
+
+ mts
+ model/vnd.mts
+
+
+ mus
+ application/vnd.musician
+
+
+ musicxml
+ application/vnd.recordare.musicxml+xml
+
+
+ mvb
+ application/x-msmediaview
+
+
+ mwf
+ application/vnd.mfer
+
+
+ mxf
+ application/mxf
+
+
+ mxl
+ application/vnd.recordare.musicxml
+
+
+ mxml
+ application/xv+xml
+
+
+ mxs
+ application/vnd.triscape.mxs
+
+
+ mxu
+ video/vnd.mpegurl
+
+
+ n-gage
+ application/vnd.nokia.n-gage.symbian.install
+
+
+ n3
+ text/n3
+
+
+ nb
+ application/mathematica
+
+
+ nbp
+ application/vnd.wolfram.player
+
+
+ nc
+ application/x-netcdf
+
+
+ ncx
+ application/x-dtbncx+xml
+
+
+ ngdat
+ application/vnd.nokia.n-gage.data
+
+
+ nlu
+ application/vnd.neurolanguage.nlu
+
+
+ nml
+ application/vnd.enliven
+
+
+ nnd
+ application/vnd.noblenet-directory
+
+
+ nns
+ application/vnd.noblenet-sealer
+
+
+ nnw
+ application/vnd.noblenet-web
+
+
+ npx
+ image/vnd.net-fpx
+
+
+ nsf
+ application/vnd.lotus-notes
+
+
+ oa2
+ application/vnd.fujitsu.oasys2
+
+
+ oa3
+ application/vnd.fujitsu.oasys3
+
+
+ oas
+ application/vnd.fujitsu.oasys
+
+
+ obd
+ application/x-msbinder
+
+
+ oda
+ application/oda
+
+
+
+ odb
+ application/vnd.oasis.opendocument.database
+
+
+
+ odc
+ application/vnd.oasis.opendocument.chart
+
+
+
+ odf
+ application/vnd.oasis.opendocument.formula
+
+
+ odft
+ application/vnd.oasis.opendocument.formula-template
+
+
+
+ odg
+ application/vnd.oasis.opendocument.graphics
+
+
+
+ odi
+ application/vnd.oasis.opendocument.image
+
+
+
+ odm
+ application/vnd.oasis.opendocument.text-master
+
+
+
+ odp
+ application/vnd.oasis.opendocument.presentation
+
+
+
+ ods
+ application/vnd.oasis.opendocument.spreadsheet
+
+
+
+ odt
+ application/vnd.oasis.opendocument.text
+
+
+ oga
+ audio/ogg
+
+
+ ogg
+ audio/ogg
+
+
+ ogv
+ video/ogg
+
+
+
+ ogx
+ application/ogg
+
+
+ onepkg
+ application/onenote
+
+
+ onetmp
+ application/onenote
+
+
+ onetoc
+ application/onenote
+
+
+ onetoc2
+ application/onenote
+
+
+ opf
+ application/oebps-package+xml
+
+
+ oprc
+ application/vnd.palm
+
+
+ org
+ application/vnd.lotus-organizer
+
+
+ osf
+ application/vnd.yamaha.openscoreformat
+
+
+ osfpvg
+ application/vnd.yamaha.openscoreformat.osfpvg+xml
+
+
+ otc
+ application/vnd.oasis.opendocument.chart-template
+
+
+ otf
+ application/x-font-otf
+
+
+
+ otg
+ application/vnd.oasis.opendocument.graphics-template
+
+
+
+ oth
+ application/vnd.oasis.opendocument.text-web
+
+
+ oti
+ application/vnd.oasis.opendocument.image-template
+
+
+
+ otp
+ application/vnd.oasis.opendocument.presentation-template
+
+
+
+ ots
+ application/vnd.oasis.opendocument.spreadsheet-template
+
+
+
+ ott
+ application/vnd.oasis.opendocument.text-template
+
+
+ oxps
+ application/oxps
+
+
+ oxt
+ application/vnd.openofficeorg.extension
+
+
+ p
+ text/x-pascal
+
+
+ p10
+ application/pkcs10
+
+
+ p12
+ application/x-pkcs12
+
+
+ p7b
+ application/x-pkcs7-certificates
+
+
+ p7c
+ application/pkcs7-mime
+
+
+ p7m
+ application/pkcs7-mime
+
+
+ p7r
+ application/x-pkcs7-certreqresp
+
+
+ p7s
+ application/pkcs7-signature
+
+
+ p8
+ application/pkcs8
+
+
+ pas
+ text/x-pascal
+
+
+ paw
+ application/vnd.pawaafile
+
+
+ pbd
+ application/vnd.powerbuilder6
+
+
+ pbm
+ image/x-portable-bitmap
+
+
+ pcap
+ application/vnd.tcpdump.pcap
+
+
+ pcf
+ application/x-font-pcf
+
+
+ pcl
+ application/vnd.hp-pcl
+
+
+ pclxl
+ application/vnd.hp-pclxl
+
+
+ pct
+ image/pict
+
+
+ pcurl
+ application/vnd.curl.pcurl
+
+
+ pcx
+ image/x-pcx
+
+
+ pdb
+ application/vnd.palm
+
+
+ pdf
+ application/pdf
+
+
+ pfa
+ application/x-font-type1
+
+
+ pfb
+ application/x-font-type1
+
+
+ pfm
+ application/x-font-type1
+
+
+ pfr
+ application/font-tdpfr
+
+
+ pfx
+ application/x-pkcs12
+
+
+ pgm
+ image/x-portable-graymap
+
+
+ pgn
+ application/x-chess-pgn
+
+
+ pgp
+ application/pgp-encrypted
+
+
+ pic
+ image/pict
+
+
+ pict
+ image/pict
+
+
+ pkg
+ application/octet-stream
+
+
+ pki
+ application/pkixcmp
+
+
+ pkipath
+ application/pkix-pkipath
+
+
+ plb
+ application/vnd.3gpp.pic-bw-large
+
+
+ plc
+ application/vnd.mobius.plc
+
+
+ plf
+ application/vnd.pocketlearn
+
+
+ pls
+ audio/x-scpls
+
+
+ pml
+ application/vnd.ctc-posml
+
+
+ png
+ image/png
+
+
+ pnm
+ image/x-portable-anymap
+
+
+ pnt
+ image/x-macpaint
+
+
+ portpkg
+ application/vnd.macports.portpkg
+
+
+ pot
+ application/vnd.ms-powerpoint
+
+
+ potm
+ application/vnd.ms-powerpoint.template.macroenabled.12
+
+
+ potx
+ application/vnd.openxmlformats-officedocument.presentationml.template
+
+
+ ppam
+ application/vnd.ms-powerpoint.addin.macroenabled.12
+
+
+ ppd
+ application/vnd.cups-ppd
+
+
+ ppm
+ image/x-portable-pixmap
+
+
+ pps
+ application/vnd.ms-powerpoint
+
+
+ ppsm
+ application/vnd.ms-powerpoint.slideshow.macroenabled.12
+
+
+ ppsx
+ application/vnd.openxmlformats-officedocument.presentationml.slideshow
+
+
+ ppt
+ application/vnd.ms-powerpoint
+
+
+ pptm
+ application/vnd.ms-powerpoint.presentation.macroenabled.12
+
+
+ pptx
+ application/vnd.openxmlformats-officedocument.presentationml.presentation
+
+
+ pqa
+ application/vnd.palm
+
+
+ prc
+ application/x-mobipocket-ebook
+
+
+ pre
+ application/vnd.lotus-freelance
+
+
+ prf
+ application/pics-rules
+
+
+ ps
+ application/postscript
+
+
+ psb
+ application/vnd.3gpp.pic-bw-small
+
+
+ psd
+ image/vnd.adobe.photoshop
+
+
+ psf
+ application/x-font-linux-psf
+
+
+ pskcxml
+ application/pskc+xml
+
+
+ ptid
+ application/vnd.pvi.ptid1
+
+
+ pub
+ application/x-mspublisher
+
+
+ pvb
+ application/vnd.3gpp.pic-bw-var
+
+
+ pwn
+ application/vnd.3m.post-it-notes
+
+
+ pya
+ audio/vnd.ms-playready.media.pya
+
+
+ pyv
+ video/vnd.ms-playready.media.pyv
+
+
+ qam
+ application/vnd.epson.quickanime
+
+
+ qbo
+ application/vnd.intu.qbo
+
+
+ qfx
+ application/vnd.intu.qfx
+
+
+ qps
+ application/vnd.publishare-delta-tree
+
+
+ qt
+ video/quicktime
+
+
+ qti
+ image/x-quicktime
+
+
+ qtif
+ image/x-quicktime
+
+
+ qwd
+ application/vnd.quark.quarkxpress
+
+
+ qwt
+ application/vnd.quark.quarkxpress
+
+
+ qxb
+ application/vnd.quark.quarkxpress
+
+
+ qxd
+ application/vnd.quark.quarkxpress
+
+
+ qxl
+ application/vnd.quark.quarkxpress
+
+
+ qxt
+ application/vnd.quark.quarkxpress
+
+
+ ra
+ audio/x-pn-realaudio
+
+
+ ram
+ audio/x-pn-realaudio
+
+
+ rar
+ application/x-rar-compressed
+
+
+ ras
+ image/x-cmu-raster
+
+
+ rcprofile
+ application/vnd.ipunplugged.rcprofile
+
+
+ rdf
+ application/rdf+xml
+
+
+ rdz
+ application/vnd.data-vision.rdz
+
+
+ rep
+ application/vnd.businessobjects
+
+
+ res
+ application/x-dtbresource+xml
+
+
+ rgb
+ image/x-rgb
+
+
+ rif
+ application/reginfo+xml
+
+
+ rip
+ audio/vnd.rip
+
+
+ rl
+ application/resource-lists+xml
+
+
+ rlc
+ image/vnd.fujixerox.edmics-rlc
+
+
+ rld
+ application/resource-lists-diff+xml
+
+
+ rm
+ application/vnd.rn-realmedia
+
+
+ rmi
+ audio/midi
+
+
+ rmp
+ audio/x-pn-realaudio-plugin
+
+
+ rms
+ application/vnd.jcp.javame.midlet-rms
+
+
+ rnc
+ application/relax-ng-compact-syntax
+
+
+ roa
+ application/rpki-roa
+
+
+ roff
+ text/troff
+
+
+ rp9
+ application/vnd.cloanto.rp9
+
+
+ rpss
+ application/vnd.nokia.radio-presets
+
+
+ rpst
+ application/vnd.nokia.radio-preset
+
+
+ rq
+ application/sparql-query
+
+
+ rs
+ application/rls-services+xml
+
+
+ rsd
+ application/rsd+xml
+
+
+ rss
+ application/rss+xml
+
+
+ rtf
+ application/rtf
+
+
+ rtx
+ text/richtext
+
+
+ s
+ text/x-asm
+
+
+ saf
+ application/vnd.yamaha.smaf-audio
+
+
+ sbml
+ application/sbml+xml
+
+
+ sc
+ application/vnd.ibm.secure-container
+
+
+ scd
+ application/x-msschedule
+
+
+ scm
+ application/vnd.lotus-screencam
+
+
+ scq
+ application/scvp-cv-request
+
+
+ scs
+ application/scvp-cv-response
+
+
+ scurl
+ text/vnd.curl.scurl
+
+
+ sda
+ application/vnd.stardivision.draw
+
+
+ sdc
+ application/vnd.stardivision.calc
+
+
+ sdd
+ application/vnd.stardivision.impress
+
+
+ sdkd
+ application/vnd.solent.sdkm+xml
+
+
+ sdkm
+ application/vnd.solent.sdkm+xml
+
+
+ sdp
+ application/sdp
+
+
+ sdw
+ application/vnd.stardivision.writer
+
+
+ see
+ application/vnd.seemail
+
+
+ seed
+ application/vnd.fdsn.seed
+
+
+ sema
+ application/vnd.sema
+
+
+ semd
+ application/vnd.semd
+
+
+ semf
+ application/vnd.semf
+
+
+ ser
+ application/java-serialized-object
+
+
+ setpay
+ application/set-payment-initiation
+
+
+ setreg
+ application/set-registration-initiation
+
+
+ sfd-hdstx
+ application/vnd.hydrostatix.sof-data
+
+
+ sfs
+ application/vnd.spotfire.sfs
+
+
+ sgl
+ application/vnd.stardivision.writer-global
+
+
+ sgm
+ text/sgml
+
+
+ sgml
+ text/sgml
+
+
+ sh
+ application/x-sh
+
+
+ shar
+ application/x-shar
+
+
+ shf
+ application/shf+xml
+
+
+
+ sig
+ application/pgp-signature
+
+
+ silo
+ model/mesh
+
+
+ sis
+ application/vnd.symbian.install
+
+
+ sisx
+ application/vnd.symbian.install
+
+
+ sit
+ application/x-stuffit
+
+
+ sitx
+ application/x-stuffitx
+
+
+ skd
+ application/vnd.koan
+
+
+ skm
+ application/vnd.koan
+
+
+ skp
+ application/vnd.koan
+
+
+ skt
+ application/vnd.koan
+
+
+ sldm
+ application/vnd.ms-powerpoint.slide.macroenabled.12
+
+
+ sldx
+ application/vnd.openxmlformats-officedocument.presentationml.slide
+
+
+ slt
+ application/vnd.epson.salt
+
+
+ sm
+ application/vnd.stepmania.stepchart
+
+
+ smf
+ application/vnd.stardivision.math
+
+
+ smi
+ application/smil+xml
+
+
+ smil
+ application/smil+xml
+
+
+ smzip
+ application/vnd.stepmania.package
+
+
+ snd
+ audio/basic
+
+
+ snf
+ application/x-font-snf
+
+
+ so
+ application/octet-stream
+
+
+ spc
+ application/x-pkcs7-certificates
+
+
+ spf
+ application/vnd.yamaha.smaf-phrase
+
+
+ spl
+ application/x-futuresplash
+
+
+ spot
+ text/vnd.in3d.spot
+
+
+ spp
+ application/scvp-vp-response
+
+
+ spq
+ application/scvp-vp-request
+
+
+ spx
+ audio/ogg
+
+
+ src
+ application/x-wais-source
+
+
+ sru
+ application/sru+xml
+
+
+ srx
+ application/sparql-results+xml
+
+
+ sse
+ application/vnd.kodak-descriptor
+
+
+ ssf
+ application/vnd.epson.ssf
+
+
+ ssml
+ application/ssml+xml
+
+
+ st
+ application/vnd.sailingtracker.track
+
+
+ stc
+ application/vnd.sun.xml.calc.template
+
+
+ std
+ application/vnd.sun.xml.draw.template
+
+
+ stf
+ application/vnd.wt.stf
+
+
+ sti
+ application/vnd.sun.xml.impress.template
+
+
+ stk
+ application/hyperstudio
+
+
+ stl
+ application/vnd.ms-pki.stl
+
+
+ str
+ application/vnd.pg.format
+
+
+ stw
+ application/vnd.sun.xml.writer.template
+
+
+ sub
+ text/vnd.dvb.subtitle
+
+
+ sus
+ application/vnd.sus-calendar
+
+
+ susp
+ application/vnd.sus-calendar
+
+
+ sv4cpio
+ application/x-sv4cpio
+
+
+ sv4crc
+ application/x-sv4crc
+
+
+ svc
+ application/vnd.dvb.service
+
+
+ svd
+ application/vnd.svd
+
+
+ svg
+ image/svg+xml
+
+
+ svgz
+ image/svg+xml
+
+
+ swa
+ application/x-director
+
+
+ swf
+ application/x-shockwave-flash
+
+
+ swi
+ application/vnd.aristanetworks.swi
+
+
+ sxc
+ application/vnd.sun.xml.calc
+
+
+ sxd
+ application/vnd.sun.xml.draw
+
+
+ sxg
+ application/vnd.sun.xml.writer.global
+
+
+ sxi
+ application/vnd.sun.xml.impress
+
+
+ sxm
+ application/vnd.sun.xml.math
+
+
+ sxw
+ application/vnd.sun.xml.writer
+
+
+ t
+ text/troff
+
+
+ taglet
+ application/vnd.mynfc
+
+
+ tao
+ application/vnd.tao.intent-module-archive
+
+
+ tar
+ application/x-tar
+
+
+ tcap
+ application/vnd.3gpp2.tcap
+
+
+ tcl
+ application/x-tcl
+
+
+ teacher
+ application/vnd.smart.teacher
+
+
+ tei
+ application/tei+xml
+
+
+ teicorpus
+ application/tei+xml
+
+
+ tex
+ application/x-tex
+
+
+ texi
+ application/x-texinfo
+
+
+ texinfo
+ application/x-texinfo
+
+
+ text
+ text/plain
+
+
+ tfi
+ application/thraud+xml
+
+
+ tfm
+ application/x-tex-tfm
+
+
+ thmx
+ application/vnd.ms-officetheme
+
+
+ tif
+ image/tiff
+
+
+ tiff
+ image/tiff
+
+
+ tmo
+ application/vnd.tmobile-livetv
+
+
+ torrent
+ application/x-bittorrent
+
+
+ tpl
+ application/vnd.groove-tool-template
+
+
+ tpt
+ application/vnd.trid.tpt
+
+
+ tr
+ text/troff
+
+
+ tra
+ application/vnd.trueapp
+
+
+ trm
+ application/x-msterminal
+
+
+ tsd
+ application/timestamped-data
+
+
+ tsv
+ text/tab-separated-values
+
+
+ ttc
+ application/x-font-ttf
+
+
+ ttf
+ application/x-font-ttf
+
+
+ ttl
+ text/turtle
+
+
+ twd
+ application/vnd.simtech-mindmapper
+
+
+ twds
+ application/vnd.simtech-mindmapper
+
+
+ txd
+ application/vnd.genomatix.tuxedo
+
+
+ txf
+ application/vnd.mobius.txf
+
+
+ txt
+ text/plain
+
+
+ u32
+ application/x-authorware-bin
+
+
+ udeb
+ application/x-debian-package
+
+
+ ufd
+ application/vnd.ufdl
+
+
+ ufdl
+ application/vnd.ufdl
+
+
+ ulw
+ audio/basic
+
+
+ umj
+ application/vnd.umajin
+
+
+ unityweb
+ application/vnd.unity
+
+
+ uoml
+ application/vnd.uoml+xml
+
+
+ uri
+ text/uri-list
+
+
+ uris
+ text/uri-list
+
+
+ urls
+ text/uri-list
+
+
+ ustar
+ application/x-ustar
+
+
+ utz
+ application/vnd.uiq.theme
+
+
+ uu
+ text/x-uuencode
+
+
+ uva
+ audio/vnd.dece.audio
+
+
+ uvd
+ application/vnd.dece.data
+
+
+ uvf
+ application/vnd.dece.data
+
+
+ uvg
+ image/vnd.dece.graphic
+
+
+ uvh
+ video/vnd.dece.hd
+
+
+ uvi
+ image/vnd.dece.graphic
+
+
+ uvm
+ video/vnd.dece.mobile
+
+
+ uvp
+ video/vnd.dece.pd
+
+
+ uvs
+ video/vnd.dece.sd
+
+
+ uvt
+ application/vnd.dece.ttml+xml
+
+
+ uvu
+ video/vnd.uvvu.mp4
+
+
+ uvv
+ video/vnd.dece.video
+
+
+ uvva
+ audio/vnd.dece.audio
+
+
+ uvvd
+ application/vnd.dece.data
+
+
+ uvvf
+ application/vnd.dece.data
+
+
+ uvvg
+ image/vnd.dece.graphic
+
+
+ uvvh
+ video/vnd.dece.hd
+
+
+ uvvi
+ image/vnd.dece.graphic
+
+
+ uvvm
+ video/vnd.dece.mobile
+
+
+ uvvp
+ video/vnd.dece.pd
+
+
+ uvvs
+ video/vnd.dece.sd
+
+
+ uvvt
+ application/vnd.dece.ttml+xml
+
+
+ uvvu
+ video/vnd.uvvu.mp4
+
+
+ uvvv
+ video/vnd.dece.video
+
+
+ uvvx
+ application/vnd.dece.unspecified
+
+
+ uvvz
+ application/vnd.dece.zip
+
+
+ uvx
+ application/vnd.dece.unspecified
+
+
+ uvz
+ application/vnd.dece.zip
+
+
+ vcard
+ text/vcard
+
+
+ vcd
+ application/x-cdlink
+
+
+ vcf
+ text/x-vcard
+
+
+ vcg
+ application/vnd.groove-vcard
+
+
+ vcs
+ text/x-vcalendar
+
+
+ vcx
+ application/vnd.vcx
+
+
+ vis
+ application/vnd.visionary
+
+
+ viv
+ video/vnd.vivo
+
+
+ vor
+ application/vnd.stardivision.writer
+
+
+ vox
+ application/x-authorware-bin
+
+
+ vrml
+ model/vrml
+
+
+ vsd
+ application/vnd.visio
+
+
+ vsf
+ application/vnd.vsf
+
+
+ vss
+ application/vnd.visio
+
+
+ vst
+ application/vnd.visio
+
+
+ vsw
+ application/vnd.visio
+
+
+ vtu
+ model/vnd.vtu
+
+
+ vxml
+ application/voicexml+xml
+
+
+ w3d
+ application/x-director
+
+
+ wad
+ application/x-doom
+
+
+ wav
+ audio/x-wav
+
+
+ wax
+ audio/x-ms-wax
+
+
+
+ wbmp
+ image/vnd.wap.wbmp
+
+
+ wbs
+ application/vnd.criticaltools.wbs+xml
+
+
+ wbxml
+ application/vnd.wap.wbxml
+
+
+ wcm
+ application/vnd.ms-works
+
+
+ wdb
+ application/vnd.ms-works
+
+
+ weba
+ audio/webm
+
+
+ webm
+ video/webm
+
+
+ webp
+ image/webp
+
+
+ wg
+ application/vnd.pmi.widget
+
+
+ wgt
+ application/widget
+
+
+ wks
+ application/vnd.ms-works
+
+
+ wm
+ video/x-ms-wm
+
+
+ wma
+ audio/x-ms-wma
+
+
+ wmd
+ application/x-ms-wmd
+
+
+ wmf
+ application/x-msmetafile
+
+
+
+ wml
+ text/vnd.wap.wml
+
+
+
+ wmlc
+ application/vnd.wap.wmlc
+
+
+
+ wmls
+ text/vnd.wap.wmlscript
+
+
+
+ wmlsc
+ application/vnd.wap.wmlscriptc
+
+
+ wmv
+ video/x-ms-wmv
+
+
+ wmx
+ video/x-ms-wmx
+
+
+ wmz
+ application/x-ms-wmz
+
+
+ woff
+ application/x-font-woff
+
+
+ wpd
+ application/vnd.wordperfect
+
+
+ wpl
+ application/vnd.ms-wpl
+
+
+ wps
+ application/vnd.ms-works
+
+
+ wqd
+ application/vnd.wqd
+
+
+ wri
+ application/x-mswrite
+
+
+ wrl
+ model/vrml
+
+
+ wsdl
+ application/wsdl+xml
+
+
+ wspolicy
+ application/wspolicy+xml
+
+
+ wtb
+ application/vnd.webturbo
+
+
+ wvx
+ video/x-ms-wvx
+
+
+ x32
+ application/x-authorware-bin
+
+
+ x3d
+ application/vnd.hzn-3d-crossword
+
+
+ xap
+ application/x-silverlight-app
+
+
+ xar
+ application/vnd.xara
+
+
+ xbap
+ application/x-ms-xbap
+
+
+ xbd
+ application/vnd.fujixerox.docuworks.binder
+
+
+ xbm
+ image/x-xbitmap
+
+
+ xdf
+ application/xcap-diff+xml
+
+
+ xdm
+ application/vnd.syncml.dm+xml
+
+
+ xdp
+ application/vnd.adobe.xdp+xml
+
+
+ xdssc
+ application/dssc+xml
+
+
+ xdw
+ application/vnd.fujixerox.docuworks
+
+
+ xenc
+ application/xenc+xml
+
+
+ xer
+ application/patch-ops-error+xml
+
+
+ xfdf
+ application/vnd.adobe.xfdf
+
+
+ xfdl
+ application/vnd.xfdl
+
+
+ xht
+ application/xhtml+xml
+
+
+ xhtml
+ application/xhtml+xml
+
+
+ xhvml
+ application/xv+xml
+
+
+ xif
+ image/vnd.xiff
+
+
+ xla
+ application/vnd.ms-excel
+
+
+ xlam
+ application/vnd.ms-excel.addin.macroenabled.12
+
+
+ xlc
+ application/vnd.ms-excel
+
+
+ xlm
+ application/vnd.ms-excel
+
+
+ xls
+ application/vnd.ms-excel
+
+
+ xlsb
+ application/vnd.ms-excel.sheet.binary.macroenabled.12
+
+
+ xlsm
+ application/vnd.ms-excel.sheet.macroenabled.12
+
+
+ xlsx
+ application/vnd.openxmlformats-officedocument.spreadsheetml.sheet
+
+
+ xlt
+ application/vnd.ms-excel
+
+
+ xltm
+ application/vnd.ms-excel.template.macroenabled.12
+
+
+ xltx
+ application/vnd.openxmlformats-officedocument.spreadsheetml.template
+
+
+ xlw
+ application/vnd.ms-excel
+
+
+ xml
+ application/xml
+
+
+ xo
+ application/vnd.olpc-sugar
+
+
+ xop
+ application/xop+xml
+
+
+ xpi
+ application/x-xpinstall
+
+
+ xpm
+ image/x-xpixmap
+
+
+ xpr
+ application/vnd.is-xpr
+
+
+ xps
+ application/vnd.ms-xpsdocument
+
+
+ xpw
+ application/vnd.intercon.formnet
+
+
+ xpx
+ application/vnd.intercon.formnet
+
+
+ xsl
+ application/xml
+
+
+ xslt
+ application/xslt+xml
+
+
+ xsm
+ application/vnd.syncml+xml
+
+
+ xspf
+ application/xspf+xml
+
+
+ xul
+ application/vnd.mozilla.xul+xml
+
+
+ xvm
+ application/xv+xml
+
+
+ xvml
+ application/xv+xml
+
+
+ xwd
+ image/x-xwindowdump
+
+
+ xyz
+ chemical/x-xyz
+
+
+ yang
+ application/yang
+
+
+ yin
+ application/yin+xml
+
+
+ z
+ application/x-compress
+
+
+ Z
+ application/x-compress
+
+
+ zaz
+ application/vnd.zzazz.deck+xml
+
+
+ zip
+ application/zip
+
+
+ zir
+ application/vnd.zul
+
+
+ zirz
+ application/vnd.zul
+
+
+ zmm
+ application/vnd.handheld-entertainment+xml
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ index.html
+ index.htm
+ index.jsp
+
+
+
diff --git "a/04 \346\235\216\346\230\216\345\201\245/20240104 SpringMVC\346\225\264\345\220\210Mybatis/spring_MVC_02/target/tomcat/logs/access_log.2024-01-02" "b/04 \346\235\216\346\230\216\345\201\245/20240104 SpringMVC\346\225\264\345\220\210Mybatis/spring_MVC_02/target/tomcat/logs/access_log.2024-01-02"
new file mode 100644
index 0000000..2f95951
--- /dev/null
+++ "b/04 \346\235\216\346\230\216\345\201\245/20240104 SpringMVC\346\225\264\345\220\210Mybatis/spring_MVC_02/target/tomcat/logs/access_log.2024-01-02"
@@ -0,0 +1,37 @@
+0:0:0:0:0:0:0:1 - - [02/Jan/2024:09:48:57 +0800] "GET / HTTP/1.1" 200 57 http-bio-80-exec-1 1607
+0:0:0:0:0:0:0:1 - - [02/Jan/2024:09:48:57 +0800] "GET / HTTP/1.1" 200 57 http-bio-80-exec-3 1
+0:0:0:0:0:0:0:1 - - [02/Jan/2024:09:48:58 +0800] "GET /favicon.ico HTTP/1.1" 404 973 http-bio-80-exec-4 6
+0:0:0:0:0:0:0:1 - - [02/Jan/2024:11:03:06 +0800] "GET / HTTP/1.1" 200 57 http-bio-80-exec-2 195
+0:0:0:0:0:0:0:1 - - [02/Jan/2024:11:03:06 +0800] "GET / HTTP/1.1" 200 57 http-bio-80-exec-3 1
+0:0:0:0:0:0:0:1 - - [02/Jan/2024:11:03:06 +0800] "GET /favicon.ico HTTP/1.1" 404 949 http-bio-80-exec-4 35
+0:0:0:0:0:0:0:1 - - [02/Jan/2024:11:03:06 +0800] "GET /favicon.ico HTTP/1.1" 404 949 http-bio-80-exec-5 1
+0:0:0:0:0:0:0:1 - - [02/Jan/2024:11:03:07 +0800] "GET / HTTP/1.1" 200 57 http-bio-80-exec-6 1
+0:0:0:0:0:0:0:1 - - [02/Jan/2024:11:03:07 +0800] "GET / HTTP/1.1" 200 57 http-bio-80-exec-7 0
+0:0:0:0:0:0:0:1 - - [02/Jan/2024:11:03:14 +0800] "GET /save HTTP/1.1" 404 949 http-bio-80-exec-9 3
+0:0:0:0:0:0:0:1 - - [02/Jan/2024:11:04:51 +0800] "GET / HTTP/1.1" 200 57 http-bio-80-exec-1 210
+0:0:0:0:0:0:0:1 - - [02/Jan/2024:11:04:51 +0800] "GET / HTTP/1.1" 200 57 http-bio-80-exec-3 1
+0:0:0:0:0:0:0:1 - - [02/Jan/2024:11:05:03 +0800] "GET /save HTTP/1.1" 200 18 http-bio-80-exec-4 116
+0:0:0:0:0:0:0:1 - - [02/Jan/2024:11:11:43 +0800] "GET /save HTTP/1.1" 200 18 http-bio-80-exec-7 3
+0:0:0:0:0:0:0:1 - - [02/Jan/2024:11:13:24 +0800] "GET /user HTTP/1.1" 404 949 http-bio-80-exec-10 4
+0:0:0:0:0:0:0:1 - - [02/Jan/2024:11:15:23 +0800] "GET /user?userName=xiaoming&password=123456 HTTP/1.1" 404 949 http-bio-80-exec-4 2
+0:0:0:0:0:0:0:1 - - [02/Jan/2024:11:17:04 +0800] "GET /user?userName=xiaoming&password=123456 HTTP/1.1" 200 44 http-bio-80-exec-2 190
+0:0:0:0:0:0:0:1 - - [02/Jan/2024:11:20:28 +0800] "GET /hobby?hobby=111&hobby=2222&hobby=333&hobby=444&hobby=555 HTTP/1.1" 404 949 http-bio-80-exec-5 8
+0:0:0:0:0:0:0:1 - - [02/Jan/2024:11:24:55 +0800] "GET /hobbyArr?hobby=111&hobby=2222&hobby=333&hobby=444&hobby=555 HTTP/1.1" 200 28 http-bio-80-exec-2 161
+0:0:0:0:0:0:0:1 - - [02/Jan/2024:11:25:11 +0800] "GET /hobbyList?hobby=111&hobby=2222&hobby=333&hobby=444&hobby=555 HTTP/1.1" 500 6377 http-bio-80-exec-3 14
+0:0:0:0:0:0:0:1 - - [02/Jan/2024:11:25:54 +0800] "GET /hobbyArr?hobby=111&hobby=2222&hobby=333&hobby=444&hobby=555 HTTP/1.1" 200 28 http-bio-80-exec-5 4
+0:0:0:0:0:0:0:1 - - [02/Jan/2024:11:27:09 +0800] "GET /hobbyArr?hobby=111&hobby=2222&hobby=333&hobby=444&hobby=555 HTTP/1.1" 200 28 http-bio-80-exec-2 160
+0:0:0:0:0:0:0:1 - - [02/Jan/2024:11:28:04 +0800] "GET /hobbyList?hobby=111&hobby=2222&hobby=333&hobby=444&hobby=555 HTTP/1.1" 500 6377 http-bio-80-exec-2 123
+0:0:0:0:0:0:0:1 - - [02/Jan/2024:11:28:18 +0800] "GET /hobbyArr?hobby=111&hobby=2222&hobby=333&hobby=444&hobby=555 HTTP/1.1" 200 26 http-bio-80-exec-4 72
+0:0:0:0:0:0:0:1 - - [02/Jan/2024:11:29:41 +0800] "GET /hobbyList?hobby=111&hobby=2222&hobby=333&hobby=444&hobby=555 HTTP/1.1" 200 26 http-bio-80-exec-2 177
+0:0:0:0:0:0:0:1 - - [02/Jan/2024:11:29:44 +0800] "GET /hobbyList?hobby=111&hobby=2222&hobby=333&hobby=444&hobby=555 HTTP/1.1" 200 26 http-bio-80-exec-3 4
+0:0:0:0:0:0:0:1 - - [02/Jan/2024:23:17:46 +0800] "GET / HTTP/1.1" 200 57 http-bio-80-exec-1 38
+0:0:0:0:0:0:0:1 - - [02/Jan/2024:23:17:46 +0800] "GET / HTTP/1.1" 200 57 http-bio-80-exec-2 1
+0:0:0:0:0:0:0:1 - - [02/Jan/2024:23:17:46 +0800] "GET /favicon.ico HTTP/1.1" 404 949 http-bio-80-exec-4 12
+0:0:0:0:0:0:0:1 - - [02/Jan/2024:23:17:46 +0800] "GET /favicon.ico HTTP/1.1" 404 949 http-bio-80-exec-3 1
+0:0:0:0:0:0:0:1 - - [02/Jan/2024:23:17:54 +0800] "GET /save HTTP/1.1" 200 18 http-bio-80-exec-6 54
+0:0:0:0:0:0:0:1 - - [02/Jan/2024:23:20:45 +0800] "GET /save HTTP/1.1" 200 18 http-bio-80-exec-9 1
+0:0:0:0:0:0:0:1 - - [02/Jan/2024:23:23:32 +0800] "GET /user?userName=%E6%9E%97%E6%98%8E&password=123456 HTTP/1.1" 200 42 http-bio-80-exec-2 30
+0:0:0:0:0:0:0:1 - - [02/Jan/2024:23:26:47 +0800] "GET /user?userName=%E6%9E%97%E6%98%8E&password=123456 HTTP/1.1" 200 42 http-bio-80-exec-2 73
+0:0:0:0:0:0:0:1 - - [02/Jan/2024:23:29:30 +0800] "POST /user?userName=%E6%9E%97%E6%98%8E&password=123456 HTTP/1.1" 200 52 http-bio-80-exec-5 5
+0:0:0:0:0:0:0:1 - - [02/Jan/2024:23:29:34 +0800] "POST /user?userName=%E6%9E%97%E6%98%8E&password=123456 HTTP/1.1" 200 52 http-bio-80-exec-6 2
+0:0:0:0:0:0:0:1 - - [02/Jan/2024:23:31:25 +0800] "POST /user?userName=%E6%9E%97%E6%98%8E&password=123456 HTTP/1.1" 200 52 http-bio-80-exec-2 80
diff --git "a/04 \346\235\216\346\230\216\345\201\245/20240104 SpringMVC\346\225\264\345\220\210Mybatis/spring_MVC_02/target/tomcat/logs/access_log.2024-01-03" "b/04 \346\235\216\346\230\216\345\201\245/20240104 SpringMVC\346\225\264\345\220\210Mybatis/spring_MVC_02/target/tomcat/logs/access_log.2024-01-03"
new file mode 100644
index 0000000..b97122c
--- /dev/null
+++ "b/04 \346\235\216\346\230\216\345\201\245/20240104 SpringMVC\346\225\264\345\220\210Mybatis/spring_MVC_02/target/tomcat/logs/access_log.2024-01-03"
@@ -0,0 +1,35 @@
+0:0:0:0:0:0:0:1 - - [03/Jan/2024:15:53:14 +0800] "GET /save HTTP/1.1" 500 15641 http-bio-80-exec-2 105
+0:0:0:0:0:0:0:1 - - [03/Jan/2024:15:53:41 +0800] "GET / HTTP/1.1" 200 57 http-bio-80-exec-3 102
+0:0:0:0:0:0:0:1 - - [03/Jan/2024:15:53:41 +0800] "GET / HTTP/1.1" 200 57 http-bio-80-exec-5 2
+0:0:0:0:0:0:0:1 - - [03/Jan/2024:15:53:41 +0800] "GET /favicon.ico HTTP/1.1" 500 15641 http-bio-80-exec-6 97
+0:0:0:0:0:0:0:1 - - [03/Jan/2024:15:53:42 +0800] "GET /favicon.ico HTTP/1.1" 500 15641 http-bio-80-exec-4 62
+0:0:0:0:0:0:0:1 - - [03/Jan/2024:15:54:25 +0800] "GET /save HTTP/1.1" 500 15641 http-bio-80-exec-7 49
+0:0:0:0:0:0:0:1 - - [03/Jan/2024:15:54:25 +0800] "GET /favicon.ico HTTP/1.1" 500 15641 http-bio-80-exec-8 87
+0:0:0:0:0:0:0:1 - - [03/Jan/2024:16:48:31 +0800] "GET /save HTTP/1.1" 500 15641 http-bio-80-exec-2 88
+0:0:0:0:0:0:0:1 - - [03/Jan/2024:16:48:41 +0800] "GET /save HTTP/1.1" 500 15641 http-bio-80-exec-4 37
+0:0:0:0:0:0:0:1 - - [03/Jan/2024:17:00:09 +0800] "GET /save HTTP/1.1" 500 15641 http-bio-80-exec-2 99
+0:0:0:0:0:0:0:1 - - [03/Jan/2024:17:11:39 +0800] "GET /save HTTP/1.1" 500 15641 http-bio-80-exec-2 230
+0:0:0:0:0:0:0:1 - - [03/Jan/2024:17:21:32 +0800] "GET / HTTP/1.1" 200 57 http-bio-80-exec-2 114
+0:0:0:0:0:0:0:1 - - [03/Jan/2024:17:21:41 +0800] "GET /user HTTP/1.1" 500 15641 http-bio-80-exec-3 112
+0:0:0:0:0:0:0:1 - - [03/Jan/2024:17:23:09 +0800] "GET / HTTP/1.1" 200 57 http-bio-90-exec-2 172
+0:0:0:0:0:0:0:1 - - [03/Jan/2024:17:23:09 +0800] "GET / HTTP/1.1" 200 57 http-bio-90-exec-3 2
+0:0:0:0:0:0:0:1 - - [03/Jan/2024:17:23:10 +0800] "GET /favicon.ico HTTP/1.1" 500 15641 http-bio-90-exec-4 212
+0:0:0:0:0:0:0:1 - - [03/Jan/2024:17:23:10 +0800] "GET /favicon.ico HTTP/1.1" 500 15641 http-bio-90-exec-1 60
+0:0:0:0:0:0:0:1 - - [03/Jan/2024:22:27:00 +0800] "GET /save HTTP/1.1" 404 - http-bio-80-exec-2 0
+0:0:0:0:0:0:0:1 - - [03/Jan/2024:22:27:25 +0800] "POST /user?userName=%E6%9E%97%E6%98%8E&password=123456 HTTP/1.1" 404 - http-bio-80-exec-3 0
+0:0:0:0:0:0:0:1 - - [03/Jan/2024:22:43:16 +0800] "POST /user?userName=%E6%9E%97%E6%98%8E&password=123456 HTTP/1.1" 200 42 http-bio-80-exec-2 55
+0:0:0:0:0:0:0:1 - - [03/Jan/2024:22:43:28 +0800] "POST /save?userName=%E6%9E%97%E6%98%8E&password=123456 HTTP/1.1" 200 18 http-bio-80-exec-3 2
+0:0:0:0:0:0:0:1 - - [03/Jan/2024:22:55:49 +0800] "GET /date?date=2023/12/12 HTTP/1.1" 200 2 http-bio-80-exec-2 58
+0:0:0:0:0:0:0:1 - - [03/Jan/2024:22:56:21 +0800] "GET /date?date=2023-12-26 HTTP/1.1" 400 968 http-bio-80-exec-3 7
+0:0:0:0:0:0:0:1 - - [03/Jan/2024:22:57:26 +0800] "GET /date?date=2023-12-26 HTTP/1.1" 200 2 http-bio-80-exec-2 61
+0:0:0:0:0:0:0:1 - - [03/Jan/2024:23:03:48 +0800] "GET /selectAll?date=2023-12-26 HTTP/1.1" 404 949 http-bio-80-exec-5 5
+0:0:0:0:0:0:0:1 - - [03/Jan/2024:23:04:39 +0800] "GET /selectAll?date=2023-12-26 HTTP/1.1" 400 968 http-bio-80-exec-2 53
+0:0:0:0:0:0:0:1 - - [03/Jan/2024:23:04:54 +0800] "GET /selectAll HTTP/1.1" 400 968 http-bio-80-exec-4 2
+0:0:0:0:0:0:0:1 - - [03/Jan/2024:23:14:05 +0800] "GET /users HTTP/1.1" 404 949 http-bio-80-exec-6 3
+0:0:0:0:0:0:0:1 - - [03/Jan/2024:23:15:11 +0800] "POST /users HTTP/1.1" 404 949 http-bio-80-exec-9 1
+0:0:0:0:0:0:0:1 - - [03/Jan/2024:23:15:50 +0800] "POST /users HTTP/1.1" 200 18 http-bio-80-exec-2 48
+0:0:0:0:0:0:0:1 - - [03/Jan/2024:23:29:05 +0800] "GET /users HTTP/1.1" 200 18 http-bio-80-exec-2 56
+0:0:0:0:0:0:0:1 - - [03/Jan/2024:23:30:18 +0800] "POST /users?userName=%E6%9E%97%E6%98%8E&password=123456 HTTP/1.1" 200 18 http-bio-80-exec-5 2
+0:0:0:0:0:0:0:1 - - [03/Jan/2024:23:31:43 +0800] "GET /users/100 HTTP/1.1" 200 22 http-bio-80-exec-8 13
+0:0:0:0:0:0:0:1 - - [03/Jan/2024:23:32:18 +0800] "PUT /users/15 HTTP/1.1" 200 21 http-bio-80-exec-9 3
+0:0:0:0:0:0:0:1 - - [03/Jan/2024:23:32:48 +0800] "DELETE /users/18 HTTP/1.1" 200 21 http-bio-80-exec-10 2
diff --git "a/04 \346\235\216\346\230\216\345\201\245/20240104 SpringMVC\346\225\264\345\220\210Mybatis/spring_MVC_02/target/tomcat/logs/access_log.2024-01-04" "b/04 \346\235\216\346\230\216\345\201\245/20240104 SpringMVC\346\225\264\345\220\210Mybatis/spring_MVC_02/target/tomcat/logs/access_log.2024-01-04"
new file mode 100644
index 0000000..65af636
--- /dev/null
+++ "b/04 \346\235\216\346\230\216\345\201\245/20240104 SpringMVC\346\225\264\345\220\210Mybatis/spring_MVC_02/target/tomcat/logs/access_log.2024-01-04"
@@ -0,0 +1,17 @@
+0:0:0:0:0:0:0:1 - - [04/Jan/2024:16:58:29 +0800] "GET /users HTTP/1.1" 404 949 http-bio-80-exec-2 63
+0:0:0:0:0:0:0:1 - - [04/Jan/2024:17:00:46 +0800] "GET /users HTTP/1.1" 200 192 http-bio-80-exec-2 637
+0:0:0:0:0:0:0:1 - - [04/Jan/2024:17:02:22 +0800] "GET /users HTTP/1.1" 200 208 http-bio-80-exec-2 811
+0:0:0:0:0:0:0:1 - - [04/Jan/2024:17:02:34 +0800] "GET /users/1 HTTP/1.1" 200 20 http-bio-80-exec-3 27
+0:0:0:0:0:0:0:1 - - [04/Jan/2024:17:05:42 +0800] "GET /users/1 HTTP/1.1" 200 59 http-bio-80-exec-2 983
+0:0:0:0:0:0:0:1 - - [04/Jan/2024:17:05:47 +0800] "GET /users/2 HTTP/1.1" 200 59 http-bio-80-exec-3 7
+0:0:0:0:0:0:0:1 - - [04/Jan/2024:17:06:57 +0800] "POST /users HTTP/1.1" 200 18 http-bio-80-exec-6 87
+0:0:0:0:0:0:0:1 - - [04/Jan/2024:17:07:07 +0800] "GET /users HTTP/1.1" 200 249 http-bio-80-exec-7 12
+0:0:0:0:0:0:0:1 - - [04/Jan/2024:17:08:44 +0800] "POST /users HTTP/1.1" 200 17 http-bio-80-exec-2 695
+0:0:0:0:0:0:0:1 - - [04/Jan/2024:17:08:49 +0800] "GET /users HTTP/1.1" 200 299 http-bio-80-exec-3 74
+0:0:0:0:0:0:0:1 - - [04/Jan/2024:17:09:34 +0800] "PUT /users HTTP/1.1" 405 1045 http-bio-80-exec-4 9
+0:0:0:0:0:0:0:1 - - [04/Jan/2024:17:10:49 +0800] "PUT /users HTTP/1.1" 500 1137 http-bio-80-exec-2 119
+0:0:0:0:0:0:0:1 - - [04/Jan/2024:17:11:46 +0800] "PUT /users HTTP/1.1" 200 20 http-bio-80-exec-2 714
+0:0:0:0:0:0:0:1 - - [04/Jan/2024:17:12:07 +0800] "GET /users HTTP/1.1" 200 307 http-bio-80-exec-3 92
+0:0:0:0:0:0:0:1 - - [04/Jan/2024:17:12:33 +0800] "DELETE /users/6 HTTP/1.1" 200 20 http-bio-80-exec-4 22
+0:0:0:0:0:0:0:1 - - [04/Jan/2024:17:12:41 +0800] "GET /users/6 HTTP/1.1" 200 - http-bio-80-exec-5 5
+0:0:0:0:0:0:0:1 - - [04/Jan/2024:17:12:46 +0800] "GET /users HTTP/1.1" 200 257 http-bio-80-exec-6 7
diff --git "a/04 \346\235\216\346\230\216\345\201\245/20240104 SpringMVC\346\225\264\345\220\210Mybatis/spring_MVC_02/target/tomcat/logs/access_log.2024-01-05" "b/04 \346\235\216\346\230\216\345\201\245/20240104 SpringMVC\346\225\264\345\220\210Mybatis/spring_MVC_02/target/tomcat/logs/access_log.2024-01-05"
new file mode 100644
index 0000000..fb05642
--- /dev/null
+++ "b/04 \346\235\216\346\230\216\345\201\245/20240104 SpringMVC\346\225\264\345\220\210Mybatis/spring_MVC_02/target/tomcat/logs/access_log.2024-01-05"
@@ -0,0 +1,18 @@
+0:0:0:0:0:0:0:1 - - [05/Jan/2024:08:04:25 +0800] "GET /users HTTP/1.1" 200 208 http-bio-80-exec-2 861
+0:0:0:0:0:0:0:1 - - [05/Jan/2024:08:16:28 +0800] "GET /users/4 HTTP/1.1" 200 59 http-bio-80-exec-2 867
+0:0:0:0:0:0:0:1 - - [05/Jan/2024:10:22:27 +0800] "GET /users HTTP/1.1" 200 249 http-bio-80-exec-2 1008
+0:0:0:0:0:0:0:1 - - [05/Jan/2024:10:22:41 +0800] "GET /users/2 HTTP/1.1" 200 100 http-bio-80-exec-3 33
+0:0:0:0:0:0:0:1 - - [05/Jan/2024:10:23:46 +0800] "POST /users/ HTTP/1.1" 200 56 http-bio-80-exec-6 125
+0:0:0:0:0:0:0:1 - - [05/Jan/2024:10:24:01 +0800] "GET /users/ HTTP/1.1" 200 299 http-bio-80-exec-7 7
+0:0:0:0:0:0:0:1 - - [05/Jan/2024:10:24:54 +0800] "PUT /users/ HTTP/1.1" 200 56 http-bio-80-exec-8 13
+0:0:0:0:0:0:0:1 - - [05/Jan/2024:10:24:59 +0800] "GET /users/ HTTP/1.1" 200 299 http-bio-80-exec-9 10
+0:0:0:0:0:0:0:1 - - [05/Jan/2024:10:25:14 +0800] "DELETE /users/1 HTTP/1.1" 200 56 http-bio-80-exec-10 16
+0:0:0:0:0:0:0:1 - - [05/Jan/2024:10:25:22 +0800] "GET /users/1 HTTP/1.1" 200 56 http-bio-80-exec-10 8
+0:0:0:0:0:0:0:1 - - [05/Jan/2024:10:25:27 +0800] "GET /users/2 HTTP/1.1" 200 100 http-bio-80-exec-10 4
+0:0:0:0:0:0:0:1 - - [05/Jan/2024:10:25:31 +0800] "GET /users/ HTTP/1.1" 200 249 http-bio-80-exec-10 5
+0:0:0:0:0:0:0:1 - - [05/Jan/2024:10:25:40 +0800] "DELETE /users/100 HTTP/1.1" 200 56 http-bio-80-exec-10 5
+0:0:0:0:0:0:0:1 - - [05/Jan/2024:10:26:25 +0800] "PUT /users/ HTTP/1.1" 200 56 http-bio-80-exec-10 6
+0:0:0:0:0:0:0:1 - - [05/Jan/2024:11:13:23 +0800] "PUT /books HTTP/1.1" 404 949 http-bio-80-exec-8 35
+0:0:0:0:0:0:0:1 - - [05/Jan/2024:11:13:30 +0800] "GET /books HTTP/1.1" 404 949 http-bio-80-exec-9 2
+0:0:0:0:0:0:0:1 - - [05/Jan/2024:11:18:00 +0800] "GET /users HTTP/1.1" 200 249 http-bio-80-exec-2 852
+0:0:0:0:0:0:0:1 - - [05/Jan/2024:11:19:39 +0800] "GET /books HTTP/1.1" 404 949 http-bio-80-exec-5 7
diff --git "a/04 \346\235\216\346\230\216\345\201\245/20240104 SpringMVC\346\225\264\345\220\210Mybatis/spring_MVC_02/target/tomcat/work/Tomcat/localhost/_/org/apache/jsp/index_jsp.class" "b/04 \346\235\216\346\230\216\345\201\245/20240104 SpringMVC\346\225\264\345\220\210Mybatis/spring_MVC_02/target/tomcat/work/Tomcat/localhost/_/org/apache/jsp/index_jsp.class"
new file mode 100644
index 0000000000000000000000000000000000000000..4554b4399bc4f174ee0862ce2ffe134c8ea06527
GIT binary patch
literal 3727
zcma)9?RON_8UNj6v$NSuf{9RA1QQUIEP+9gD7!IANCF87P?i#TY{Kf~5=cqkIsOQ-7#Si_H`l0rB?`$TsyNSn~WbVwp&wXBg&+mEe
z&42#)&o2QS!`}_G3G6C)1wi}$7NYkzv~N_%0_L{&if_rmcYX^EA|b$W>utjqbPmt
z3b)nQvjPuj`T0ey!FK(Mz&5?ds`^gRnzhRm>dZL>*Y>NP6gb|vIud*qZMR_Me9v(U
z*~rXHiQl8tuwz~p=Vh(z$x6j3xl8N*?a{(DOBSt(aCO7G?aI4($F2Cbo0qG$YZs&^
z@W@OA6u-2Zw|#4>E;Jhm(Pm;KUvyl@9~EdnICw=McDl4Elh}cs2EHS(=bNB0u?s1I
z-h%YU<&s@3`XQzR2M6n3Z-Htj1RgSBAfdo?TzS5_x*)yF_Ck>W_RW;?cJYesIqJJU
z86VM}Cee-o6Az=0-ulZ9v#~oGE790s5<~3P?y2Mlsq3w~7ERuX=DBZ`G8Mz)COVNM
zkSYsPL^8?Aw24C)B5`Os7qIFy6Y3NM`dff$5Xg4n2#y-Ch)yH)4Pqvqz_9@Njd@?z
zNbXkT8zr(Txlfunfnio49VFFHmCHqk1R?9_XP{^5U{eB{)NGO8R#gn?X=DtXBv_3h
zsZ4EZ-9#260^8|b3*%X@A%vS&gv!dOiEi{H@f^ksoDw)1sfCrsUeZ((bq1R_jdAjj
z9yAFEjBSk!Q=A=)l5vZ|Q$9|b*oFrLx)gK9WySYOY)1M^LG9#O2bY>nEwl6K_E*ow
zC3(HdtwBH8Xko2lm2%0g$gC>yKxsa@HH{(?IwHcRhMlD>egB5Ag^|pO=>gr~^kNCp!dQlbd4+Qo$!l2k5
z5ma(%^?1pIjRmHKLFIzhFR(x4c%^prd(rg+wnOIeM>bR*?Bv4Wc7D|h^s33vs0y{^RkBy#{#bRk-
zuH+RL_l;PbP>XEMog-E#Th*U++Xim(kZOe}cg-m)m_nKw_~jYce+VOT^4%6d*czco#)2-
zjc=h^n5g;ERo5w=n2d^l9f)DKx_Iy=npB53=eqdb29tk0HuO7NGsifkdeKLT2l-`j
zR6oXDZ2t##f6CW3?BTPAib0WfipI&9y?O-{=Pf0&S#9q~e~$i*t#Pe$o8DsT_YUmC
zehRWWaDWB^-yYQ-9O0}|68j8~eWHyh^MQ_sB06HBj)S2CS9J8if%IqConFJ>JscKT
z!|{7~O5hHjNvp}bc=iq^Hv9`h>*q~xfd1@@*fIidNFG26*+`(b`r%;Hh5K1sfvz)lPkuoDF8DRSUx4B{m3g&7>@
z#ponP@C-&Vj%TUwIi9+wcq)$3&S@S7<80OwxQ(u67JWNLfG*R-qkF-k6+=}Owc}B`VD?dFWd1Yeuv+)g5vlB@A0jJKHtS3
zxEiPREdEG)2L8;brjhuXp&JH-fxj5^)4+=UeNoN4^)*?Z*kqAQYW*B~{)^6OewqAd
z5g$-v8~%#FaXgcoJ#{hJSoO*2+{I)%H=u{f _jspx_dependants;
+
+ private javax.el.ExpressionFactory _el_expressionfactory;
+ private org.apache.tomcat.InstanceManager _jsp_instancemanager;
+
+ public java.util.Map getDependants() {
+ return _jspx_dependants;
+ }
+
+ public void _jspInit() {
+ _el_expressionfactory = _jspxFactory.getJspApplicationContext(getServletConfig().getServletContext()).getExpressionFactory();
+ _jsp_instancemanager = org.apache.jasper.runtime.InstanceManagerFactory.getInstanceManager(getServletConfig());
+ }
+
+ public void _jspDestroy() {
+ }
+
+ public void _jspService(final javax.servlet.http.HttpServletRequest request, final javax.servlet.http.HttpServletResponse response)
+ throws java.io.IOException, javax.servlet.ServletException {
+
+ final javax.servlet.jsp.PageContext pageContext;
+ javax.servlet.http.HttpSession session = null;
+ final javax.servlet.ServletContext application;
+ final javax.servlet.ServletConfig config;
+ javax.servlet.jsp.JspWriter out = null;
+ final java.lang.Object page = this;
+ javax.servlet.jsp.JspWriter _jspx_out = null;
+ javax.servlet.jsp.PageContext _jspx_page_context = null;
+
+
+ try {
+ response.setContentType("text/html");
+ pageContext = _jspxFactory.getPageContext(this, request, response,
+ null, true, 8192, true);
+ _jspx_page_context = pageContext;
+ application = pageContext.getServletContext();
+ config = pageContext.getServletConfig();
+ session = pageContext.getSession();
+ out = pageContext.getOut();
+ _jspx_out = out;
+
+ out.write("\r\n");
+ out.write("\r\n");
+ out.write("Hello World!
\r\n");
+ out.write("\r\n");
+ out.write("\r\n");
+ } catch (java.lang.Throwable t) {
+ if (!(t instanceof javax.servlet.jsp.SkipPageException)){
+ out = _jspx_out;
+ if (out != null && out.getBufferSize() != 0)
+ try { out.clearBuffer(); } catch (java.io.IOException e) {}
+ if (_jspx_page_context != null) _jspx_page_context.handlePageException(t);
+ else throw new ServletException(t);
+ }
+ } finally {
+ _jspxFactory.releasePageContext(_jspx_page_context);
+ }
+ }
+}
--
Gitee
From 3b6ed1ffa69a677f77499bbe1a8cb8b482837269 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=E6=9D=8E=E6=98=8E=E5=81=A5?= <2161737470@qq.com>
Date: Mon, 8 Jan 2024 17:29:34 +0800
Subject: [PATCH 2/2] =?UTF-8?q?=E7=AC=AC=E5=8D=81=E4=BA=8C=E6=AC=A1?=
=?UTF-8?q?=E4=BD=9C=E4=B8=9A?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../spring_MVC_03/pom.xml" | 95 +
.../spring_MVC_03/spring_MVC_03.iml" | 6 +
.../main/java/com/mdd/config/JdbcConfig.java" | 18 +
.../java/com/mdd/config/MybatisConfig.java" | 25 +
.../java/com/mdd/config/SpringConfig.java" | 11 +
.../java/com/mdd/config/SpringMvcConfig.java" | 11 +
.../com/mdd/config/SpringMvcSupport.java" | 18 +
.../main/java/com/mdd/config/WebConfig.java" | 23 +
.../com/mdd/controller/BookController.java" | 59 +
.../src/main/java/com/mdd/domain/Book.java" | 60 +
.../src/main/java/com/mdd/domain/Result.java" | 66 +
.../main/java/com/mdd/mapper/BookMapper.java" | 26 +
.../java/com/mdd/service/BookService.java" | 19 +
.../mdd/service/impl/BookServiceImpl.java" | 44 +
.../src/main/webapp/WEB-INF/web.xml" | 7 +
.../src/main/webapp/css/index.css" | 170 +
.../src/main/webapp/favicon.ico" | Bin 0 -> 16958 bytes
.../spring_MVC_03/src/main/webapp/index.html" | 127 +
.../src/main/webapp/js/index.js" | 180 +
.../src/main/webapp/lib/form-serialize.js" | 258 +
.../classes/com/mdd/config/JdbcConfig.class" | Bin 0 -> 846 bytes
.../com/mdd/config/MybatisConfig.class" | Bin 0 -> 1208 bytes
.../com/mdd/config/SpringConfig.class" | Bin 0 -> 631 bytes
.../com/mdd/config/SpringMvcConfig.class" | Bin 0 -> 586 bytes
.../com/mdd/config/SpringMvcSupport.class" | Bin 0 -> 1325 bytes
.../classes/com/mdd/config/WebConfig.class" | Bin 0 -> 846 bytes
.../com/mdd/controller/BookController.class" | Bin 0 -> 3313 bytes
.../target/classes/com/mdd/domain/Book.class" | Bin 0 -> 1809 bytes
.../classes/com/mdd/domain/Result.class" | Bin 0 -> 2084 bytes
.../classes/com/mdd/mapper/BookMapper.class" | Bin 0 -> 1085 bytes
.../com/mdd/service/BookService.class" | Bin 0 -> 402 bytes
.../mdd/service/impl/BookServiceImpl.class" | Bin 0 -> 1698 bytes
.../compile/default-compile/createdFiles.lst" | 12 +
.../compile/default-compile/inputFiles.lst" | 12 +
.../target/tomcat/conf/logging.properties" | 64 +
.../target/tomcat/conf/tomcat-users.xml" | 26 +
.../spring_MVC_03/target/tomcat/conf/web.xml" | 4283 +++++++++++++++++
.../target/tomcat/logs/access_log.2024-01-08" | 78 +
38 files changed, 5698 insertions(+)
create mode 100644 "04 \346\235\216\346\230\216\345\201\245/20240108 SSM\346\225\264\345\220\210/spring_MVC_03/pom.xml"
create mode 100644 "04 \346\235\216\346\230\216\345\201\245/20240108 SSM\346\225\264\345\220\210/spring_MVC_03/spring_MVC_03.iml"
create mode 100644 "04 \346\235\216\346\230\216\345\201\245/20240108 SSM\346\225\264\345\220\210/spring_MVC_03/src/main/java/com/mdd/config/JdbcConfig.java"
create mode 100644 "04 \346\235\216\346\230\216\345\201\245/20240108 SSM\346\225\264\345\220\210/spring_MVC_03/src/main/java/com/mdd/config/MybatisConfig.java"
create mode 100644 "04 \346\235\216\346\230\216\345\201\245/20240108 SSM\346\225\264\345\220\210/spring_MVC_03/src/main/java/com/mdd/config/SpringConfig.java"
create mode 100644 "04 \346\235\216\346\230\216\345\201\245/20240108 SSM\346\225\264\345\220\210/spring_MVC_03/src/main/java/com/mdd/config/SpringMvcConfig.java"
create mode 100644 "04 \346\235\216\346\230\216\345\201\245/20240108 SSM\346\225\264\345\220\210/spring_MVC_03/src/main/java/com/mdd/config/SpringMvcSupport.java"
create mode 100644 "04 \346\235\216\346\230\216\345\201\245/20240108 SSM\346\225\264\345\220\210/spring_MVC_03/src/main/java/com/mdd/config/WebConfig.java"
create mode 100644 "04 \346\235\216\346\230\216\345\201\245/20240108 SSM\346\225\264\345\220\210/spring_MVC_03/src/main/java/com/mdd/controller/BookController.java"
create mode 100644 "04 \346\235\216\346\230\216\345\201\245/20240108 SSM\346\225\264\345\220\210/spring_MVC_03/src/main/java/com/mdd/domain/Book.java"
create mode 100644 "04 \346\235\216\346\230\216\345\201\245/20240108 SSM\346\225\264\345\220\210/spring_MVC_03/src/main/java/com/mdd/domain/Result.java"
create mode 100644 "04 \346\235\216\346\230\216\345\201\245/20240108 SSM\346\225\264\345\220\210/spring_MVC_03/src/main/java/com/mdd/mapper/BookMapper.java"
create mode 100644 "04 \346\235\216\346\230\216\345\201\245/20240108 SSM\346\225\264\345\220\210/spring_MVC_03/src/main/java/com/mdd/service/BookService.java"
create mode 100644 "04 \346\235\216\346\230\216\345\201\245/20240108 SSM\346\225\264\345\220\210/spring_MVC_03/src/main/java/com/mdd/service/impl/BookServiceImpl.java"
create mode 100644 "04 \346\235\216\346\230\216\345\201\245/20240108 SSM\346\225\264\345\220\210/spring_MVC_03/src/main/webapp/WEB-INF/web.xml"
create mode 100644 "04 \346\235\216\346\230\216\345\201\245/20240108 SSM\346\225\264\345\220\210/spring_MVC_03/src/main/webapp/css/index.css"
create mode 100644 "04 \346\235\216\346\230\216\345\201\245/20240108 SSM\346\225\264\345\220\210/spring_MVC_03/src/main/webapp/favicon.ico"
create mode 100644 "04 \346\235\216\346\230\216\345\201\245/20240108 SSM\346\225\264\345\220\210/spring_MVC_03/src/main/webapp/index.html"
create mode 100644 "04 \346\235\216\346\230\216\345\201\245/20240108 SSM\346\225\264\345\220\210/spring_MVC_03/src/main/webapp/js/index.js"
create mode 100644 "04 \346\235\216\346\230\216\345\201\245/20240108 SSM\346\225\264\345\220\210/spring_MVC_03/src/main/webapp/lib/form-serialize.js"
create mode 100644 "04 \346\235\216\346\230\216\345\201\245/20240108 SSM\346\225\264\345\220\210/spring_MVC_03/target/classes/com/mdd/config/JdbcConfig.class"
create mode 100644 "04 \346\235\216\346\230\216\345\201\245/20240108 SSM\346\225\264\345\220\210/spring_MVC_03/target/classes/com/mdd/config/MybatisConfig.class"
create mode 100644 "04 \346\235\216\346\230\216\345\201\245/20240108 SSM\346\225\264\345\220\210/spring_MVC_03/target/classes/com/mdd/config/SpringConfig.class"
create mode 100644 "04 \346\235\216\346\230\216\345\201\245/20240108 SSM\346\225\264\345\220\210/spring_MVC_03/target/classes/com/mdd/config/SpringMvcConfig.class"
create mode 100644 "04 \346\235\216\346\230\216\345\201\245/20240108 SSM\346\225\264\345\220\210/spring_MVC_03/target/classes/com/mdd/config/SpringMvcSupport.class"
create mode 100644 "04 \346\235\216\346\230\216\345\201\245/20240108 SSM\346\225\264\345\220\210/spring_MVC_03/target/classes/com/mdd/config/WebConfig.class"
create mode 100644 "04 \346\235\216\346\230\216\345\201\245/20240108 SSM\346\225\264\345\220\210/spring_MVC_03/target/classes/com/mdd/controller/BookController.class"
create mode 100644 "04 \346\235\216\346\230\216\345\201\245/20240108 SSM\346\225\264\345\220\210/spring_MVC_03/target/classes/com/mdd/domain/Book.class"
create mode 100644 "04 \346\235\216\346\230\216\345\201\245/20240108 SSM\346\225\264\345\220\210/spring_MVC_03/target/classes/com/mdd/domain/Result.class"
create mode 100644 "04 \346\235\216\346\230\216\345\201\245/20240108 SSM\346\225\264\345\220\210/spring_MVC_03/target/classes/com/mdd/mapper/BookMapper.class"
create mode 100644 "04 \346\235\216\346\230\216\345\201\245/20240108 SSM\346\225\264\345\220\210/spring_MVC_03/target/classes/com/mdd/service/BookService.class"
create mode 100644 "04 \346\235\216\346\230\216\345\201\245/20240108 SSM\346\225\264\345\220\210/spring_MVC_03/target/classes/com/mdd/service/impl/BookServiceImpl.class"
create mode 100644 "04 \346\235\216\346\230\216\345\201\245/20240108 SSM\346\225\264\345\220\210/spring_MVC_03/target/maven-status/maven-compiler-plugin/compile/default-compile/createdFiles.lst"
create mode 100644 "04 \346\235\216\346\230\216\345\201\245/20240108 SSM\346\225\264\345\220\210/spring_MVC_03/target/maven-status/maven-compiler-plugin/compile/default-compile/inputFiles.lst"
create mode 100644 "04 \346\235\216\346\230\216\345\201\245/20240108 SSM\346\225\264\345\220\210/spring_MVC_03/target/tomcat/conf/logging.properties"
create mode 100644 "04 \346\235\216\346\230\216\345\201\245/20240108 SSM\346\225\264\345\220\210/spring_MVC_03/target/tomcat/conf/tomcat-users.xml"
create mode 100644 "04 \346\235\216\346\230\216\345\201\245/20240108 SSM\346\225\264\345\220\210/spring_MVC_03/target/tomcat/conf/web.xml"
create mode 100644 "04 \346\235\216\346\230\216\345\201\245/20240108 SSM\346\225\264\345\220\210/spring_MVC_03/target/tomcat/logs/access_log.2024-01-08"
diff --git "a/04 \346\235\216\346\230\216\345\201\245/20240108 SSM\346\225\264\345\220\210/spring_MVC_03/pom.xml" "b/04 \346\235\216\346\230\216\345\201\245/20240108 SSM\346\225\264\345\220\210/spring_MVC_03/pom.xml"
new file mode 100644
index 0000000..2d566a6
--- /dev/null
+++ "b/04 \346\235\216\346\230\216\345\201\245/20240108 SSM\346\225\264\345\220\210/spring_MVC_03/pom.xml"
@@ -0,0 +1,95 @@
+
+ 4.0.0
+ com.mdd
+ spring_MVC_03
+ war
+ 1.0-SNAPSHOT
+
+
+
+
+ org.springframework
+ spring-webmvc
+ 5.2.25.RELEASE
+
+
+
+ javax.servlet
+ javax.servlet-api
+ 3.1.0
+ provided
+
+
+
+ com.fasterxml.jackson.core
+ jackson-databind
+ 2.9.1
+
+
+
+
+ org.springframework
+ spring-jdbc
+ 5.2.25.RELEASE
+
+
+ org.springframework
+ spring-test
+ 5.2.25.RELEASE
+
+
+
+ org.mybatis
+ mybatis
+ 3.5.13
+
+
+
+ org.mybatis
+ mybatis-spring
+ 2.0.5
+
+
+
+ com.mysql
+ mysql-connector-j
+ 8.1.0
+
+
+
+ junit
+ junit
+ 4.13.2
+ test
+
+
+
+ com.alibaba
+ druid
+ 1.1.23
+
+
+
+
+
+
+
+
+
+
+
+ org.apache.tomcat.maven
+ tomcat7-maven-plugin
+ 2.2
+
+ 80
+ /
+
+ utf-8
+
+
+
+
+
+
diff --git "a/04 \346\235\216\346\230\216\345\201\245/20240108 SSM\346\225\264\345\220\210/spring_MVC_03/spring_MVC_03.iml" "b/04 \346\235\216\346\230\216\345\201\245/20240108 SSM\346\225\264\345\220\210/spring_MVC_03/spring_MVC_03.iml"
new file mode 100644
index 0000000..be5d5f6
--- /dev/null
+++ "b/04 \346\235\216\346\230\216\345\201\245/20240108 SSM\346\225\264\345\220\210/spring_MVC_03/spring_MVC_03.iml"
@@ -0,0 +1,6 @@
+
+
+
+
+
+
\ No newline at end of file
diff --git "a/04 \346\235\216\346\230\216\345\201\245/20240108 SSM\346\225\264\345\220\210/spring_MVC_03/src/main/java/com/mdd/config/JdbcConfig.java" "b/04 \346\235\216\346\230\216\345\201\245/20240108 SSM\346\225\264\345\220\210/spring_MVC_03/src/main/java/com/mdd/config/JdbcConfig.java"
new file mode 100644
index 0000000..865439b
--- /dev/null
+++ "b/04 \346\235\216\346\230\216\345\201\245/20240108 SSM\346\225\264\345\220\210/spring_MVC_03/src/main/java/com/mdd/config/JdbcConfig.java"
@@ -0,0 +1,18 @@
+package com.mdd.config;
+
+import com.alibaba.druid.pool.DruidDataSource;
+import org.springframework.context.annotation.Bean;
+
+import javax.sql.DataSource;
+
+public class JdbcConfig {
+ @Bean
+ public DataSource dataSource(){
+ DruidDataSource ds = new DruidDataSource();
+ ds.setDriverClassName("com.mysql.cj.jdbc.Driver");
+ ds.setUrl("jdbc:mysql://localhost:3306/mybatis?useSSL=false");
+ ds.setUsername("root");
+ ds.setPassword("root");
+ return ds;
+ }
+}
diff --git "a/04 \346\235\216\346\230\216\345\201\245/20240108 SSM\346\225\264\345\220\210/spring_MVC_03/src/main/java/com/mdd/config/MybatisConfig.java" "b/04 \346\235\216\346\230\216\345\201\245/20240108 SSM\346\225\264\345\220\210/spring_MVC_03/src/main/java/com/mdd/config/MybatisConfig.java"
new file mode 100644
index 0000000..68f82be
--- /dev/null
+++ "b/04 \346\235\216\346\230\216\345\201\245/20240108 SSM\346\225\264\345\220\210/spring_MVC_03/src/main/java/com/mdd/config/MybatisConfig.java"
@@ -0,0 +1,25 @@
+package com.mdd.config;
+
+import org.mybatis.spring.SqlSessionFactoryBean;
+import org.mybatis.spring.mapper.MapperScannerConfigurer;
+import org.springframework.context.annotation.Bean;
+
+import javax.sql.DataSource;
+
+public class MybatisConfig {
+
+ @Bean
+ public SqlSessionFactoryBean sqlSessionFactoryBean(DataSource dataSource){
+ SqlSessionFactoryBean ssfb = new SqlSessionFactoryBean();
+ ssfb.setDataSource(dataSource); // 设置数据源
+ ssfb.setTypeAliasesPackage("com.mdd.domain"); // 设置实体类所在包的位置
+ return ssfb;
+ }
+
+ @Bean
+ public MapperScannerConfigurer mapperScannerConfigurer(){
+ MapperScannerConfigurer msc = new MapperScannerConfigurer();
+ msc.setBasePackage("com.mdd.mapper"); // 设置代理类包的位置
+ return msc;
+ }
+}
diff --git "a/04 \346\235\216\346\230\216\345\201\245/20240108 SSM\346\225\264\345\220\210/spring_MVC_03/src/main/java/com/mdd/config/SpringConfig.java" "b/04 \346\235\216\346\230\216\345\201\245/20240108 SSM\346\225\264\345\220\210/spring_MVC_03/src/main/java/com/mdd/config/SpringConfig.java"
new file mode 100644
index 0000000..20dd4fc
--- /dev/null
+++ "b/04 \346\235\216\346\230\216\345\201\245/20240108 SSM\346\225\264\345\220\210/spring_MVC_03/src/main/java/com/mdd/config/SpringConfig.java"
@@ -0,0 +1,11 @@
+package com.mdd.config;
+
+import org.springframework.context.annotation.ComponentScan;
+import org.springframework.context.annotation.Configuration;
+import org.springframework.context.annotation.Import;
+
+@Configuration
+@ComponentScan({"com.mdd.service","com.mdd.mapper"})
+@Import({JdbcConfig.class, MybatisConfig.class})
+public class SpringConfig {
+}
diff --git "a/04 \346\235\216\346\230\216\345\201\245/20240108 SSM\346\225\264\345\220\210/spring_MVC_03/src/main/java/com/mdd/config/SpringMvcConfig.java" "b/04 \346\235\216\346\230\216\345\201\245/20240108 SSM\346\225\264\345\220\210/spring_MVC_03/src/main/java/com/mdd/config/SpringMvcConfig.java"
new file mode 100644
index 0000000..d87fb6b
--- /dev/null
+++ "b/04 \346\235\216\346\230\216\345\201\245/20240108 SSM\346\225\264\345\220\210/spring_MVC_03/src/main/java/com/mdd/config/SpringMvcConfig.java"
@@ -0,0 +1,11 @@
+package com.mdd.config;
+
+import org.springframework.context.annotation.ComponentScan;
+import org.springframework.context.annotation.Configuration;
+import org.springframework.web.servlet.config.annotation.EnableWebMvc;
+
+@Configuration
+@ComponentScan({"com.mdd.controller","com.mdd.config"})
+@EnableWebMvc
+public class SpringMvcConfig {
+}
diff --git "a/04 \346\235\216\346\230\216\345\201\245/20240108 SSM\346\225\264\345\220\210/spring_MVC_03/src/main/java/com/mdd/config/SpringMvcSupport.java" "b/04 \346\235\216\346\230\216\345\201\245/20240108 SSM\346\225\264\345\220\210/spring_MVC_03/src/main/java/com/mdd/config/SpringMvcSupport.java"
new file mode 100644
index 0000000..229eb44
--- /dev/null
+++ "b/04 \346\235\216\346\230\216\345\201\245/20240108 SSM\346\225\264\345\220\210/spring_MVC_03/src/main/java/com/mdd/config/SpringMvcSupport.java"
@@ -0,0 +1,18 @@
+package com.mdd.config;
+
+import org.springframework.context.annotation.Configuration;
+import org.springframework.web.servlet.config.annotation.ResourceHandlerRegistry;
+import org.springframework.web.servlet.config.annotation.WebMvcConfigurationSupport;
+
+@Configuration
+public class SpringMvcSupport extends WebMvcConfigurationSupport {
+ @Override
+ protected void addResourceHandlers(ResourceHandlerRegistry registry) {
+ // 设置放行,当访问到这些路径的时候,不归MVC管, 直接走本目录下的内容
+ registry.addResourceHandler("/css/**").addResourceLocations("/css/");
+ registry.addResourceHandler("/js/**").addResourceLocations("/js/");
+ registry.addResourceHandler("/lib/**").addResourceLocations("/lib/");
+ registry.addResourceHandler("/index.html").addResourceLocations("/index.html");
+ registry.addResourceHandler("/favicon.ico").addResourceLocations("/favicon.ico");
+ }
+}
diff --git "a/04 \346\235\216\346\230\216\345\201\245/20240108 SSM\346\225\264\345\220\210/spring_MVC_03/src/main/java/com/mdd/config/WebConfig.java" "b/04 \346\235\216\346\230\216\345\201\245/20240108 SSM\346\225\264\345\220\210/spring_MVC_03/src/main/java/com/mdd/config/WebConfig.java"
new file mode 100644
index 0000000..9002ebe
--- /dev/null
+++ "b/04 \346\235\216\346\230\216\345\201\245/20240108 SSM\346\225\264\345\220\210/spring_MVC_03/src/main/java/com/mdd/config/WebConfig.java"
@@ -0,0 +1,23 @@
+package com.mdd.config;
+
+import org.springframework.web.servlet.support.AbstractAnnotationConfigDispatcherServletInitializer;
+
+public class WebConfig extends AbstractAnnotationConfigDispatcherServletInitializer {
+ // 加载 spring 容器配置
+ @Override
+ protected Class>[] getRootConfigClasses() {
+ return new Class[]{SpringConfig.class};
+ }
+
+ // 加载 springMvc 容器配置
+ @Override
+ protected Class>[] getServletConfigClasses() {
+ return new Class[]{SpringMvcConfig.class};
+ }
+
+ // 设置那些请求路径鬼 SpringMVC 管理
+ @Override
+ protected String[] getServletMappings() {
+ return new String[]{"/"};
+ }
+}
diff --git "a/04 \346\235\216\346\230\216\345\201\245/20240108 SSM\346\225\264\345\220\210/spring_MVC_03/src/main/java/com/mdd/controller/BookController.java" "b/04 \346\235\216\346\230\216\345\201\245/20240108 SSM\346\225\264\345\220\210/spring_MVC_03/src/main/java/com/mdd/controller/BookController.java"
new file mode 100644
index 0000000..31d8595
--- /dev/null
+++ "b/04 \346\235\216\346\230\216\345\201\245/20240108 SSM\346\225\264\345\220\210/spring_MVC_03/src/main/java/com/mdd/controller/BookController.java"
@@ -0,0 +1,59 @@
+package com.mdd.controller;
+
+import com.mdd.domain.Book;
+import com.mdd.domain.Result;
+import com.mdd.service.BookService;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.*;
+
+import java.util.List;
+
+@RestController
+@RequestMapping("/books")
+public class BookController {
+
+ @Autowired
+ private BookService bookService;
+ // 查询所有书本
+ @GetMapping
+ public Result selectAll(){
+ System.out.println("selectAll is ok!");
+ return Result.success(200,"查询成功!",bookService.selectAll());
+ }
+
+ // 添加书本
+ @PostMapping
+ public Result addBook(@RequestBody Book book){
+ System.out.println("addBook is ok ===>"+book);
+ Integer num = bookService.addBook(book);
+ if(num >0) return Result.result(200,"添加成功!");
+ return Result.result(404,"添加失败!");
+ }
+
+ // 根据ID查询书本
+ @GetMapping("/{id}")
+ public Result selectById(@PathVariable Integer id){
+ System.out.println("selectById is ok ===>"+id);
+ Book book = bookService.selectById(id);
+ if(book != null) return Result.success(200,"查询成功!",book);
+ return Result.result(404,"查无此人!");
+ }
+
+ // 根据ID修改书本
+ @PutMapping()
+ public Result updateById(@RequestBody Book book){
+ System.out.println("updateById is ok ===>"+book);
+ Integer num = bookService.updateById(book);
+ if(num >0) return Result.result(200,"修改成功!");
+ return Result.result(404,"修改失败!");
+ }
+
+ // 根据ID删除书本
+ @DeleteMapping("/{id}")
+ public Result deleteById(@PathVariable Integer id){
+ System.out.println("deleteById is ok ===>"+id);
+ Integer num = bookService.deleteById(id);
+ if(num >0) return Result.result(200,"删除成功!");
+ return Result.result(404,"删除失败!");
+ }
+}
diff --git "a/04 \346\235\216\346\230\216\345\201\245/20240108 SSM\346\225\264\345\220\210/spring_MVC_03/src/main/java/com/mdd/domain/Book.java" "b/04 \346\235\216\346\230\216\345\201\245/20240108 SSM\346\225\264\345\220\210/spring_MVC_03/src/main/java/com/mdd/domain/Book.java"
new file mode 100644
index 0000000..12a59c4
--- /dev/null
+++ "b/04 \346\235\216\346\230\216\345\201\245/20240108 SSM\346\225\264\345\220\210/spring_MVC_03/src/main/java/com/mdd/domain/Book.java"
@@ -0,0 +1,60 @@
+package com.mdd.domain;
+
+public class Book {
+ private Integer id;
+ private String bookName;
+ private String author;
+ private String publisher;
+
+ public Book() {
+ }
+
+ public Book(Integer id, String bookName, String author, String publisher) {
+ this.id = id;
+ this.bookName = bookName;
+ this.author = author;
+ this.publisher = publisher;
+ }
+
+ public Integer getId() {
+ return id;
+ }
+
+ public void setId(Integer id) {
+ this.id = id;
+ }
+
+ public String getBookName() {
+ return bookName;
+ }
+
+ public void setBookName(String bookName) {
+ this.bookName = bookName;
+ }
+
+ public String getAuthor() {
+ return author;
+ }
+
+ public void setAuthor(String author) {
+ this.author = author;
+ }
+
+ public String getPublisher() {
+ return publisher;
+ }
+
+ public void setPublisher(String publisher) {
+ this.publisher = publisher;
+ }
+
+ @Override
+ public String toString() {
+ return "Book{" +
+ "id=" + id +
+ ", bookName='" + bookName + '\'' +
+ ", author='" + author + '\'' +
+ ", publisher='" + publisher + '\'' +
+ '}';
+ }
+}
diff --git "a/04 \346\235\216\346\230\216\345\201\245/20240108 SSM\346\225\264\345\220\210/spring_MVC_03/src/main/java/com/mdd/domain/Result.java" "b/04 \346\235\216\346\230\216\345\201\245/20240108 SSM\346\225\264\345\220\210/spring_MVC_03/src/main/java/com/mdd/domain/Result.java"
new file mode 100644
index 0000000..c32c8eb
--- /dev/null
+++ "b/04 \346\235\216\346\230\216\345\201\245/20240108 SSM\346\225\264\345\220\210/spring_MVC_03/src/main/java/com/mdd/domain/Result.java"
@@ -0,0 +1,66 @@
+package com.mdd.domain;
+
+public class Result {
+ private Integer code;
+ private String msg;
+ private Object data;
+
+ public Result() {
+ }
+
+ public Result(Integer code, String msg, Object data) {
+ this.code = code;
+ this.msg = msg;
+ this.data = data;
+ }
+
+ public Result(Integer code, String msg) {
+ this.code = code;
+ this.msg = msg;
+ }
+
+ // 静态方法
+ // 成功有数据
+ public static Result success(Integer code,String msg,Object data){
+ return new Result(code,msg,data);
+ }
+
+ // 成功或失败无数据
+ public static Result result(Integer code,String msg){
+ return new Result(code,msg);
+ }
+
+
+ public Integer getCode() {
+ return code;
+ }
+
+ public void setCode(Integer code) {
+ this.code = code;
+ }
+
+ public String getMsg() {
+ return msg;
+ }
+
+ public void setMsg(String msg) {
+ this.msg = msg;
+ }
+
+ public Object getData() {
+ return data;
+ }
+
+ public void setData(Object data) {
+ this.data = data;
+ }
+
+ @Override
+ public String toString() {
+ return "Result{" +
+ "code=" + code +
+ ", msg='" + msg + '\'' +
+ ", data=" + data +
+ '}';
+ }
+}
diff --git "a/04 \346\235\216\346\230\216\345\201\245/20240108 SSM\346\225\264\345\220\210/spring_MVC_03/src/main/java/com/mdd/mapper/BookMapper.java" "b/04 \346\235\216\346\230\216\345\201\245/20240108 SSM\346\225\264\345\220\210/spring_MVC_03/src/main/java/com/mdd/mapper/BookMapper.java"
new file mode 100644
index 0000000..8024d70
--- /dev/null
+++ "b/04 \346\235\216\346\230\216\345\201\245/20240108 SSM\346\225\264\345\220\210/spring_MVC_03/src/main/java/com/mdd/mapper/BookMapper.java"
@@ -0,0 +1,26 @@
+package com.mdd.mapper;
+
+import com.mdd.domain.Book;
+import org.apache.ibatis.annotations.Delete;
+import org.apache.ibatis.annotations.Insert;
+import org.apache.ibatis.annotations.Select;
+import org.apache.ibatis.annotations.Update;
+
+import java.util.List;
+
+public interface BookMapper {
+ @Select("select id, book_name bookName, author, publisher from tb_book")
+ List selectAll();
+
+ @Insert("insert into tb_book(book_name, author, publisher) value(#{bookName}, #{author}, #{publisher})")
+ Integer addBook(Book book);
+
+ @Select("select id, book_name bookName, author, publisher from tb_book where id = #{id}")
+ Book selectById(int id);
+
+ @Update("update tb_book set book_name = #{bookName},author = #{author},publisher = #{publisher} where id = #{id}")
+ Integer updateById(Book book);
+
+ @Delete("delete from tb_book where id = #{id}")
+ Integer deleteById(int id);
+}
diff --git "a/04 \346\235\216\346\230\216\345\201\245/20240108 SSM\346\225\264\345\220\210/spring_MVC_03/src/main/java/com/mdd/service/BookService.java" "b/04 \346\235\216\346\230\216\345\201\245/20240108 SSM\346\225\264\345\220\210/spring_MVC_03/src/main/java/com/mdd/service/BookService.java"
new file mode 100644
index 0000000..163ca1f
--- /dev/null
+++ "b/04 \346\235\216\346\230\216\345\201\245/20240108 SSM\346\225\264\345\220\210/spring_MVC_03/src/main/java/com/mdd/service/BookService.java"
@@ -0,0 +1,19 @@
+package com.mdd.service;
+
+import com.mdd.domain.Book;
+
+import java.util.List;
+
+public interface BookService {
+ // 查询所有
+ List selectAll();
+
+ // 添加
+ Integer addBook(Book book);
+
+ Book selectById(int id);
+
+ Integer updateById(Book book);
+
+ Integer deleteById(int id);
+}
diff --git "a/04 \346\235\216\346\230\216\345\201\245/20240108 SSM\346\225\264\345\220\210/spring_MVC_03/src/main/java/com/mdd/service/impl/BookServiceImpl.java" "b/04 \346\235\216\346\230\216\345\201\245/20240108 SSM\346\225\264\345\220\210/spring_MVC_03/src/main/java/com/mdd/service/impl/BookServiceImpl.java"
new file mode 100644
index 0000000..6a3e42b
--- /dev/null
+++ "b/04 \346\235\216\346\230\216\345\201\245/20240108 SSM\346\225\264\345\220\210/spring_MVC_03/src/main/java/com/mdd/service/impl/BookServiceImpl.java"
@@ -0,0 +1,44 @@
+package com.mdd.service.impl;
+
+import com.mdd.domain.Book;
+import com.mdd.mapper.BookMapper;
+import com.mdd.service.BookService;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+
+import java.util.List;
+@Service
+public class BookServiceImpl implements BookService {
+
+ @Autowired
+ private BookMapper bookMapper;
+
+ public List selectAll() {
+ System.out.println("业务层正在处理查询所有业务");
+ return bookMapper.selectAll();
+ }
+
+
+ public Integer addBook(Book book) {
+ System.out.println("业务层正在处理添加业务");
+ return bookMapper.addBook(book);
+ }
+
+
+ public Book selectById(int id) {
+ System.out.println("业务层正在处理查询单个业务");
+ return bookMapper.selectById(id);
+ }
+
+ public Integer updateById(Book book) {
+ System.out.println("业务层正在处理修改业务");
+ return bookMapper.updateById(book);
+ }
+
+
+ public Integer deleteById(int id) {
+ System.out.println("业务层正在处理删除业务");
+ return bookMapper.deleteById(id);
+ }
+
+}
diff --git "a/04 \346\235\216\346\230\216\345\201\245/20240108 SSM\346\225\264\345\220\210/spring_MVC_03/src/main/webapp/WEB-INF/web.xml" "b/04 \346\235\216\346\230\216\345\201\245/20240108 SSM\346\225\264\345\220\210/spring_MVC_03/src/main/webapp/WEB-INF/web.xml"
new file mode 100644
index 0000000..9f88c1f
--- /dev/null
+++ "b/04 \346\235\216\346\230\216\345\201\245/20240108 SSM\346\225\264\345\220\210/spring_MVC_03/src/main/webapp/WEB-INF/web.xml"
@@ -0,0 +1,7 @@
+
+
+
+ Archetype Created Web Application
+
diff --git "a/04 \346\235\216\346\230\216\345\201\245/20240108 SSM\346\225\264\345\220\210/spring_MVC_03/src/main/webapp/css/index.css" "b/04 \346\235\216\346\230\216\345\201\245/20240108 SSM\346\225\264\345\220\210/spring_MVC_03/src/main/webapp/css/index.css"
new file mode 100644
index 0000000..545b689
--- /dev/null
+++ "b/04 \346\235\216\346\230\216\345\201\245/20240108 SSM\346\225\264\345\220\210/spring_MVC_03/src/main/webapp/css/index.css"
@@ -0,0 +1,170 @@
+/* 公共*/
+html,
+body {
+ width: 100%;
+ height: 100%;
+}
+
+.container {
+ width: 1340px;
+ margin: 0 auto;
+ padding-top: 60px;
+ box-sizing: border-box;
+}
+
+/* alert提示框 */
+.toast {
+ position: fixed;
+ top: 20px;
+ left: 50%;
+ transform: translateX(-50%);
+}
+
+.toast .toast-body {
+ padding: 0 !important;
+}
+
+.toast .alert-success {
+ margin-bottom: 0 !important;
+}
+
+/* 头部导航 */
+.container .top {
+ display: flex;
+ justify-content: space-between;
+}
+
+.container .top h3 {
+ font-weight: 900;
+}
+
+.container .top .plus-btn {
+ background-color: #539ACB !important;
+ color: #fff;
+ border: none;
+}
+
+/* 表格部分 */
+.table {
+ margin-top: 20px;
+ text-align: center;
+ font-size: 14px;
+}
+
+.table-light th {
+ background-color: #939CA7 !important;
+ color: #ffffff;
+ font-family: PingFangSC-Medium;
+ font-size: 16px;
+ text-align: center;
+ font-weight: 500;
+ border-right: 1px solid lightgray;
+}
+
+.table-light th:last-of-type {
+ border-right: none;
+}
+
+/* 表格内容 */
+.table tbody td {
+ color: #696F77;
+}
+
+.table .del {
+ color: #E5964C;
+ margin-right: 30px;
+}
+
+.table .edit {
+ color: #539ACB;
+}
+
+.table tbody tr {
+ height: 30px;
+ line-height: 30px;
+}
+
+.table tbody tr td:last-of-type span {
+ cursor: pointer;
+}
+
+/* 弹出层 */
+.modal .top {
+ display: flex;
+ justify-content: center;
+ background-color: #F0F3F7;
+ padding: 15px 0;
+ width: 100%;
+ position: relative;
+ color: #1E2023;
+}
+
+/* 右上角-关闭按钮 */
+.modal .btn-close {
+ font-size: 12px;
+ position: absolute;
+ top: 50%;
+ transform: translateY(-50%);
+ right: 23px;
+ /* 覆盖bootstrap样式 */
+ margin: 0;
+ padding: 0;
+}
+
+/* 表单容器 */
+.form-wrap {
+ box-sizing: border-box;
+ background-color: white;
+ padding: 40px;
+}
+
+.form-wrap .form-label {
+ color: #696F77;
+}
+
+/* 修改输入框默认占位文字
+ webkit内核, firefox18-, firfox19+, 其他
+ */
+.form-wrap input::-webkit-input-placeholder {
+ color: #BFBFBF !important;
+ font-size: 14px;
+}
+
+
+/* 底部按钮组 */
+.modal-footer{
+ border-top: 0;
+}
+.btn-group {
+ text-align: center;
+ width: 100%;
+}
+
+/* 修改bs的按钮弹性布局-改成自己设置大小 */
+.btn-group,
+.btn-group-vertical {
+ display: block;
+}
+
+.btn-group button {
+ width: 120px
+}
+
+.btn-group button:first-of-type {
+ border: 1px solid #E3E3E3;
+ background-color: #fff;
+ color: black;
+ margin-right: 60px;
+}
+
+.btn-group button:last-of-type {
+ background-color: #539ACB;
+}
+
+.alert-success {
+ border-color: transparent;
+}
+
+.toast {
+ border: none;
+}
\ No newline at end of file
diff --git "a/04 \346\235\216\346\230\216\345\201\245/20240108 SSM\346\225\264\345\220\210/spring_MVC_03/src/main/webapp/favicon.ico" "b/04 \346\235\216\346\230\216\345\201\245/20240108 SSM\346\225\264\345\220\210/spring_MVC_03/src/main/webapp/favicon.ico"
new file mode 100644
index 0000000000000000000000000000000000000000..0013c7e1b42ec9209e21551fbe205602fbfca0ec
GIT binary patch
literal 16958
zcmeHO>5~*S6d#Hz{15!99}#av1Vmf`6$AxE1Vy1JP*J>4E;+2FKrBlw5Lpfp6%P;!
z2X?w$LYUoUAgGkv7z*d4&Pl})CTyu4pJd3ni8+iacK
zUsaWj{lC)IwZF}Fxy@$l$^v_2t7ZYu6{>2BjQ$f*Hx?GLP|HGyg$td40a$>kn;v$S
z*M)@|7Sb$StORVp*hTCI{AOVf3zrH3tJ()FjXt^5s0L$zfyR8ln8&={dj)2$>-5SP
zK2HY&6y5y|`Ij!DrUkE1)BL&A^5$z4cyBp{zt}>t-+rZZz;DPyFEicJLb1cYPUXj@14}L7%nZ&6RhHavK57S%FX)=_H!B;(-
zGO?IURf^UAWhzU`RWHR$wh-1Iv5#}pezx9OArZgxo&l6@ZI!MrgFm?TBWZpz1sf-h
z)y3}`HJmcZWFDJLB2Hx$Kl(ShA00_`J+4;kxW|poDkI|euU?sz*R*h+T91#jq|2$6k-^`P)1F$n
zz=U&P-#nQho1NJKnN&*UnqoGa{w!e)=Rq7X&wcri94eU0Liz{hzDCJfA73L!2UD*)pluC<-qT}yI?@Z5pN{t`qB{)-QFTx(vJ@P)yK2Yby&DT)fE!QcbVZvisqKWt&Y&_Ku
z8>EIh)MI@q2ItU$YQA&u9a(wqF%K$dNLdZE!w={K-^>@YWD#W+)46tnh+iycHQj{0
zL!x~1U8WlY?=Ca#gHq$Sv%N)-odZ+~MRt5a_FMGNLQ9F?(dR~re!II;psRAkemO{v
z+k0w`g;L>n4(LPizy4I)th7Y@$RF%X`lh@-a6SA0B^`D(XxWHnb02GL;^grTgAAP?
zW;R`D-NzK(zLipL?K7s>p`QuokY;$Sb
z;J!K2HEnJ9eyrd#E2}l%;aBobdp@rn=tk`S;9Dt{;Dd4vyF0H9QQn5}j}QrGAiPcA
ztf_|eL>@+I_;+#%XQi-pjq1TZDRv(OUz<@IJWp#a%7j8x&+HanrjXb*VyNc1uz$rn
zQhZw$zmeN@(!X(zhp{9hw|mS8O}=qbemz~+4$$!siu`qqs
z#Lnb7ADKAS*r3TXym_M~KD;gXPqYYjJ})B^x4iY578}!NE@qR<@aJWs%-5qwVdm43
z9S2xHBRhBKu_EYr-lj~9{XroFJ4=Q?FB9Ff)36!LCo>;f|H`EVn+Rv6&O2`-&vTOqGRqL|M`1kSj1f8*dIsUA3XJB!gI_K
z**1;jf^Dle-yj?Ca*F?bg!Fu+kO_LBR4OD@gkDv*(a^lpF2~m-r;GZb(>=rW2{*s
z;cmN_ZlOmzLy5d6A&c%rJ}jtq1mt)jK?m?+~=^1&A{9G}f=Y_3y+n
zY5cGQDIV`|%(()OVRyN)U&Y=GXQKqXDbGCzV8=ILB^^{c
zT~ld~fm!(;mc=!dCR{tnqkR8(?i@H1?a}o
ztc{FO2NGZ76kR7`MLO2@;EJLfte{5#
literal 0
HcmV?d00001
diff --git "a/04 \346\235\216\346\230\216\345\201\245/20240108 SSM\346\225\264\345\220\210/spring_MVC_03/src/main/webapp/index.html" "b/04 \346\235\216\346\230\216\345\201\245/20240108 SSM\346\225\264\345\220\210/spring_MVC_03/src/main/webapp/index.html"
new file mode 100644
index 0000000..2babdbe
--- /dev/null
+++ "b/04 \346\235\216\346\230\216\345\201\245/20240108 SSM\346\225\264\345\220\210/spring_MVC_03/src/main/webapp/index.html"
@@ -0,0 +1,127 @@
+
+
+
+
+
+
+
+ 案例-图书管理
+
+
+
+
+
+
+
+
+
+
+
+
+
+
图书管理
+
+
+
+
+
+
+ 序号 |
+ 书名 |
+ 作者 |
+ 出版社 |
+ 操作 |
+
+
+
+
+ 1 |
+ JavaScript程序设计 |
+ 马特·弗里斯比 |
+ 人民邮电出版社 |
+
+ 删除
+ 编辑
+ |
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git "a/04 \346\235\216\346\230\216\345\201\245/20240108 SSM\346\225\264\345\220\210/spring_MVC_03/src/main/webapp/js/index.js" "b/04 \346\235\216\346\230\216\345\201\245/20240108 SSM\346\225\264\345\220\210/spring_MVC_03/src/main/webapp/js/index.js"
new file mode 100644
index 0000000..af8dd0b
--- /dev/null
+++ "b/04 \346\235\216\346\230\216\345\201\245/20240108 SSM\346\225\264\345\220\210/spring_MVC_03/src/main/webapp/js/index.js"
@@ -0,0 +1,180 @@
+/**
+ * 目标一: 获取接口数据并渲染
+ * 1.1 定义自己的外号
+ * 1.2 通过自己的外号,发送异步请求,获取数据
+ * 1.3 将获取的数据渲染
+ */
+
+// 获取标签元素
+const tbody = document.querySelector('tbody')
+
+// 1.1 定义自己的外号
+const creator = '墨下皆是心酸'
+
+// 因为,添加、删除、编辑后都要渲染一遍,所有分装一个渲染函数
+function getBooksList() {
+ // 1.2 通过自己的外号,发送异步请求,获取数据
+ axios({
+ url: 'http://localhost/books',
+ // params: {
+ // creator
+ // }
+ }).then(result => {
+ // 1.3 将获取的数据渲染
+ // console.log(result.data.data);
+ const list = result.data.data
+ tbody.innerHTML = list.map((item, i) => {
+ // 解构数据
+ const { id, bookName, author, publisher } = item
+ // console.log(id, bookName, author, publisher);
+ return `
+
+ ${i + 1} |
+ ${bookName} |
+ ${author} |
+ ${publisher} |
+
+ 删除
+ 编辑
+ |
+
+ `
+ }).join('')
+
+ })
+}
+getBooksList()
+
+
+
+/**
+ * 目标二:添加图书
+ * 2.1 获取添加弹框d对象
+ * 2.2 给保存按钮添加点击事件,收集表单信息,隐藏弹框
+ * 2.3 通过获取的表单内容,发送异步请求
+ * 2.4 清空表单,刷新图书列表
+ */
+
+// 2.1 获取 添加弹框 对象
+const addModalDom = document.querySelector('.add-modal')
+const addModal = new bootstrap.Modal(addModalDom)
+
+// 2.2 给保存按钮添加点击事件,收集表单信息,隐藏弹框
+document.querySelector('.add-btn').addEventListener('click', () => {
+ // 获取添加弹框中的表单对象
+ const addForm = document.querySelector('.add-form')
+ // console.log(addForm);
+ // 使用表单插件,获取表单信息
+ const objBook = serialize(addForm, { hash: true, empty: true })
+ // console.log(objBook);
+ // 2.3 通过获取的表单内容,发送异步请求
+ axios({
+ url: "http://localhost/books",
+ method: 'post',
+ data: {
+ // creator,
+ ...objBook
+ }
+ }).then(result => {
+ // 2.4 清空表单,刷新图书列表
+ // console.log(result);
+ // 刷新图书列表
+ getBooksList()
+ // 隐藏 添加弹框
+ addModal.hide()
+ // 清空表单
+ addForm.reset()
+ })
+})
+
+/**
+ * 目标三:删除图书
+ * 3.1 给 tbody 添加点击事件(事件委托)
+ * 3.2 通过自定义属性,向接口发送异步请求,删除图书
+ * 3.3 刷新图书列表
+ */
+
+tbody.addEventListener('click', e => {
+
+ // 判断点击的是不是删除
+ if (e.target.className === 'del') {
+ // 是否删除弹框(提高数据安全性)
+ if (!confirm('你确定要删除吗?')) {
+ return
+ }
+ // console.log('你点击的是删除');
+ // 获得父级身上的自定义属性
+ const id = e.target.parentNode.dataset.id
+
+ // 3.2 通过自定义属性,向接口发送异步请求,删除图书
+ axios({
+ url: 'http://localhost/books/' + id,
+ method: 'delete'
+ }).then(result => {
+ // 3.3 刷新图书列表
+ getBooksList()
+ })
+ }
+})
+
+/**
+ * 目标四:修改图书
+ * 4.1 给 tbody 添加点击事件(事件委托),显示弹框
+ * 4.2 通过 id 发送异步请求,获取当前图书的信息,回显在表单上
+ * 4.3 点击 修改 将修改后的数据提交给异步请求,隐藏弹框,刷新表单页面
+ */
+
+// 获取 编辑弹框对象
+const editModalDOM = document.querySelector('.edit-modal')
+const editModal = new bootstrap.Modal(editModalDOM)
+// 4.1 给 tbody 添加点击事件(事件委托),显示弹框
+tbody.addEventListener('click', e => {
+ // 判断点击的是不是编辑
+ if (e.target.className === 'edit') {
+ // console.log('你点击的是编辑');
+ // 获得父级身上的自定义属性
+ const id = e.target.parentNode.dataset.id
+ // 4.2 通过 id 发送异步请求,获取当前图书的信息,回显在表单上
+ axios({
+ url: 'http://localhost/books/' + id,
+ }).then(result => {
+ // console.log(result.data.data);
+ // 因为,获取到的数据的 key 名刚好是每个表单的 类名
+ // 所以,可以先获取响应数据中的所有 key,遍历回显
+ const bookInfo = result.data.data
+ // console.log(bookInfo)
+ const keys = Object.keys(bookInfo)
+ // console.log(keys);
+ keys.forEach(key => {
+ document.querySelector(`.edit-form .${key}`).value = bookInfo[key]
+ })
+ // 显示弹框
+ editModal.show()
+ })
+ }
+})
+
+// 获取编辑弹框中的表单对象
+const editForm = document.querySelector('.edit-form')
+// 4.3 点击 修改 将修改后的数据提交给异步请求,隐藏弹框,刷新表单页面
+document.querySelector('.edit-btn').addEventListener('click', () => {
+ // 使用插件获取表单信息,并解构
+ const objBook = serialize(editForm, { hash: true, empty: true })
+ // console.log(objBook)
+ // 将修改后的数据提交给异步请求
+ axios({
+ url: 'http://localhost/books/',
+ method: 'put',
+ data: {
+ // creator,
+ ...objBook
+ }
+ }).then(result => {
+ // console.log(result);
+ // 隐藏弹框
+ editModal.hide()
+ // 刷新图书列表
+ getBooksList()
+ })
+
+})
diff --git "a/04 \346\235\216\346\230\216\345\201\245/20240108 SSM\346\225\264\345\220\210/spring_MVC_03/src/main/webapp/lib/form-serialize.js" "b/04 \346\235\216\346\230\216\345\201\245/20240108 SSM\346\225\264\345\220\210/spring_MVC_03/src/main/webapp/lib/form-serialize.js"
new file mode 100644
index 0000000..82a6aca
--- /dev/null
+++ "b/04 \346\235\216\346\230\216\345\201\245/20240108 SSM\346\225\264\345\220\210/spring_MVC_03/src/main/webapp/lib/form-serialize.js"
@@ -0,0 +1,258 @@
+// get successful control from form and assemble into object
+// http://www.w3.org/TR/html401/interact/forms.html#h-17.13.2
+
+// types which indicate a submit action and are not successful controls
+// these will be ignored
+var k_r_submitter = /^(?:submit|button|image|reset|file)$/i;
+
+// node names which could be successful controls
+var k_r_success_contrls = /^(?:input|select|textarea|keygen)/i;
+
+// Matches bracket notation.
+var brackets = /(\[[^\[\]]*\])/g;
+
+// serializes form fields
+// @param form MUST be an HTMLForm element
+// @param options is an optional argument to configure the serialization. Default output
+// with no options specified is a url encoded string
+// - hash: [true | false] Configure the output type. If true, the output will
+// be a js object.
+// - serializer: [function] Optional serializer function to override the default one.
+// The function takes 3 arguments (result, key, value) and should return new result
+// hash and url encoded str serializers are provided with this module
+// - disabled: [true | false]. If true serialize disabled fields.
+// - empty: [true | false]. If true serialize empty fields
+function serialize(form, options) {
+ if (typeof options != 'object') {
+ options = { hash: !!options };
+ }
+ else if (options.hash === undefined) {
+ options.hash = true;
+ }
+
+ var result = (options.hash) ? {} : '';
+ var serializer = options.serializer || ((options.hash) ? hash_serializer : str_serialize);
+
+ var elements = form && form.elements ? form.elements : [];
+
+ //Object store each radio and set if it's empty or not
+ var radio_store = Object.create(null);
+
+ for (var i=0 ; i$uTC1=l^?WPi)UBKsu|%j|En
zxl_m8I#vW~k4oT_S!N4W7@HBzgTT6;%nzN(dizeL`m=Q(
zSzV!z3#l%k@`Y9zYaHr(X?WC$Kk_@Q)yHLw3#{;v|5rvc60nn=(14w&-|5pXIy=rB
zY3Jh}S_11_+AIN^QYO6D1Dh9{8yoA7WO@?P5c#t~uDjjf$-YW*?PHbCRh_kkk2SP>
zw7D?%&$SCovT~WItS4WGeH|6_3v*ozg={A(&v$7p0@JPXe+-e`f)}>M51~fj_bw3_
z;~>{AE8(2Ip~JM#7)uzV_r_lZf|o>gf-*^7kRM$;gZNsuC&|{zqK7LK`$GVlxJsG8
z6sC!U5BJGe$S;3K<--|9f_AfdiqUqnc8Yqt>7C+IX&db?gsOm<=ZPC6#v|Tw5;8@0
hp4b+t%eT!88P9L?s5gUabn7hjSk)YPK~?5k_zjMT$M66E
literal 0
HcmV?d00001
diff --git "a/04 \346\235\216\346\230\216\345\201\245/20240108 SSM\346\225\264\345\220\210/spring_MVC_03/target/classes/com/mdd/config/MybatisConfig.class" "b/04 \346\235\216\346\230\216\345\201\245/20240108 SSM\346\225\264\345\220\210/spring_MVC_03/target/classes/com/mdd/config/MybatisConfig.class"
new file mode 100644
index 0000000000000000000000000000000000000000..db3eb840dd7074b1868ce283f76a550356f9189a
GIT binary patch
literal 1208
zcmb7DT~8B16g|@xy41E{u^@f|eid3e67>mV0vMi(8cRrgGSlr)2fDj;cdPKP^aT=0
z`~m(bB`csKxQ*&Yk|pz@%5{|*V5sRYIV6&Y6Pz8?yAt(^>8y2
ze=w22orW8D(rdS+8~A&sBe#!QDmKyPV6`Stjy`sqI*Lr-Zz(qp!lMnXe1VNhV_$tz
zhmz;=rHWNE=!dReTWSPhM|ug1jC!H*JF+>7gXFpPS)#zqXhJp?MSCrQ<^N%xd)xP8
zzDOPg6a^~(`V4v0up&^T
z59;(my&ZVU_<7VJ1y)C}TwdXCObIZL$Cl~VWj+&_vZc$eqFG+I_O%-e6e1m;8%tpB
zPmZJa%f#*+_4Inzs7Oa|lzX5$w0=3sNr;=VHRGE7SBk`M5IF>50ay6@*)I($qsVcR
zE6FGr$CghZzH*Yn6vy$w<^-;Co=*TMVVWy}YbXJ(WDJB?~-;uyK=xn^<5?U1ubR;xFYfFIy@?KP#Co+YFU(Go)Z~y=R
literal 0
HcmV?d00001
diff --git "a/04 \346\235\216\346\230\216\345\201\245/20240108 SSM\346\225\264\345\220\210/spring_MVC_03/target/classes/com/mdd/config/SpringConfig.class" "b/04 \346\235\216\346\230\216\345\201\245/20240108 SSM\346\225\264\345\220\210/spring_MVC_03/target/classes/com/mdd/config/SpringConfig.class"
new file mode 100644
index 0000000000000000000000000000000000000000..f96ab6371a868ca47d307811a0c4ca359251c19e
GIT binary patch
literal 631
zcmb7BO-lnY5Phlr&{}P+pG6b|59*=0h!;hWf}m6dE4_HirfE&>CMBD#`m;O<9{d6R
zC~t=8K5sEQlWow{f?;zkigbX66s)P<|eG>*}kq+~L!zvW7B;RpCp
z;?4L#Ly#_30VF7MAKLqg}&74T}ubU8R-VV<@k0^cgCLW*`|_U8Ut|
zo`%w1h%g~$u4^KZ^o3O(e~=Y-qcVooZe&uP4hB3j`dY=jH?&H}C!^@Fz&i}}p2=+_
zkCm_0{&C*96(hm0e4cBkQrTCTB8>yBjT258O%mH(V`H8bb+4^R<=EIeFX!aFP&2J<%%&`CK`^GZlnY5!s
zx=(AqJ@rU?D=%e8M(s3ELBO!`x04Jr-YcF69rLsBRz?nMDA9-d!Dvzyid90qz(BD1
w2=+ik2{npUqJcUlC^m|HfJwsse5!~IOw+ndMVqv?=+4X)N*QJ|%wZmQ1F06G1^@s6
literal 0
HcmV?d00001
diff --git "a/04 \346\235\216\346\230\216\345\201\245/20240108 SSM\346\225\264\345\220\210/spring_MVC_03/target/classes/com/mdd/config/SpringMvcSupport.class" "b/04 \346\235\216\346\230\216\345\201\245/20240108 SSM\346\225\264\345\220\210/spring_MVC_03/target/classes/com/mdd/config/SpringMvcSupport.class"
new file mode 100644
index 0000000000000000000000000000000000000000..3a57a054de03ad1c08ff8b06606a00504eb9f05e
GIT binary patch
literal 1325
zcmb_bTW=CU6#j3H8cqxfID&eA{vx
zmXg{Z2NPje1`InD+wbw7<8a&e+OoszeI>ol!O*S``h8!8Wrh{YacUy)2g(-DEzfa<
zqMOxx#aA63MCaSe>WL#?z2!%u#RH*+t_V*`TAt^JRw#Xs&y=Z&jtoNeuB`E!YV0w*
zTwrO2bUlLpOlmRKW(k%Kt)a!RQ5$%n?1_d9B&qcDH)f*xXf7NQEELBfpP;uNX*f_3
z*>VQU$TDR054dZ2ByOn1WiYrM1iV-@P|ASg9z!yU7`UIo1MR2yp*}#bsttX^m8~d{
zj4XyFEM00lywB3K>n{eHSY&BEPadb8(Vi@R
z2KyMLbF`+SpotZ-Gou4o#Tt1Dtm6Vj^yME&QaRwmZsIFquj9FR{Sy*nJ4tq`d6F?E
zGUim~%tR(Vm06m|X#2EUW+J2QRPz-2CV|(WH;M5cajp{EF7bU&kTsq45#%u)0*{N>
TAVM*^q1CyB%d~3&t^mIPg{pM?
literal 0
HcmV?d00001
diff --git "a/04 \346\235\216\346\230\216\345\201\245/20240108 SSM\346\225\264\345\220\210/spring_MVC_03/target/classes/com/mdd/config/WebConfig.class" "b/04 \346\235\216\346\230\216\345\201\245/20240108 SSM\346\225\264\345\220\210/spring_MVC_03/target/classes/com/mdd/config/WebConfig.class"
new file mode 100644
index 0000000000000000000000000000000000000000..f33b4aae9079cfb078ce9654d068c36097aaabdc
GIT binary patch
literal 846
zcmaKqQBTxB5Xb+^l`B_I4$nJ5P?R^|!F}OPLPE}%m>fP>gE9KD?JZ@sx7%#@j>J!;
zPbMbv0r*gaX?p^e(?0CZ%+CDgztg?A{B;gs4_g72@Yu(?j}0GBd^}ykrjKVno-;J}
zl~(S6p|QPl%-{{oNHTPWO3SyCaU|_~5v3IA4oxi5V_{X{&w`#iRXM}@Fg9a89*uZx
z^odIN2N?}Y>m@@kk?x%_t_loNk>`?XdfPjnhF`=~@Kor8mvPE&g(}g)O)Rxsos+V^
zdq7#M#0;gKrm~Lh-kcnXEK@q6Uj4s8p|cbxOc0uhjpb`qTyXhX^ov4P8!ZGhh?+!(
zjoMwqte{o5W7wQ~dNhsyB&^&3D;*4sGpyC>uEj8XHa6jT+2zEFu{<;OD?gJFMXW
ze3E6xI(``C&WhL_YHgfw%IK=;E0t%$#i!EFX7+~uxDu)QCM~w$)9WZc4>W!RwB93+
z)6QsL-2DmmgNy~VX>C?P+$Xy|vzO5!&%+8HP*zdASHgh6`;CQV!Z
literal 0
HcmV?d00001
diff --git "a/04 \346\235\216\346\230\216\345\201\245/20240108 SSM\346\225\264\345\220\210/spring_MVC_03/target/classes/com/mdd/controller/BookController.class" "b/04 \346\235\216\346\230\216\345\201\245/20240108 SSM\346\225\264\345\220\210/spring_MVC_03/target/classes/com/mdd/controller/BookController.class"
new file mode 100644
index 0000000000000000000000000000000000000000..3f1b0cea9bbd066a1339bd38d615f51170ee9575
GIT binary patch
literal 3313
zcma)8S#uOs6#njH>CP}LnGhBs5LS~A(x^ZJA<--bBLl<)qljD2bSE_F=?=XlM#L2r
zdGdiO%hCeMf=3lBDiE;r&9eL*B!y4@0n75-?&)PR6DkkW_ukWI`_6an>G|uw2fqQ>
zk1I)R!?7A>7@iS4TBl%j#;6VVI8WXr^H^bYx6xT(T!E%@`lEBVh$H7FC=0J50wx&_EIa=p(~beyUQFa_J2R*-v^JH&vUGV8nj+vlL)Db5yVMF*(gjVq
z$Z&A^KxOA_&^kOBcT$lZ)lX*mbPu_)Y9$rwroc!0vNP%TtfH<-j+m~MQwKEO<8{1G
zqMmKzgfDfu%Jn0)uoIaR(DL`Pys5`llvuUIo6=5UH=Y(?rC`HhSQFl%M$K+CC$l4gv3{uoo8ue2~ILe8{jq>gExL
z&y8MJ(-qaCn_jp`euT!ZuCDGBKElWRLEb*aXDRH%r4&BL7d+g(hx1o%#KL`v%b|Gw
z=AFlPZ&4O>yP^&(^4y89{G=DYxv}u$%|{O&`07!Q6sh;(5~)A>{ilVib79a>5|0-(
zNRfknuSoNkZ~Xo3&A0qkenr;lWk*F{xsIdZ9g;~e@tjKs|
z#&%R1G8LvvF6#a3shQFcG2;+Fs+^~Gs`FeIi)rxjvG3>x*~Ra*&uS+h>VkK1PmVFH
zYZ`1WbN3lG1sRt4_)tsGxb|YZj;2c)&E|8uJ}@a7;1tbvb2-(f@4`?#pI~Oj!WUAE
zN&F%{VN_SsyjKmHVSD4g1FSJmzNpaDlx>lI7$)LsvA*b-zKCIMfZm(^g;)$NOMPY{
zrvYXLktiDV$0vPg2kE3a%4n@>xd(QKHVHHrlz^3Jp?%6%z#g>HiAst#(&EO)P~p96_yvh{
z#Vjgo@#lS1rK?-+LYRZda33|dNzr$jq!m~T5%n?04F$(Rj*=H-AD$uSJji#nR?yl<
zK^`J``W{xKQ?ppPXBMkwv6`atXnW?cCV}Ivv#7m>)rCCL_fdDdmR;pJt>t@iQ{mxD
zqmuTUuo0W7I1OmW7B8hnKU5(l3W{g(9AVsvt@ID_00B5ib|TonXcx#TNV?8=gh|S&TpeLux
zhtMBF=tmbN&ggA}2POugLqN9&VHLgSo$&k_FdHvKPiTu9eoQ@Zlq9cI;!k55NkGVAMUZV40sQ&W*#}aOe
literal 0
HcmV?d00001
diff --git "a/04 \346\235\216\346\230\216\345\201\245/20240108 SSM\346\225\264\345\220\210/spring_MVC_03/target/classes/com/mdd/domain/Book.class" "b/04 \346\235\216\346\230\216\345\201\245/20240108 SSM\346\225\264\345\220\210/spring_MVC_03/target/classes/com/mdd/domain/Book.class"
new file mode 100644
index 0000000000000000000000000000000000000000..75799eae7f0b55718553b2c11689234d2e77116e
GIT binary patch
literal 1809
zcma)*eM{R=6vm(1rfu5BS*!J>b6eeXeX$yyx;L$x3In0&z#;6|&J*az5$8apRR+gMTi4^K$?E{rMZfHjZMLf*M5v8*Db&JYlmH!FCK`
zs4{kVe9GpTjORSQknvK+E>HI&C`GU@5HM;2)8$L;qoy{rR$V=AS$bV>?+VBj)BJFv
zHFbfc$KlLs8?8F+hqaD%VYUULSDi}3xW3S79^NxrhDE}`T>e}@Ix=f?ezI(|^pj4r
zqPO2^m4>ZoR<*{t);9RxU6iZ~<60n9u9{7?S*xivv#A*^^^id5!g9`o(dYCmxn%#d
z!fc_sZXHwfsa)Q3q_0c+*UtW|-?c0dCjmxtax`;GW{{;gsSKS`UM<&$rJ^Kt&`&3w
z=+6~ee>=>sLR+3+*)kmsf!LYZX;<|(1}8Vl7p`+n70hEnK@!snW{^@a%VrKKfw^JL
z9g)M1(Wr3^Wj_AdsFf7F!fQ4M0!lGcabqoIdF_xcEoPh^C}jmEikU$lutyOq)LA~2
z6i5uOKCN8pRg0VH>Pl}>HP-wxA^!VScC+wCsd7##h)3?>ee&ij!gd%#
zY$qA>1h-%-%sO5J%&?0ou#6Q~%L@`51zGe3d5o+dNN^M+Lm*3IK)B?bft)XhGzzlp
z3zGK-kw!ss1d<;E!bM_`f-gvD6r|`2vg!}w=_sc(8w9dB284TrLFiSJ<&OPC<>MYX
z{e|%R8$^Uo`lsn?kAboBs_>?
zJ&6QX64;QuDWQf6%0?+5>-m`RDQKa|0n)|X{J#ZWEoP!EU
zGkf)-Q+e++JX!k>W33Nf)4=(?V!fKLmP+|jz3OrTtLr>*1#iQV&I7{
zOtj?Ac34W|&33WqHmT+H*$#y;o_Yzhp{`?~a5n6@Q<36jx1|jp%gqHOoH!#FIjI;A
zBa^$D1bHF7&h}t*x@{6d?T-Z!{B30x0d~|x^dfX-LPY3-9*96|60N!hG?08-Z#RnW
zt|wEH(w$$D0kv=e7cFEkY9Wg;3*$I%U@UZ0q;^WeG^eRM-I`;o?Nv%{!+@pHzsPH_
zX<-LXB<#|)g=tRz=BzBAs-;XkOK!t9Fx&;ySD=T^r%!IJWMDDOqd;eR6mXz>>Q4;$
zPyIx0JJ{%6I9%oXKf=#M6cO=>{~}_Q%5;m_f+03CUgBz**9k70aQWtSO~JO+Lx
zVi?2(|H&a1;R+_11z?I%04l7EF=qw9oqUh`?5Q@YTkeqmtWo?keI`Hjm6#3z$Qpqb*4hE4gl%WcJY*-t6;5sH|>bsx4s
zS#q4%w7F#QdjMXn$b6`fc`SqpiS`T0Q^>7TglM1nDq$%^NUUGTa;T6z
z;q^!t=!djMIT9FR?Z_&H+&@K#45_q&9|<3;NF-^^+Ak#bk1?1@9w8-dI)arsr~gNp
ihG&m3lu7FcF>Vfj<%1&(_lw^Mh+pfxk9SBB!SX+Z6mVw%
literal 0
HcmV?d00001
diff --git "a/04 \346\235\216\346\230\216\345\201\245/20240108 SSM\346\225\264\345\220\210/spring_MVC_03/target/classes/com/mdd/mapper/BookMapper.class" "b/04 \346\235\216\346\230\216\345\201\245/20240108 SSM\346\225\264\345\220\210/spring_MVC_03/target/classes/com/mdd/mapper/BookMapper.class"
new file mode 100644
index 0000000000000000000000000000000000000000..a14a76ca68493487c0c96de3f799a77ae6458160
GIT binary patch
literal 1085
zcmbtTU27CE6uqh4uC3bEs=p-#_%O^(?#DUj=H8#bzW)G#7x1_b5Bud3ab6;9XApR@h+8YffE+#o%5_j;DeeaRboIBL^#nrm%%zlV?cT7
zr^XIwQ6`ykQ)%g`H97UkNfk|?&xNR%5qK7LGX5hx<2q$S?PV%0!e7O6sGYP`lRm3p
zQKh|UP@|S;2fvsGWzpV66;+9t4d~uQts|JNlvzw*t=50^Z72xrM8mjK1cBrK>J$Bn
zos-yPdVpM%m?3ak2<~MKd{sL>gjj4xT4yz#picUQXRC_ORo9XOVxzv59&X#ytc#z(
zQEB*XSB(h+{EzSWIut?TPwH})rl$*aY)U(kZ&Ze}xls+)TV52>KCi%W^qZZ?!)@4!
zI)K3DoZq|T3^#9u0D&c3N`T%nforggryib`Ur&pGHt#O_?!op#-u>3MgVt_f^WZn!&peI*
literal 0
HcmV?d00001
diff --git "a/04 \346\235\216\346\230\216\345\201\245/20240108 SSM\346\225\264\345\220\210/spring_MVC_03/target/classes/com/mdd/service/BookService.class" "b/04 \346\235\216\346\230\216\345\201\245/20240108 SSM\346\225\264\345\220\210/spring_MVC_03/target/classes/com/mdd/service/BookService.class"
new file mode 100644
index 0000000000000000000000000000000000000000..581c9e6dcac70c0bf5af39bbee0a511d60249e88
GIT binary patch
literal 402
zcmZvY%}T>i5QWdwwz2WAb|Hc&T?DM2jtsvY7N1zX?pngcFQePgspGW$ob<;5vif)w4mLZ23qn9ZqVN42vDA1O9_)=_UmRaye-HX_pce;mD2Bt@9*N50%JpUq-V_*W|ulADg3r(;uYatltp1kyKMRC=Yx$bttnVfMOdP!
zCM}DAsdVlEj9X~>5f^<=Cn)ICUd&1Ox8p;R{A!7n1|Ju#?#kb{uGSws{pa_`_3OXX?_UobqL@zLG`>k7iT)_E32eYd
zhRyBeZ{F8#JPckXuopzB7iv{?haGn~GX6{qvk_vnz$j{P!+cYL_m1F}!Ev0MxNHeGM$`jnC
zhU)hte7sHFsRvV84(U=$nt)U^uNggd!;LgrCZBG&kG?ewtLYcf1tPnKK0@7O2SQ6#
zr_~Ux46=;u^07ByFX$nH;m`@_#X5RU1P&O%dRj4EYx2_K<7Bls`4W-jve)Pudxhom
z=w|qXb^}tJEGU^6rLss%hO{qyzfDA;#-M*q{gxD3)32$~kh)_Yu}BMcEn$az>|h`X
zu_VS8Y$YHAwNN{7PY52FN4yohfxsI(fVU&%gQ?}(fqNG-PPBqY3B08PxREinXglzV
b#f(?Bf>Q)ecK`<&N3hes?On}w*bV#-xQw?n
literal 0
HcmV?d00001
diff --git "a/04 \346\235\216\346\230\216\345\201\245/20240108 SSM\346\225\264\345\220\210/spring_MVC_03/target/maven-status/maven-compiler-plugin/compile/default-compile/createdFiles.lst" "b/04 \346\235\216\346\230\216\345\201\245/20240108 SSM\346\225\264\345\220\210/spring_MVC_03/target/maven-status/maven-compiler-plugin/compile/default-compile/createdFiles.lst"
new file mode 100644
index 0000000..d63c3b5
--- /dev/null
+++ "b/04 \346\235\216\346\230\216\345\201\245/20240108 SSM\346\225\264\345\220\210/spring_MVC_03/target/maven-status/maven-compiler-plugin/compile/default-compile/createdFiles.lst"
@@ -0,0 +1,12 @@
+com\mdd\service\impl\BookServiceImpl.class
+com\mdd\config\MybatisConfig.class
+com\mdd\mapper\BookMapper.class
+com\mdd\config\SpringConfig.class
+com\mdd\config\SpringMvcConfig.class
+com\mdd\config\SpringMvcSupport.class
+com\mdd\config\WebConfig.class
+com\mdd\domain\Book.class
+com\mdd\domain\Result.class
+com\mdd\config\JdbcConfig.class
+com\mdd\controller\BookController.class
+com\mdd\service\BookService.class
diff --git "a/04 \346\235\216\346\230\216\345\201\245/20240108 SSM\346\225\264\345\220\210/spring_MVC_03/target/maven-status/maven-compiler-plugin/compile/default-compile/inputFiles.lst" "b/04 \346\235\216\346\230\216\345\201\245/20240108 SSM\346\225\264\345\220\210/spring_MVC_03/target/maven-status/maven-compiler-plugin/compile/default-compile/inputFiles.lst"
new file mode 100644
index 0000000..ff6ee49
--- /dev/null
+++ "b/04 \346\235\216\346\230\216\345\201\245/20240108 SSM\346\225\264\345\220\210/spring_MVC_03/target/maven-status/maven-compiler-plugin/compile/default-compile/inputFiles.lst"
@@ -0,0 +1,12 @@
+E:\SSM\mybatis\mybatis_project\spring_MVC_03\src\main\java\com\mdd\config\SpringMvcSupport.java
+E:\SSM\mybatis\mybatis_project\spring_MVC_03\src\main\java\com\mdd\domain\Book.java
+E:\SSM\mybatis\mybatis_project\spring_MVC_03\src\main\java\com\mdd\domain\Result.java
+E:\SSM\mybatis\mybatis_project\spring_MVC_03\src\main\java\com\mdd\config\SpringMvcConfig.java
+E:\SSM\mybatis\mybatis_project\spring_MVC_03\src\main\java\com\mdd\config\JdbcConfig.java
+E:\SSM\mybatis\mybatis_project\spring_MVC_03\src\main\java\com\mdd\service\impl\BookServiceImpl.java
+E:\SSM\mybatis\mybatis_project\spring_MVC_03\src\main\java\com\mdd\config\WebConfig.java
+E:\SSM\mybatis\mybatis_project\spring_MVC_03\src\main\java\com\mdd\service\BookService.java
+E:\SSM\mybatis\mybatis_project\spring_MVC_03\src\main\java\com\mdd\mapper\BookMapper.java
+E:\SSM\mybatis\mybatis_project\spring_MVC_03\src\main\java\com\mdd\config\MybatisConfig.java
+E:\SSM\mybatis\mybatis_project\spring_MVC_03\src\main\java\com\mdd\controller\BookController.java
+E:\SSM\mybatis\mybatis_project\spring_MVC_03\src\main\java\com\mdd\config\SpringConfig.java
diff --git "a/04 \346\235\216\346\230\216\345\201\245/20240108 SSM\346\225\264\345\220\210/spring_MVC_03/target/tomcat/conf/logging.properties" "b/04 \346\235\216\346\230\216\345\201\245/20240108 SSM\346\225\264\345\220\210/spring_MVC_03/target/tomcat/conf/logging.properties"
new file mode 100644
index 0000000..76c9512
--- /dev/null
+++ "b/04 \346\235\216\346\230\216\345\201\245/20240108 SSM\346\225\264\345\220\210/spring_MVC_03/target/tomcat/conf/logging.properties"
@@ -0,0 +1,64 @@
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements. See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License. You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+handlers = 1catalina.org.apache.juli.FileHandler, 2localhost.org.apache.juli.FileHandler, 3manager.org.apache.juli.FileHandler, 4host-manager.org.apache.juli.FileHandler, java.util.logging.ConsoleHandler
+
+.handlers = 1catalina.org.apache.juli.FileHandler, java.util.logging.ConsoleHandler
+
+############################################################
+# Handler specific properties.
+# Describes specific configuration info for Handlers.
+############################################################
+
+1catalina.org.apache.juli.FileHandler.level = FINE
+1catalina.org.apache.juli.FileHandler.directory = ${catalina.base}/logs
+1catalina.org.apache.juli.FileHandler.prefix = catalina.
+
+2localhost.org.apache.juli.FileHandler.level = FINE
+2localhost.org.apache.juli.FileHandler.directory = ${catalina.base}/logs
+2localhost.org.apache.juli.FileHandler.prefix = localhost.
+
+3manager.org.apache.juli.FileHandler.level = FINE
+3manager.org.apache.juli.FileHandler.directory = ${catalina.base}/logs
+3manager.org.apache.juli.FileHandler.prefix = manager.
+
+4host-manager.org.apache.juli.FileHandler.level = FINE
+4host-manager.org.apache.juli.FileHandler.directory = ${catalina.base}/logs
+4host-manager.org.apache.juli.FileHandler.prefix = host-manager.
+
+java.util.logging.ConsoleHandler.level = FINE
+java.util.logging.ConsoleHandler.formatter = java.util.logging.SimpleFormatter
+
+
+############################################################
+# Facility specific properties.
+# Provides extra control for each logger.
+############################################################
+
+org.apache.catalina.core.ContainerBase.[Catalina].[localhost].level = INFO
+org.apache.catalina.core.ContainerBase.[Catalina].[localhost].handlers = 2localhost.org.apache.juli.FileHandler
+
+org.apache.catalina.core.ContainerBase.[Catalina].[localhost].[/manager].level = INFO
+org.apache.catalina.core.ContainerBase.[Catalina].[localhost].[/manager].handlers = 3manager.org.apache.juli.FileHandler
+
+org.apache.catalina.core.ContainerBase.[Catalina].[localhost].[/host-manager].level = INFO
+org.apache.catalina.core.ContainerBase.[Catalina].[localhost].[/host-manager].handlers = 4host-manager.org.apache.juli.FileHandler
+
+# For example, set the org.apache.catalina.util.LifecycleBase logger to log
+# each component that extends LifecycleBase changing state:
+#org.apache.catalina.util.LifecycleBase.level = FINE
+
+# To see debug messages in TldLocationsCache, uncomment the following line:
+#org.apache.jasper.compiler.TldLocationsCache.level = FINE
diff --git "a/04 \346\235\216\346\230\216\345\201\245/20240108 SSM\346\225\264\345\220\210/spring_MVC_03/target/tomcat/conf/tomcat-users.xml" "b/04 \346\235\216\346\230\216\345\201\245/20240108 SSM\346\225\264\345\220\210/spring_MVC_03/target/tomcat/conf/tomcat-users.xml"
new file mode 100644
index 0000000..7114f5d
--- /dev/null
+++ "b/04 \346\235\216\346\230\216\345\201\245/20240108 SSM\346\225\264\345\220\210/spring_MVC_03/target/tomcat/conf/tomcat-users.xml"
@@ -0,0 +1,26 @@
+
+
+
+
+
diff --git "a/04 \346\235\216\346\230\216\345\201\245/20240108 SSM\346\225\264\345\220\210/spring_MVC_03/target/tomcat/conf/web.xml" "b/04 \346\235\216\346\230\216\345\201\245/20240108 SSM\346\225\264\345\220\210/spring_MVC_03/target/tomcat/conf/web.xml"
new file mode 100644
index 0000000..cc8383c
--- /dev/null
+++ "b/04 \346\235\216\346\230\216\345\201\245/20240108 SSM\346\225\264\345\220\210/spring_MVC_03/target/tomcat/conf/web.xml"
@@ -0,0 +1,4283 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ default
+ org.apache.catalina.servlets.DefaultServlet
+
+ debug
+ 0
+
+
+ listings
+ false
+
+ 1
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ jsp
+ org.apache.jasper.servlet.JspServlet
+
+ fork
+ false
+
+
+ xpoweredBy
+ false
+
+ 3
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ default
+ /
+
+
+
+
+ jsp
+ *.jsp
+ *.jspx
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 30
+
+
+
+
+
+
+
+
+
+
+
+ 123
+ application/vnd.lotus-1-2-3
+
+
+ 3dml
+ text/vnd.in3d.3dml
+
+
+ 3g2
+ video/3gpp2
+
+
+ 3gp
+ video/3gpp
+
+
+ 7z
+ application/x-7z-compressed
+
+
+ aab
+ application/x-authorware-bin
+
+
+ aac
+ audio/x-aac
+
+
+ aam
+ application/x-authorware-map
+
+
+ aas
+ application/x-authorware-seg
+
+
+ abs
+ audio/x-mpeg
+
+
+ abw
+ application/x-abiword
+
+
+ ac
+ application/pkix-attr-cert
+
+
+ acc
+ application/vnd.americandynamics.acc
+
+
+ ace
+ application/x-ace-compressed
+
+
+ acu
+ application/vnd.acucobol
+
+
+ acutc
+ application/vnd.acucorp
+
+
+ adp
+ audio/adpcm
+
+
+ aep
+ application/vnd.audiograph
+
+
+ afm
+ application/x-font-type1
+
+
+ afp
+ application/vnd.ibm.modcap
+
+
+ ahead
+ application/vnd.ahead.space
+
+
+ ai
+ application/postscript
+
+
+ aif
+ audio/x-aiff
+
+
+ aifc
+ audio/x-aiff
+
+
+ aiff
+ audio/x-aiff
+
+
+ aim
+ application/x-aim
+
+
+ air
+ application/vnd.adobe.air-application-installer-package+zip
+
+
+ ait
+ application/vnd.dvb.ait
+
+
+ ami
+ application/vnd.amiga.ami
+
+
+ anx
+ application/annodex
+
+
+ apk
+ application/vnd.android.package-archive
+
+
+ application
+ application/x-ms-application
+
+
+ apr
+ application/vnd.lotus-approach
+
+
+ art
+ image/x-jg
+
+
+ asc
+ application/pgp-signature
+
+
+ asf
+ video/x-ms-asf
+
+
+ asm
+ text/x-asm
+
+
+ aso
+ application/vnd.accpac.simply.aso
+
+
+ asx
+ video/x-ms-asf
+
+
+ atc
+ application/vnd.acucorp
+
+
+ atom
+ application/atom+xml
+
+
+ atomcat
+ application/atomcat+xml
+
+
+ atomsvc
+ application/atomsvc+xml
+
+
+ atx
+ application/vnd.antix.game-component
+
+
+ au
+ audio/basic
+
+
+ avi
+ video/x-msvideo
+
+
+ avx
+ video/x-rad-screenplay
+
+
+ aw
+ application/applixware
+
+
+ axa
+ audio/annodex
+
+
+ axv
+ video/annodex
+
+
+ azf
+ application/vnd.airzip.filesecure.azf
+
+
+ azs
+ application/vnd.airzip.filesecure.azs
+
+
+ azw
+ application/vnd.amazon.ebook
+
+
+ bat
+ application/x-msdownload
+
+
+ bcpio
+ application/x-bcpio
+
+
+ bdf
+ application/x-font-bdf
+
+
+ bdm
+ application/vnd.syncml.dm+wbxml
+
+
+ bed
+ application/vnd.realvnc.bed
+
+
+ bh2
+ application/vnd.fujitsu.oasysprs
+
+
+ bin
+ application/octet-stream
+
+
+ bmi
+ application/vnd.bmi
+
+
+ bmp
+ image/bmp
+
+
+ body
+ text/html
+
+
+ book
+ application/vnd.framemaker
+
+
+ box
+ application/vnd.previewsystems.box
+
+
+ boz
+ application/x-bzip2
+
+
+ bpk
+ application/octet-stream
+
+
+ btif
+ image/prs.btif
+
+
+ bz
+ application/x-bzip
+
+
+ bz2
+ application/x-bzip2
+
+
+ c
+ text/x-c
+
+
+ c11amc
+ application/vnd.cluetrust.cartomobile-config
+
+
+ c11amz
+ application/vnd.cluetrust.cartomobile-config-pkg
+
+
+ c4d
+ application/vnd.clonk.c4group
+
+
+ c4f
+ application/vnd.clonk.c4group
+
+
+ c4g
+ application/vnd.clonk.c4group
+
+
+ c4p
+ application/vnd.clonk.c4group
+
+
+ c4u
+ application/vnd.clonk.c4group
+
+
+ cab
+ application/vnd.ms-cab-compressed
+
+
+ cap
+ application/vnd.tcpdump.pcap
+
+
+ car
+ application/vnd.curl.car
+
+
+ cat
+ application/vnd.ms-pki.seccat
+
+
+ cc
+ text/x-c
+
+
+ cct
+ application/x-director
+
+
+ ccxml
+ application/ccxml+xml
+
+
+ cdbcmsg
+ application/vnd.contact.cmsg
+
+
+ cdf
+ application/x-cdf
+
+
+ cdkey
+ application/vnd.mediastation.cdkey
+
+
+ cdmia
+ application/cdmi-capability
+
+
+ cdmic
+ application/cdmi-container
+
+
+ cdmid
+ application/cdmi-domain
+
+
+ cdmio
+ application/cdmi-object
+
+
+ cdmiq
+ application/cdmi-queue
+
+
+ cdx
+ chemical/x-cdx
+
+
+ cdxml
+ application/vnd.chemdraw+xml
+
+
+ cdy
+ application/vnd.cinderella
+
+
+ cer
+ application/pkix-cert
+
+
+ cgm
+ image/cgm
+
+
+ chat
+ application/x-chat
+
+
+ chm
+ application/vnd.ms-htmlhelp
+
+
+ chrt
+ application/vnd.kde.kchart
+
+
+ cif
+ chemical/x-cif
+
+
+ cii
+ application/vnd.anser-web-certificate-issue-initiation
+
+
+ cil
+ application/vnd.ms-artgalry
+
+
+ cla
+ application/vnd.claymore
+
+
+ class
+ application/java
+
+
+ clkk
+ application/vnd.crick.clicker.keyboard
+
+
+ clkp
+ application/vnd.crick.clicker.palette
+
+
+ clkt
+ application/vnd.crick.clicker.template
+
+
+ clkw
+ application/vnd.crick.clicker.wordbank
+
+
+ clkx
+ application/vnd.crick.clicker
+
+
+ clp
+ application/x-msclip
+
+
+ cmc
+ application/vnd.cosmocaller
+
+
+ cmdf
+ chemical/x-cmdf
+
+
+ cml
+ chemical/x-cml
+
+
+ cmp
+ application/vnd.yellowriver-custom-menu
+
+
+ cmx
+ image/x-cmx
+
+
+ cod
+ application/vnd.rim.cod
+
+
+ com
+ application/x-msdownload
+
+
+ conf
+ text/plain
+
+
+ cpio
+ application/x-cpio
+
+
+ cpp
+ text/x-c
+
+
+ cpt
+ application/mac-compactpro
+
+
+ crd
+ application/x-mscardfile
+
+
+ crl
+ application/pkix-crl
+
+
+ crt
+ application/x-x509-ca-cert
+
+
+ cryptonote
+ application/vnd.rig.cryptonote
+
+
+ csh
+ application/x-csh
+
+
+ csml
+ chemical/x-csml
+
+
+ csp
+ application/vnd.commonspace
+
+
+ css
+ text/css
+
+
+ cst
+ application/x-director
+
+
+ csv
+ text/csv
+
+
+ cu
+ application/cu-seeme
+
+
+ curl
+ text/vnd.curl
+
+
+ cww
+ application/prs.cww
+
+
+ cxt
+ application/x-director
+
+
+ cxx
+ text/x-c
+
+
+ dae
+ model/vnd.collada+xml
+
+
+ daf
+ application/vnd.mobius.daf
+
+
+ dataless
+ application/vnd.fdsn.seed
+
+
+ davmount
+ application/davmount+xml
+
+
+ dcr
+ application/x-director
+
+
+ dcurl
+ text/vnd.curl.dcurl
+
+
+ dd2
+ application/vnd.oma.dd2+xml
+
+
+ ddd
+ application/vnd.fujixerox.ddd
+
+
+ deb
+ application/x-debian-package
+
+
+ def
+ text/plain
+
+
+ deploy
+ application/octet-stream
+
+
+ der
+ application/x-x509-ca-cert
+
+
+ dfac
+ application/vnd.dreamfactory
+
+
+ dib
+ image/bmp
+
+
+ dic
+ text/x-c
+
+
+ dir
+ application/x-director
+
+
+ dis
+ application/vnd.mobius.dis
+
+
+ dist
+ application/octet-stream
+
+
+ distz
+ application/octet-stream
+
+
+ djv
+ image/vnd.djvu
+
+
+ djvu
+ image/vnd.djvu
+
+
+ dll
+ application/x-msdownload
+
+
+ dmg
+ application/octet-stream
+
+
+ dmp
+ application/vnd.tcpdump.pcap
+
+
+ dms
+ application/octet-stream
+
+
+ dna
+ application/vnd.dna
+
+
+ doc
+ application/msword
+
+
+ docm
+ application/vnd.ms-word.document.macroenabled.12
+
+
+ docx
+ application/vnd.openxmlformats-officedocument.wordprocessingml.document
+
+
+ dot
+ application/msword
+
+
+ dotm
+ application/vnd.ms-word.template.macroenabled.12
+
+
+ dotx
+ application/vnd.openxmlformats-officedocument.wordprocessingml.template
+
+
+ dp
+ application/vnd.osgi.dp
+
+
+ dpg
+ application/vnd.dpgraph
+
+
+ dra
+ audio/vnd.dra
+
+
+ dsc
+ text/prs.lines.tag
+
+
+ dssc
+ application/dssc+der
+
+
+ dtb
+ application/x-dtbook+xml
+
+
+ dtd
+ application/xml-dtd
+
+
+ dts
+ audio/vnd.dts
+
+
+ dtshd
+ audio/vnd.dts.hd
+
+
+ dump
+ application/octet-stream
+
+
+ dv
+ video/x-dv
+
+
+ dvb
+ video/vnd.dvb.file
+
+
+ dvi
+ application/x-dvi
+
+
+ dwf
+ model/vnd.dwf
+
+
+ dwg
+ image/vnd.dwg
+
+
+ dxf
+ image/vnd.dxf
+
+
+ dxp
+ application/vnd.spotfire.dxp
+
+
+ dxr
+ application/x-director
+
+
+ ecelp4800
+ audio/vnd.nuera.ecelp4800
+
+
+ ecelp7470
+ audio/vnd.nuera.ecelp7470
+
+
+ ecelp9600
+ audio/vnd.nuera.ecelp9600
+
+
+ ecma
+ application/ecmascript
+
+
+ edm
+ application/vnd.novadigm.edm
+
+
+ edx
+ application/vnd.novadigm.edx
+
+
+ efif
+ application/vnd.picsel
+
+
+ ei6
+ application/vnd.pg.osasli
+
+
+ elc
+ application/octet-stream
+
+
+ eml
+ message/rfc822
+
+
+ emma
+ application/emma+xml
+
+
+ eol
+ audio/vnd.digital-winds
+
+
+ eot
+ application/vnd.ms-fontobject
+
+
+ eps
+ application/postscript
+
+
+ epub
+ application/epub+zip
+
+
+ es3
+ application/vnd.eszigno3+xml
+
+
+ esf
+ application/vnd.epson.esf
+
+
+ et3
+ application/vnd.eszigno3+xml
+
+
+ etx
+ text/x-setext
+
+
+ exe
+ application/octet-stream
+
+
+ exi
+ application/exi
+
+
+ ext
+ application/vnd.novadigm.ext
+
+
+ ez
+ application/andrew-inset
+
+
+ ez2
+ application/vnd.ezpix-album
+
+
+ ez3
+ application/vnd.ezpix-package
+
+
+ f
+ text/x-fortran
+
+
+ f4v
+ video/x-f4v
+
+
+ f77
+ text/x-fortran
+
+
+ f90
+ text/x-fortran
+
+
+ fbs
+ image/vnd.fastbidsheet
+
+
+ fcs
+ application/vnd.isac.fcs
+
+
+ fdf
+ application/vnd.fdf
+
+
+ fe_launch
+ application/vnd.denovo.fcselayout-link
+
+
+ fg5
+ application/vnd.fujitsu.oasysgp
+
+
+ fgd
+ application/x-director
+
+
+ fh
+ image/x-freehand
+
+
+ fh4
+ image/x-freehand
+
+
+ fh5
+ image/x-freehand
+
+
+ fh7
+ image/x-freehand
+
+
+ fhc
+ image/x-freehand
+
+
+ fig
+ application/x-xfig
+
+
+ flac
+ audio/flac
+
+
+ fli
+ video/x-fli
+
+
+ flo
+ application/vnd.micrografx.flo
+
+
+ flv
+ video/x-flv
+
+
+ flw
+ application/vnd.kde.kivio
+
+
+ flx
+ text/vnd.fmi.flexstor
+
+
+ fly
+ text/vnd.fly
+
+
+ fm
+ application/vnd.framemaker
+
+
+ fnc
+ application/vnd.frogans.fnc
+
+
+ for
+ text/x-fortran
+
+
+ fpx
+ image/vnd.fpx
+
+
+ frame
+ application/vnd.framemaker
+
+
+ fsc
+ application/vnd.fsc.weblaunch
+
+
+ fst
+ image/vnd.fst
+
+
+ ftc
+ application/vnd.fluxtime.clip
+
+
+ fti
+ application/vnd.anser-web-funds-transfer-initiation
+
+
+ fvt
+ video/vnd.fvt
+
+
+ fxp
+ application/vnd.adobe.fxp
+
+
+ fxpl
+ application/vnd.adobe.fxp
+
+
+ fzs
+ application/vnd.fuzzysheet
+
+
+ g2w
+ application/vnd.geoplan
+
+
+ g3
+ image/g3fax
+
+
+ g3w
+ application/vnd.geospace
+
+
+ gac
+ application/vnd.groove-account
+
+
+ gbr
+ application/rpki-ghostbusters
+
+
+ gdl
+ model/vnd.gdl
+
+
+ geo
+ application/vnd.dynageo
+
+
+ gex
+ application/vnd.geometry-explorer
+
+
+ ggb
+ application/vnd.geogebra.file
+
+
+ ggt
+ application/vnd.geogebra.tool
+
+
+ ghf
+ application/vnd.groove-help
+
+
+ gif
+ image/gif
+
+
+ gim
+ application/vnd.groove-identity-message
+
+
+ gmx
+ application/vnd.gmx
+
+
+ gnumeric
+ application/x-gnumeric
+
+
+ gph
+ application/vnd.flographit
+
+
+ gqf
+ application/vnd.grafeq
+
+
+ gqs
+ application/vnd.grafeq
+
+
+ gram
+ application/srgs
+
+
+ gre
+ application/vnd.geometry-explorer
+
+
+ grv
+ application/vnd.groove-injector
+
+
+ grxml
+ application/srgs+xml
+
+
+ gsf
+ application/x-font-ghostscript
+
+
+ gtar
+ application/x-gtar
+
+
+ gtm
+ application/vnd.groove-tool-message
+
+
+ gtw
+ model/vnd.gtw
+
+
+ gv
+ text/vnd.graphviz
+
+
+ gxt
+ application/vnd.geonext
+
+
+ gz
+ application/x-gzip
+
+
+ h
+ text/x-c
+
+
+ h261
+ video/h261
+
+
+ h263
+ video/h263
+
+
+ h264
+ video/h264
+
+
+ hal
+ application/vnd.hal+xml
+
+
+ hbci
+ application/vnd.hbci
+
+
+ hdf
+ application/x-hdf
+
+
+ hh
+ text/x-c
+
+
+ hlp
+ application/winhlp
+
+
+ hpgl
+ application/vnd.hp-hpgl
+
+
+ hpid
+ application/vnd.hp-hpid
+
+
+ hps
+ application/vnd.hp-hps
+
+
+ hqx
+ application/mac-binhex40
+
+
+ htc
+ text/x-component
+
+
+ htke
+ application/vnd.kenameaapp
+
+
+ htm
+ text/html
+
+
+ html
+ text/html
+
+
+ hvd
+ application/vnd.yamaha.hv-dic
+
+
+ hvp
+ application/vnd.yamaha.hv-voice
+
+
+ hvs
+ application/vnd.yamaha.hv-script
+
+
+ i2g
+ application/vnd.intergeo
+
+
+ icc
+ application/vnd.iccprofile
+
+
+ ice
+ x-conference/x-cooltalk
+
+
+ icm
+ application/vnd.iccprofile
+
+
+ ico
+ image/x-icon
+
+
+ ics
+ text/calendar
+
+
+ ief
+ image/ief
+
+
+ ifb
+ text/calendar
+
+
+ ifm
+ application/vnd.shana.informed.formdata
+
+
+ iges
+ model/iges
+
+
+ igl
+ application/vnd.igloader
+
+
+ igm
+ application/vnd.insors.igm
+
+
+ igs
+ model/iges
+
+
+ igx
+ application/vnd.micrografx.igx
+
+
+ iif
+ application/vnd.shana.informed.interchange
+
+
+ imp
+ application/vnd.accpac.simply.imp
+
+
+ ims
+ application/vnd.ms-ims
+
+
+ in
+ text/plain
+
+
+ ink
+ application/inkml+xml
+
+
+ inkml
+ application/inkml+xml
+
+
+ iota
+ application/vnd.astraea-software.iota
+
+
+ ipfix
+ application/ipfix
+
+
+ ipk
+ application/vnd.shana.informed.package
+
+
+ irm
+ application/vnd.ibm.rights-management
+
+
+ irp
+ application/vnd.irepository.package+xml
+
+
+ iso
+ application/octet-stream
+
+
+ itp
+ application/vnd.shana.informed.formtemplate
+
+
+ ivp
+ application/vnd.immervision-ivp
+
+
+ ivu
+ application/vnd.immervision-ivu
+
+
+ jad
+ text/vnd.sun.j2me.app-descriptor
+
+
+ jam
+ application/vnd.jam
+
+
+ jar
+ application/java-archive
+
+
+ java
+ text/x-java-source
+
+
+ jisp
+ application/vnd.jisp
+
+
+ jlt
+ application/vnd.hp-jlyt
+
+
+ jnlp
+ application/x-java-jnlp-file
+
+
+ joda
+ application/vnd.joost.joda-archive
+
+
+ jpe
+ image/jpeg
+
+
+ jpeg
+ image/jpeg
+
+
+ jpg
+ image/jpeg
+
+
+ jpgm
+ video/jpm
+
+
+ jpgv
+ video/jpeg
+
+
+ jpm
+ video/jpm
+
+
+ js
+ application/javascript
+
+
+ jsf
+ text/plain
+
+
+ json
+ application/json
+
+
+ jspf
+ text/plain
+
+
+ kar
+ audio/midi
+
+
+ karbon
+ application/vnd.kde.karbon
+
+
+ kfo
+ application/vnd.kde.kformula
+
+
+ kia
+ application/vnd.kidspiration
+
+
+ kml
+ application/vnd.google-earth.kml+xml
+
+
+ kmz
+ application/vnd.google-earth.kmz
+
+
+ kne
+ application/vnd.kinar
+
+
+ knp
+ application/vnd.kinar
+
+
+ kon
+ application/vnd.kde.kontour
+
+
+ kpr
+ application/vnd.kde.kpresenter
+
+
+ kpt
+ application/vnd.kde.kpresenter
+
+
+ ksp
+ application/vnd.kde.kspread
+
+
+ ktr
+ application/vnd.kahootz
+
+
+ ktx
+ image/ktx
+
+
+ ktz
+ application/vnd.kahootz
+
+
+ kwd
+ application/vnd.kde.kword
+
+
+ kwt
+ application/vnd.kde.kword
+
+
+ lasxml
+ application/vnd.las.las+xml
+
+
+ latex
+ application/x-latex
+
+
+ lbd
+ application/vnd.llamagraphics.life-balance.desktop
+
+
+ lbe
+ application/vnd.llamagraphics.life-balance.exchange+xml
+
+
+ les
+ application/vnd.hhe.lesson-player
+
+
+ lha
+ application/octet-stream
+
+
+ link66
+ application/vnd.route66.link66+xml
+
+
+ list
+ text/plain
+
+
+ list3820
+ application/vnd.ibm.modcap
+
+
+ listafp
+ application/vnd.ibm.modcap
+
+
+ log
+ text/plain
+
+
+ lostxml
+ application/lost+xml
+
+
+ lrf
+ application/octet-stream
+
+
+ lrm
+ application/vnd.ms-lrm
+
+
+ ltf
+ application/vnd.frogans.ltf
+
+
+ lvp
+ audio/vnd.lucent.voice
+
+
+ lwp
+ application/vnd.lotus-wordpro
+
+
+ lzh
+ application/octet-stream
+
+
+ m13
+ application/x-msmediaview
+
+
+ m14
+ application/x-msmediaview
+
+
+ m1v
+ video/mpeg
+
+
+ m21
+ application/mp21
+
+
+ m2a
+ audio/mpeg
+
+
+ m2v
+ video/mpeg
+
+
+ m3a
+ audio/mpeg
+
+
+ m3u
+ audio/x-mpegurl
+
+
+ m3u8
+ application/vnd.apple.mpegurl
+
+
+ m4a
+ audio/mp4
+
+
+ m4b
+ audio/mp4
+
+
+ m4r
+ audio/mp4
+
+
+ m4u
+ video/vnd.mpegurl
+
+
+ m4v
+ video/mp4
+
+
+ ma
+ application/mathematica
+
+
+ mac
+ image/x-macpaint
+
+
+ mads
+ application/mads+xml
+
+
+ mag
+ application/vnd.ecowin.chart
+
+
+ maker
+ application/vnd.framemaker
+
+
+ man
+ text/troff
+
+
+ mathml
+ application/mathml+xml
+
+
+ mb
+ application/mathematica
+
+
+ mbk
+ application/vnd.mobius.mbk
+
+
+ mbox
+ application/mbox
+
+
+ mc1
+ application/vnd.medcalcdata
+
+
+ mcd
+ application/vnd.mcd
+
+
+ mcurl
+ text/vnd.curl.mcurl
+
+
+ mdb
+ application/x-msaccess
+
+
+ mdi
+ image/vnd.ms-modi
+
+
+ me
+ text/troff
+
+
+ mesh
+ model/mesh
+
+
+ meta4
+ application/metalink4+xml
+
+
+ mets
+ application/mets+xml
+
+
+ mfm
+ application/vnd.mfmp
+
+
+ mft
+ application/rpki-manifest
+
+
+ mgp
+ application/vnd.osgeo.mapguide.package
+
+
+ mgz
+ application/vnd.proteus.magazine
+
+
+ mid
+ audio/midi
+
+
+ midi
+ audio/midi
+
+
+ mif
+ application/x-mif
+
+
+ mime
+ message/rfc822
+
+
+ mj2
+ video/mj2
+
+
+ mjp2
+ video/mj2
+
+
+ mlp
+ application/vnd.dolby.mlp
+
+
+ mmd
+ application/vnd.chipnuts.karaoke-mmd
+
+
+ mmf
+ application/vnd.smaf
+
+
+ mmr
+ image/vnd.fujixerox.edmics-mmr
+
+
+ mny
+ application/x-msmoney
+
+
+ mobi
+ application/x-mobipocket-ebook
+
+
+ mods
+ application/mods+xml
+
+
+ mov
+ video/quicktime
+
+
+ movie
+ video/x-sgi-movie
+
+
+ mp1
+ audio/mpeg
+
+
+ mp2
+ audio/mpeg
+
+
+ mp21
+ application/mp21
+
+
+ mp2a
+ audio/mpeg
+
+
+ mp3
+ audio/mpeg
+
+
+ mp4
+ video/mp4
+
+
+ mp4a
+ audio/mp4
+
+
+ mp4s
+ application/mp4
+
+
+ mp4v
+ video/mp4
+
+
+ mpa
+ audio/mpeg
+
+
+ mpc
+ application/vnd.mophun.certificate
+
+
+ mpe
+ video/mpeg
+
+
+ mpeg
+ video/mpeg
+
+
+ mpega
+ audio/x-mpeg
+
+
+ mpg
+ video/mpeg
+
+
+ mpg4
+ video/mp4
+
+
+ mpga
+ audio/mpeg
+
+
+ mpkg
+ application/vnd.apple.installer+xml
+
+
+ mpm
+ application/vnd.blueice.multipass
+
+
+ mpn
+ application/vnd.mophun.application
+
+
+ mpp
+ application/vnd.ms-project
+
+
+ mpt
+ application/vnd.ms-project
+
+
+ mpv2
+ video/mpeg2
+
+
+ mpy
+ application/vnd.ibm.minipay
+
+
+ mqy
+ application/vnd.mobius.mqy
+
+
+ mrc
+ application/marc
+
+
+ mrcx
+ application/marcxml+xml
+
+
+ ms
+ text/troff
+
+
+ mscml
+ application/mediaservercontrol+xml
+
+
+ mseed
+ application/vnd.fdsn.mseed
+
+
+ mseq
+ application/vnd.mseq
+
+
+ msf
+ application/vnd.epson.msf
+
+
+ msh
+ model/mesh
+
+
+ msi
+ application/x-msdownload
+
+
+ msl
+ application/vnd.mobius.msl
+
+
+ msty
+ application/vnd.muvee.style
+
+
+ mts
+ model/vnd.mts
+
+
+ mus
+ application/vnd.musician
+
+
+ musicxml
+ application/vnd.recordare.musicxml+xml
+
+
+ mvb
+ application/x-msmediaview
+
+
+ mwf
+ application/vnd.mfer
+
+
+ mxf
+ application/mxf
+
+
+ mxl
+ application/vnd.recordare.musicxml
+
+
+ mxml
+ application/xv+xml
+
+
+ mxs
+ application/vnd.triscape.mxs
+
+
+ mxu
+ video/vnd.mpegurl
+
+
+ n-gage
+ application/vnd.nokia.n-gage.symbian.install
+
+
+ n3
+ text/n3
+
+
+ nb
+ application/mathematica
+
+
+ nbp
+ application/vnd.wolfram.player
+
+
+ nc
+ application/x-netcdf
+
+
+ ncx
+ application/x-dtbncx+xml
+
+
+ ngdat
+ application/vnd.nokia.n-gage.data
+
+
+ nlu
+ application/vnd.neurolanguage.nlu
+
+
+ nml
+ application/vnd.enliven
+
+
+ nnd
+ application/vnd.noblenet-directory
+
+
+ nns
+ application/vnd.noblenet-sealer
+
+
+ nnw
+ application/vnd.noblenet-web
+
+
+ npx
+ image/vnd.net-fpx
+
+
+ nsf
+ application/vnd.lotus-notes
+
+
+ oa2
+ application/vnd.fujitsu.oasys2
+
+
+ oa3
+ application/vnd.fujitsu.oasys3
+
+
+ oas
+ application/vnd.fujitsu.oasys
+
+
+ obd
+ application/x-msbinder
+
+
+ oda
+ application/oda
+
+
+
+ odb
+ application/vnd.oasis.opendocument.database
+
+
+
+ odc
+ application/vnd.oasis.opendocument.chart
+
+
+
+ odf
+ application/vnd.oasis.opendocument.formula
+
+
+ odft
+ application/vnd.oasis.opendocument.formula-template
+
+
+
+ odg
+ application/vnd.oasis.opendocument.graphics
+
+
+
+ odi
+ application/vnd.oasis.opendocument.image
+
+
+
+ odm
+ application/vnd.oasis.opendocument.text-master
+
+
+
+ odp
+ application/vnd.oasis.opendocument.presentation
+
+
+
+ ods
+ application/vnd.oasis.opendocument.spreadsheet
+
+
+
+ odt
+ application/vnd.oasis.opendocument.text
+
+
+ oga
+ audio/ogg
+
+
+ ogg
+ audio/ogg
+
+
+ ogv
+ video/ogg
+
+
+
+ ogx
+ application/ogg
+
+
+ onepkg
+ application/onenote
+
+
+ onetmp
+ application/onenote
+
+
+ onetoc
+ application/onenote
+
+
+ onetoc2
+ application/onenote
+
+
+ opf
+ application/oebps-package+xml
+
+
+ oprc
+ application/vnd.palm
+
+
+ org
+ application/vnd.lotus-organizer
+
+
+ osf
+ application/vnd.yamaha.openscoreformat
+
+
+ osfpvg
+ application/vnd.yamaha.openscoreformat.osfpvg+xml
+
+
+ otc
+ application/vnd.oasis.opendocument.chart-template
+
+
+ otf
+ application/x-font-otf
+
+
+
+ otg
+ application/vnd.oasis.opendocument.graphics-template
+
+
+
+ oth
+ application/vnd.oasis.opendocument.text-web
+
+
+ oti
+ application/vnd.oasis.opendocument.image-template
+
+
+
+ otp
+ application/vnd.oasis.opendocument.presentation-template
+
+
+
+ ots
+ application/vnd.oasis.opendocument.spreadsheet-template
+
+
+
+ ott
+ application/vnd.oasis.opendocument.text-template
+
+
+ oxps
+ application/oxps
+
+
+ oxt
+ application/vnd.openofficeorg.extension
+
+
+ p
+ text/x-pascal
+
+
+ p10
+ application/pkcs10
+
+
+ p12
+ application/x-pkcs12
+
+
+ p7b
+ application/x-pkcs7-certificates
+
+
+ p7c
+ application/pkcs7-mime
+
+
+ p7m
+ application/pkcs7-mime
+
+
+ p7r
+ application/x-pkcs7-certreqresp
+
+
+ p7s
+ application/pkcs7-signature
+
+
+ p8
+ application/pkcs8
+
+
+ pas
+ text/x-pascal
+
+
+ paw
+ application/vnd.pawaafile
+
+
+ pbd
+ application/vnd.powerbuilder6
+
+
+ pbm
+ image/x-portable-bitmap
+
+
+ pcap
+ application/vnd.tcpdump.pcap
+
+
+ pcf
+ application/x-font-pcf
+
+
+ pcl
+ application/vnd.hp-pcl
+
+
+ pclxl
+ application/vnd.hp-pclxl
+
+
+ pct
+ image/pict
+
+
+ pcurl
+ application/vnd.curl.pcurl
+
+
+ pcx
+ image/x-pcx
+
+
+ pdb
+ application/vnd.palm
+
+
+ pdf
+ application/pdf
+
+
+ pfa
+ application/x-font-type1
+
+
+ pfb
+ application/x-font-type1
+
+
+ pfm
+ application/x-font-type1
+
+
+ pfr
+ application/font-tdpfr
+
+
+ pfx
+ application/x-pkcs12
+
+
+ pgm
+ image/x-portable-graymap
+
+
+ pgn
+ application/x-chess-pgn
+
+
+ pgp
+ application/pgp-encrypted
+
+
+ pic
+ image/pict
+
+
+ pict
+ image/pict
+
+
+ pkg
+ application/octet-stream
+
+
+ pki
+ application/pkixcmp
+
+
+ pkipath
+ application/pkix-pkipath
+
+
+ plb
+ application/vnd.3gpp.pic-bw-large
+
+
+ plc
+ application/vnd.mobius.plc
+
+
+ plf
+ application/vnd.pocketlearn
+
+
+ pls
+ audio/x-scpls
+
+
+ pml
+ application/vnd.ctc-posml
+
+
+ png
+ image/png
+
+
+ pnm
+ image/x-portable-anymap
+
+
+ pnt
+ image/x-macpaint
+
+
+ portpkg
+ application/vnd.macports.portpkg
+
+
+ pot
+ application/vnd.ms-powerpoint
+
+
+ potm
+ application/vnd.ms-powerpoint.template.macroenabled.12
+
+
+ potx
+ application/vnd.openxmlformats-officedocument.presentationml.template
+
+
+ ppam
+ application/vnd.ms-powerpoint.addin.macroenabled.12
+
+
+ ppd
+ application/vnd.cups-ppd
+
+
+ ppm
+ image/x-portable-pixmap
+
+
+ pps
+ application/vnd.ms-powerpoint
+
+
+ ppsm
+ application/vnd.ms-powerpoint.slideshow.macroenabled.12
+
+
+ ppsx
+ application/vnd.openxmlformats-officedocument.presentationml.slideshow
+
+
+ ppt
+ application/vnd.ms-powerpoint
+
+
+ pptm
+ application/vnd.ms-powerpoint.presentation.macroenabled.12
+
+
+ pptx
+ application/vnd.openxmlformats-officedocument.presentationml.presentation
+
+
+ pqa
+ application/vnd.palm
+
+
+ prc
+ application/x-mobipocket-ebook
+
+
+ pre
+ application/vnd.lotus-freelance
+
+
+ prf
+ application/pics-rules
+
+
+ ps
+ application/postscript
+
+
+ psb
+ application/vnd.3gpp.pic-bw-small
+
+
+ psd
+ image/vnd.adobe.photoshop
+
+
+ psf
+ application/x-font-linux-psf
+
+
+ pskcxml
+ application/pskc+xml
+
+
+ ptid
+ application/vnd.pvi.ptid1
+
+
+ pub
+ application/x-mspublisher
+
+
+ pvb
+ application/vnd.3gpp.pic-bw-var
+
+
+ pwn
+ application/vnd.3m.post-it-notes
+
+
+ pya
+ audio/vnd.ms-playready.media.pya
+
+
+ pyv
+ video/vnd.ms-playready.media.pyv
+
+
+ qam
+ application/vnd.epson.quickanime
+
+
+ qbo
+ application/vnd.intu.qbo
+
+
+ qfx
+ application/vnd.intu.qfx
+
+
+ qps
+ application/vnd.publishare-delta-tree
+
+
+ qt
+ video/quicktime
+
+
+ qti
+ image/x-quicktime
+
+
+ qtif
+ image/x-quicktime
+
+
+ qwd
+ application/vnd.quark.quarkxpress
+
+
+ qwt
+ application/vnd.quark.quarkxpress
+
+
+ qxb
+ application/vnd.quark.quarkxpress
+
+
+ qxd
+ application/vnd.quark.quarkxpress
+
+
+ qxl
+ application/vnd.quark.quarkxpress
+
+
+ qxt
+ application/vnd.quark.quarkxpress
+
+
+ ra
+ audio/x-pn-realaudio
+
+
+ ram
+ audio/x-pn-realaudio
+
+
+ rar
+ application/x-rar-compressed
+
+
+ ras
+ image/x-cmu-raster
+
+
+ rcprofile
+ application/vnd.ipunplugged.rcprofile
+
+
+ rdf
+ application/rdf+xml
+
+
+ rdz
+ application/vnd.data-vision.rdz
+
+
+ rep
+ application/vnd.businessobjects
+
+
+ res
+ application/x-dtbresource+xml
+
+
+ rgb
+ image/x-rgb
+
+
+ rif
+ application/reginfo+xml
+
+
+ rip
+ audio/vnd.rip
+
+
+ rl
+ application/resource-lists+xml
+
+
+ rlc
+ image/vnd.fujixerox.edmics-rlc
+
+
+ rld
+ application/resource-lists-diff+xml
+
+
+ rm
+ application/vnd.rn-realmedia
+
+
+ rmi
+ audio/midi
+
+
+ rmp
+ audio/x-pn-realaudio-plugin
+
+
+ rms
+ application/vnd.jcp.javame.midlet-rms
+
+
+ rnc
+ application/relax-ng-compact-syntax
+
+
+ roa
+ application/rpki-roa
+
+
+ roff
+ text/troff
+
+
+ rp9
+ application/vnd.cloanto.rp9
+
+
+ rpss
+ application/vnd.nokia.radio-presets
+
+
+ rpst
+ application/vnd.nokia.radio-preset
+
+
+ rq
+ application/sparql-query
+
+
+ rs
+ application/rls-services+xml
+
+
+ rsd
+ application/rsd+xml
+
+
+ rss
+ application/rss+xml
+
+
+ rtf
+ application/rtf
+
+
+ rtx
+ text/richtext
+
+
+ s
+ text/x-asm
+
+
+ saf
+ application/vnd.yamaha.smaf-audio
+
+
+ sbml
+ application/sbml+xml
+
+
+ sc
+ application/vnd.ibm.secure-container
+
+
+ scd
+ application/x-msschedule
+
+
+ scm
+ application/vnd.lotus-screencam
+
+
+ scq
+ application/scvp-cv-request
+
+
+ scs
+ application/scvp-cv-response
+
+
+ scurl
+ text/vnd.curl.scurl
+
+
+ sda
+ application/vnd.stardivision.draw
+
+
+ sdc
+ application/vnd.stardivision.calc
+
+
+ sdd
+ application/vnd.stardivision.impress
+
+
+ sdkd
+ application/vnd.solent.sdkm+xml
+
+
+ sdkm
+ application/vnd.solent.sdkm+xml
+
+
+ sdp
+ application/sdp
+
+
+ sdw
+ application/vnd.stardivision.writer
+
+
+ see
+ application/vnd.seemail
+
+
+ seed
+ application/vnd.fdsn.seed
+
+
+ sema
+ application/vnd.sema
+
+
+ semd
+ application/vnd.semd
+
+
+ semf
+ application/vnd.semf
+
+
+ ser
+ application/java-serialized-object
+
+
+ setpay
+ application/set-payment-initiation
+
+
+ setreg
+ application/set-registration-initiation
+
+
+ sfd-hdstx
+ application/vnd.hydrostatix.sof-data
+
+
+ sfs
+ application/vnd.spotfire.sfs
+
+
+ sgl
+ application/vnd.stardivision.writer-global
+
+
+ sgm
+ text/sgml
+
+
+ sgml
+ text/sgml
+
+
+ sh
+ application/x-sh
+
+
+ shar
+ application/x-shar
+
+
+ shf
+ application/shf+xml
+
+
+
+ sig
+ application/pgp-signature
+
+
+ silo
+ model/mesh
+
+
+ sis
+ application/vnd.symbian.install
+
+
+ sisx
+ application/vnd.symbian.install
+
+
+ sit
+ application/x-stuffit
+
+
+ sitx
+ application/x-stuffitx
+
+
+ skd
+ application/vnd.koan
+
+
+ skm
+ application/vnd.koan
+
+
+ skp
+ application/vnd.koan
+
+
+ skt
+ application/vnd.koan
+
+
+ sldm
+ application/vnd.ms-powerpoint.slide.macroenabled.12
+
+
+ sldx
+ application/vnd.openxmlformats-officedocument.presentationml.slide
+
+
+ slt
+ application/vnd.epson.salt
+
+
+ sm
+ application/vnd.stepmania.stepchart
+
+
+ smf
+ application/vnd.stardivision.math
+
+
+ smi
+ application/smil+xml
+
+
+ smil
+ application/smil+xml
+
+
+ smzip
+ application/vnd.stepmania.package
+
+
+ snd
+ audio/basic
+
+
+ snf
+ application/x-font-snf
+
+
+ so
+ application/octet-stream
+
+
+ spc
+ application/x-pkcs7-certificates
+
+
+ spf
+ application/vnd.yamaha.smaf-phrase
+
+
+ spl
+ application/x-futuresplash
+
+
+ spot
+ text/vnd.in3d.spot
+
+
+ spp
+ application/scvp-vp-response
+
+
+ spq
+ application/scvp-vp-request
+
+
+ spx
+ audio/ogg
+
+
+ src
+ application/x-wais-source
+
+
+ sru
+ application/sru+xml
+
+
+ srx
+ application/sparql-results+xml
+
+
+ sse
+ application/vnd.kodak-descriptor
+
+
+ ssf
+ application/vnd.epson.ssf
+
+
+ ssml
+ application/ssml+xml
+
+
+ st
+ application/vnd.sailingtracker.track
+
+
+ stc
+ application/vnd.sun.xml.calc.template
+
+
+ std
+ application/vnd.sun.xml.draw.template
+
+
+ stf
+ application/vnd.wt.stf
+
+
+ sti
+ application/vnd.sun.xml.impress.template
+
+
+ stk
+ application/hyperstudio
+
+
+ stl
+ application/vnd.ms-pki.stl
+
+
+ str
+ application/vnd.pg.format
+
+
+ stw
+ application/vnd.sun.xml.writer.template
+
+
+ sub
+ text/vnd.dvb.subtitle
+
+
+ sus
+ application/vnd.sus-calendar
+
+
+ susp
+ application/vnd.sus-calendar
+
+
+ sv4cpio
+ application/x-sv4cpio
+
+
+ sv4crc
+ application/x-sv4crc
+
+
+ svc
+ application/vnd.dvb.service
+
+
+ svd
+ application/vnd.svd
+
+
+ svg
+ image/svg+xml
+
+
+ svgz
+ image/svg+xml
+
+
+ swa
+ application/x-director
+
+
+ swf
+ application/x-shockwave-flash
+
+
+ swi
+ application/vnd.aristanetworks.swi
+
+
+ sxc
+ application/vnd.sun.xml.calc
+
+
+ sxd
+ application/vnd.sun.xml.draw
+
+
+ sxg
+ application/vnd.sun.xml.writer.global
+
+
+ sxi
+ application/vnd.sun.xml.impress
+
+
+ sxm
+ application/vnd.sun.xml.math
+
+
+ sxw
+ application/vnd.sun.xml.writer
+
+
+ t
+ text/troff
+
+
+ taglet
+ application/vnd.mynfc
+
+
+ tao
+ application/vnd.tao.intent-module-archive
+
+
+ tar
+ application/x-tar
+
+
+ tcap
+ application/vnd.3gpp2.tcap
+
+
+ tcl
+ application/x-tcl
+
+
+ teacher
+ application/vnd.smart.teacher
+
+
+ tei
+ application/tei+xml
+
+
+ teicorpus
+ application/tei+xml
+
+
+ tex
+ application/x-tex
+
+
+ texi
+ application/x-texinfo
+
+
+ texinfo
+ application/x-texinfo
+
+
+ text
+ text/plain
+
+
+ tfi
+ application/thraud+xml
+
+
+ tfm
+ application/x-tex-tfm
+
+
+ thmx
+ application/vnd.ms-officetheme
+
+
+ tif
+ image/tiff
+
+
+ tiff
+ image/tiff
+
+
+ tmo
+ application/vnd.tmobile-livetv
+
+
+ torrent
+ application/x-bittorrent
+
+
+ tpl
+ application/vnd.groove-tool-template
+
+
+ tpt
+ application/vnd.trid.tpt
+
+
+ tr
+ text/troff
+
+
+ tra
+ application/vnd.trueapp
+
+
+ trm
+ application/x-msterminal
+
+
+ tsd
+ application/timestamped-data
+
+
+ tsv
+ text/tab-separated-values
+
+
+ ttc
+ application/x-font-ttf
+
+
+ ttf
+ application/x-font-ttf
+
+
+ ttl
+ text/turtle
+
+
+ twd
+ application/vnd.simtech-mindmapper
+
+
+ twds
+ application/vnd.simtech-mindmapper
+
+
+ txd
+ application/vnd.genomatix.tuxedo
+
+
+ txf
+ application/vnd.mobius.txf
+
+
+ txt
+ text/plain
+
+
+ u32
+ application/x-authorware-bin
+
+
+ udeb
+ application/x-debian-package
+
+
+ ufd
+ application/vnd.ufdl
+
+
+ ufdl
+ application/vnd.ufdl
+
+
+ ulw
+ audio/basic
+
+
+ umj
+ application/vnd.umajin
+
+
+ unityweb
+ application/vnd.unity
+
+
+ uoml
+ application/vnd.uoml+xml
+
+
+ uri
+ text/uri-list
+
+
+ uris
+ text/uri-list
+
+
+ urls
+ text/uri-list
+
+
+ ustar
+ application/x-ustar
+
+
+ utz
+ application/vnd.uiq.theme
+
+
+ uu
+ text/x-uuencode
+
+
+ uva
+ audio/vnd.dece.audio
+
+
+ uvd
+ application/vnd.dece.data
+
+
+ uvf
+ application/vnd.dece.data
+
+
+ uvg
+ image/vnd.dece.graphic
+
+
+ uvh
+ video/vnd.dece.hd
+
+
+ uvi
+ image/vnd.dece.graphic
+
+
+ uvm
+ video/vnd.dece.mobile
+
+
+ uvp
+ video/vnd.dece.pd
+
+
+ uvs
+ video/vnd.dece.sd
+
+
+ uvt
+ application/vnd.dece.ttml+xml
+
+
+ uvu
+ video/vnd.uvvu.mp4
+
+
+ uvv
+ video/vnd.dece.video
+
+
+ uvva
+ audio/vnd.dece.audio
+
+
+ uvvd
+ application/vnd.dece.data
+
+
+ uvvf
+ application/vnd.dece.data
+
+
+ uvvg
+ image/vnd.dece.graphic
+
+
+ uvvh
+ video/vnd.dece.hd
+
+
+ uvvi
+ image/vnd.dece.graphic
+
+
+ uvvm
+ video/vnd.dece.mobile
+
+
+ uvvp
+ video/vnd.dece.pd
+
+
+ uvvs
+ video/vnd.dece.sd
+
+
+ uvvt
+ application/vnd.dece.ttml+xml
+
+
+ uvvu
+ video/vnd.uvvu.mp4
+
+
+ uvvv
+ video/vnd.dece.video
+
+
+ uvvx
+ application/vnd.dece.unspecified
+
+
+ uvvz
+ application/vnd.dece.zip
+
+
+ uvx
+ application/vnd.dece.unspecified
+
+
+ uvz
+ application/vnd.dece.zip
+
+
+ vcard
+ text/vcard
+
+
+ vcd
+ application/x-cdlink
+
+
+ vcf
+ text/x-vcard
+
+
+ vcg
+ application/vnd.groove-vcard
+
+
+ vcs
+ text/x-vcalendar
+
+
+ vcx
+ application/vnd.vcx
+
+
+ vis
+ application/vnd.visionary
+
+
+ viv
+ video/vnd.vivo
+
+
+ vor
+ application/vnd.stardivision.writer
+
+
+ vox
+ application/x-authorware-bin
+
+
+ vrml
+ model/vrml
+
+
+ vsd
+ application/vnd.visio
+
+
+ vsf
+ application/vnd.vsf
+
+
+ vss
+ application/vnd.visio
+
+
+ vst
+ application/vnd.visio
+
+
+ vsw
+ application/vnd.visio
+
+
+ vtu
+ model/vnd.vtu
+
+
+ vxml
+ application/voicexml+xml
+
+
+ w3d
+ application/x-director
+
+
+ wad
+ application/x-doom
+
+
+ wav
+ audio/x-wav
+
+
+ wax
+ audio/x-ms-wax
+
+
+
+ wbmp
+ image/vnd.wap.wbmp
+
+
+ wbs
+ application/vnd.criticaltools.wbs+xml
+
+
+ wbxml
+ application/vnd.wap.wbxml
+
+
+ wcm
+ application/vnd.ms-works
+
+
+ wdb
+ application/vnd.ms-works
+
+
+ weba
+ audio/webm
+
+
+ webm
+ video/webm
+
+
+ webp
+ image/webp
+
+
+ wg
+ application/vnd.pmi.widget
+
+
+ wgt
+ application/widget
+
+
+ wks
+ application/vnd.ms-works
+
+
+ wm
+ video/x-ms-wm
+
+
+ wma
+ audio/x-ms-wma
+
+
+ wmd
+ application/x-ms-wmd
+
+
+ wmf
+ application/x-msmetafile
+
+
+
+ wml
+ text/vnd.wap.wml
+
+
+
+ wmlc
+ application/vnd.wap.wmlc
+
+
+
+ wmls
+ text/vnd.wap.wmlscript
+
+
+
+ wmlsc
+ application/vnd.wap.wmlscriptc
+
+
+ wmv
+ video/x-ms-wmv
+
+
+ wmx
+ video/x-ms-wmx
+
+
+ wmz
+ application/x-ms-wmz
+
+
+ woff
+ application/x-font-woff
+
+
+ wpd
+ application/vnd.wordperfect
+
+
+ wpl
+ application/vnd.ms-wpl
+
+
+ wps
+ application/vnd.ms-works
+
+
+ wqd
+ application/vnd.wqd
+
+
+ wri
+ application/x-mswrite
+
+
+ wrl
+ model/vrml
+
+
+ wsdl
+ application/wsdl+xml
+
+
+ wspolicy
+ application/wspolicy+xml
+
+
+ wtb
+ application/vnd.webturbo
+
+
+ wvx
+ video/x-ms-wvx
+
+
+ x32
+ application/x-authorware-bin
+
+
+ x3d
+ application/vnd.hzn-3d-crossword
+
+
+ xap
+ application/x-silverlight-app
+
+
+ xar
+ application/vnd.xara
+
+
+ xbap
+ application/x-ms-xbap
+
+
+ xbd
+ application/vnd.fujixerox.docuworks.binder
+
+
+ xbm
+ image/x-xbitmap
+
+
+ xdf
+ application/xcap-diff+xml
+
+
+ xdm
+ application/vnd.syncml.dm+xml
+
+
+ xdp
+ application/vnd.adobe.xdp+xml
+
+
+ xdssc
+ application/dssc+xml
+
+
+ xdw
+ application/vnd.fujixerox.docuworks
+
+
+ xenc
+ application/xenc+xml
+
+
+ xer
+ application/patch-ops-error+xml
+
+
+ xfdf
+ application/vnd.adobe.xfdf
+
+
+ xfdl
+ application/vnd.xfdl
+
+
+ xht
+ application/xhtml+xml
+
+
+ xhtml
+ application/xhtml+xml
+
+
+ xhvml
+ application/xv+xml
+
+
+ xif
+ image/vnd.xiff
+
+
+ xla
+ application/vnd.ms-excel
+
+
+ xlam
+ application/vnd.ms-excel.addin.macroenabled.12
+
+
+ xlc
+ application/vnd.ms-excel
+
+
+ xlm
+ application/vnd.ms-excel
+
+
+ xls
+ application/vnd.ms-excel
+
+
+ xlsb
+ application/vnd.ms-excel.sheet.binary.macroenabled.12
+
+
+ xlsm
+ application/vnd.ms-excel.sheet.macroenabled.12
+
+
+ xlsx
+ application/vnd.openxmlformats-officedocument.spreadsheetml.sheet
+
+
+ xlt
+ application/vnd.ms-excel
+
+
+ xltm
+ application/vnd.ms-excel.template.macroenabled.12
+
+
+ xltx
+ application/vnd.openxmlformats-officedocument.spreadsheetml.template
+
+
+ xlw
+ application/vnd.ms-excel
+
+
+ xml
+ application/xml
+
+
+ xo
+ application/vnd.olpc-sugar
+
+
+ xop
+ application/xop+xml
+
+
+ xpi
+ application/x-xpinstall
+
+
+ xpm
+ image/x-xpixmap
+
+
+ xpr
+ application/vnd.is-xpr
+
+
+ xps
+ application/vnd.ms-xpsdocument
+
+
+ xpw
+ application/vnd.intercon.formnet
+
+
+ xpx
+ application/vnd.intercon.formnet
+
+
+ xsl
+ application/xml
+
+
+ xslt
+ application/xslt+xml
+
+
+ xsm
+ application/vnd.syncml+xml
+
+
+ xspf
+ application/xspf+xml
+
+
+ xul
+ application/vnd.mozilla.xul+xml
+
+
+ xvm
+ application/xv+xml
+
+
+ xvml
+ application/xv+xml
+
+
+ xwd
+ image/x-xwindowdump
+
+
+ xyz
+ chemical/x-xyz
+
+
+ yang
+ application/yang
+
+
+ yin
+ application/yin+xml
+
+
+ z
+ application/x-compress
+
+
+ Z
+ application/x-compress
+
+
+ zaz
+ application/vnd.zzazz.deck+xml
+
+
+ zip
+ application/zip
+
+
+ zir
+ application/vnd.zul
+
+
+ zirz
+ application/vnd.zul
+
+
+ zmm
+ application/vnd.handheld-entertainment+xml
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ index.html
+ index.htm
+ index.jsp
+
+
+
diff --git "a/04 \346\235\216\346\230\216\345\201\245/20240108 SSM\346\225\264\345\220\210/spring_MVC_03/target/tomcat/logs/access_log.2024-01-08" "b/04 \346\235\216\346\230\216\345\201\245/20240108 SSM\346\225\264\345\220\210/spring_MVC_03/target/tomcat/logs/access_log.2024-01-08"
new file mode 100644
index 0000000..291c111
--- /dev/null
+++ "b/04 \346\235\216\346\230\216\345\201\245/20240108 SSM\346\225\264\345\220\210/spring_MVC_03/target/tomcat/logs/access_log.2024-01-08"
@@ -0,0 +1,78 @@
+0:0:0:0:0:0:0:1 - - [08/Jan/2024:16:36:44 +0800] "GET /books HTTP/1.1" 200 222 http-bio-80-exec-1 455
+0:0:0:0:0:0:0:1 - - [08/Jan/2024:16:36:44 +0800] "GET /books HTTP/1.1" 200 222 http-bio-80-exec-2 6
+0:0:0:0:0:0:0:1 - - [08/Jan/2024:16:37:08 +0800] "GET /books HTTP/1.1" 200 222 http-bio-80-exec-4 4
+192.168.137.115 - - [08/Jan/2024:16:38:10 +0800] "GET / HTTP/1.1" 200 5101 http-bio-80-exec-6 6
+0:0:0:0:0:0:0:1 - - [08/Jan/2024:16:38:31 +0800] "GET / HTTP/1.1" 304 - http-bio-80-exec-8 3
+0:0:0:0:0:0:0:1 - - [08/Jan/2024:16:38:34 +0800] "GET /books HTTP/1.1" 200 222 http-bio-80-exec-10 19
+0:0:0:0:0:0:0:1 - - [08/Jan/2024:16:39:41 +0800] "GET / HTTP/1.1" 200 5101 http-bio-80-exec-2 3
+0:0:0:0:0:0:0:1 - - [08/Jan/2024:16:39:41 +0800] "GET /css/index.css HTTP/1.1" 200 2670 http-bio-80-exec-2 4
+0:0:0:0:0:0:0:1 - - [08/Jan/2024:16:39:41 +0800] "GET /lib/form-serialize.js HTTP/1.1" 200 8941 http-bio-80-exec-2 3
+0:0:0:0:0:0:0:1 - - [08/Jan/2024:16:39:41 +0800] "GET /js/index.js HTTP/1.1" 200 5594 http-bio-80-exec-4 7
+0:0:0:0:0:0:0:1 - - [08/Jan/2024:16:39:44 +0800] "GET /books HTTP/1.1" 200 222 http-bio-80-exec-4 7
+0:0:0:0:0:0:0:1 - - [08/Jan/2024:16:39:44 +0800] "GET /favicon.ico HTTP/1.1" 200 16958 http-bio-80-exec-2 1
+0:0:0:0:0:0:0:1 - - [08/Jan/2024:16:39:51 +0800] "GET /books/5 HTTP/1.1" 200 127 http-bio-80-exec-1 17
+0:0:0:0:0:0:0:1 - - [08/Jan/2024:16:39:59 +0800] "GET /books/5 HTTP/1.1" 200 127 http-bio-80-exec-9 2
+0:0:0:0:0:0:0:1 - - [08/Jan/2024:16:40:01 +0800] "GET /books/5 HTTP/1.1" 200 127 http-bio-80-exec-9 3
+0:0:0:0:0:0:0:1 - - [08/Jan/2024:16:40:02 +0800] "GET /books/5 HTTP/1.1" 200 127 http-bio-80-exec-9 3
+0:0:0:0:0:0:0:1 - - [08/Jan/2024:16:40:11 +0800] "GET /books HTTP/1.1" 200 222 http-bio-80-exec-6 4
+0:0:0:0:0:0:0:1 - - [08/Jan/2024:16:40:18 +0800] "GET /books/5 HTTP/1.1" 200 127 http-bio-80-exec-6 2
+0:0:0:0:0:0:0:1 - - [08/Jan/2024:16:40:19 +0800] "GET /books/5 HTTP/1.1" 200 127 http-bio-80-exec-6 3
+0:0:0:0:0:0:0:1 - - [08/Jan/2024:16:40:20 +0800] "GET /books/5 HTTP/1.1" 200 127 http-bio-80-exec-6 4
+0:0:0:0:0:0:0:1 - - [08/Jan/2024:16:40:22 +0800] "GET /books/6 HTTP/1.1" 200 127 http-bio-80-exec-6 3
+0:0:0:0:0:0:0:1 - - [08/Jan/2024:16:40:29 +0800] "POST /books HTTP/1.1" 200 59 http-bio-80-exec-6 37
+0:0:0:0:0:0:0:1 - - [08/Jan/2024:16:40:29 +0800] "GET /books HTTP/1.1" 200 305 http-bio-80-exec-6 3
+0:0:0:0:0:0:0:1 - - [08/Jan/2024:16:40:32 +0800] "GET /books/5 HTTP/1.1" 200 127 http-bio-80-exec-6 3
+0:0:0:0:0:0:0:1 - - [08/Jan/2024:16:40:32 +0800] "GET /books/5 HTTP/1.1" 200 127 http-bio-80-exec-6 3
+0:0:0:0:0:0:0:1 - - [08/Jan/2024:16:42:11 +0800] "GET / HTTP/1.1" 304 - http-bio-80-exec-7 1
+0:0:0:0:0:0:0:1 - - [08/Jan/2024:16:42:12 +0800] "GET /books HTTP/1.1" 200 305 http-bio-80-exec-7 7
+0:0:0:0:0:0:0:1 - - [08/Jan/2024:16:42:35 +0800] "GET /books HTTP/1.1" 200 305 http-bio-80-exec-1 358
+0:0:0:0:0:0:0:1 - - [08/Jan/2024:16:42:35 +0800] "GET /books HTTP/1.1" 200 305 http-bio-80-exec-2 4
+0:0:0:0:0:0:0:1 - - [08/Jan/2024:16:42:41 +0800] "GET /books/5 HTTP/1.1" 200 127 http-bio-80-exec-4 14
+0:0:0:0:0:0:0:1 - - [08/Jan/2024:16:48:11 +0800] "GET / HTTP/1.1" 304 - http-bio-80-exec-1 29
+0:0:0:0:0:0:0:1 - - [08/Jan/2024:16:48:11 +0800] "GET /js/index.js HTTP/1.1" 200 5594 http-bio-80-exec-3 14
+0:0:0:0:0:0:0:1 - - [08/Jan/2024:16:48:11 +0800] "GET /books HTTP/1.1" 200 305 http-bio-80-exec-4 247
+0:0:0:0:0:0:0:1 - - [08/Jan/2024:16:48:17 +0800] "DELETE /books/8 HTTP/1.1" 200 59 http-bio-80-exec-5 22
+0:0:0:0:0:0:0:1 - - [08/Jan/2024:16:48:17 +0800] "GET /books HTTP/1.1" 200 222 http-bio-80-exec-6 3
+0:0:0:0:0:0:0:1 - - [08/Jan/2024:16:48:20 +0800] "GET /books/5 HTTP/1.1" 200 137 http-bio-80-exec-7 3
+0:0:0:0:0:0:0:1 - - [08/Jan/2024:16:48:30 +0800] "POST /books HTTP/1.1" 200 59 http-bio-80-exec-8 33
+0:0:0:0:0:0:0:1 - - [08/Jan/2024:16:48:30 +0800] "GET /books HTTP/1.1" 200 305 http-bio-80-exec-9 3
+0:0:0:0:0:0:0:1 - - [08/Jan/2024:16:51:38 +0800] "GET / HTTP/1.1" 200 5102 http-bio-80-exec-1 51
+0:0:0:0:0:0:0:1 - - [08/Jan/2024:16:51:38 +0800] "GET /js/index.js HTTP/1.1" 304 - http-bio-80-exec-3 5
+0:0:0:0:0:0:0:1 - - [08/Jan/2024:16:51:43 +0800] "GET /books HTTP/1.1" 200 305 http-bio-80-exec-4 228
+0:0:0:0:0:0:0:1 - - [08/Jan/2024:16:51:46 +0800] "DELETE /books/9 HTTP/1.1" 200 59 http-bio-80-exec-5 18
+0:0:0:0:0:0:0:1 - - [08/Jan/2024:16:51:46 +0800] "GET /books HTTP/1.1" 200 222 http-bio-80-exec-6 3
+0:0:0:0:0:0:0:1 - - [08/Jan/2024:16:52:01 +0800] "POST /books HTTP/1.1" 200 59 http-bio-80-exec-7 31
+0:0:0:0:0:0:0:1 - - [08/Jan/2024:16:52:01 +0800] "GET /books HTTP/1.1" 200 283 http-bio-80-exec-8 3
+0:0:0:0:0:0:0:1 - - [08/Jan/2024:16:52:05 +0800] "DELETE /books/10 HTTP/1.1" 200 59 http-bio-80-exec-9 10
+0:0:0:0:0:0:0:1 - - [08/Jan/2024:16:52:05 +0800] "GET /books HTTP/1.1" 200 222 http-bio-80-exec-10 3
+0:0:0:0:0:0:0:1 - - [08/Jan/2024:16:52:19 +0800] "POST /books HTTP/1.1" 200 59 http-bio-80-exec-10 10
+0:0:0:0:0:0:0:1 - - [08/Jan/2024:16:52:19 +0800] "GET /books HTTP/1.1" 200 313 http-bio-80-exec-10 3
+0:0:0:0:0:0:0:1 - - [08/Jan/2024:16:52:23 +0800] "GET /books/5 HTTP/1.1" 200 137 http-bio-80-exec-10 4
+192.168.137.115 - - [08/Jan/2024:17:00:51 +0800] "GET / HTTP/1.1" 200 5102 http-bio-80-exec-6 4
+0:0:0:0:0:0:0:1 - - [08/Jan/2024:17:02:21 +0800] "GET / HTTP/1.1" 304 - http-bio-80-exec-1 36
+0:0:0:0:0:0:0:1 - - [08/Jan/2024:17:02:21 +0800] "GET /js/index.js HTTP/1.1" 200 5623 http-bio-80-exec-3 15
+0:0:0:0:0:0:0:1 - - [08/Jan/2024:17:02:22 +0800] "GET /books HTTP/1.1" 200 313 http-bio-80-exec-4 262
+0:0:0:0:0:0:0:1 - - [08/Jan/2024:17:02:33 +0800] "DELETE /books/6 HTTP/1.1" 200 59 http-bio-80-exec-5 20
+0:0:0:0:0:0:0:1 - - [08/Jan/2024:17:02:33 +0800] "GET /books HTTP/1.1" 200 229 http-bio-80-exec-6 3
+0:0:0:0:0:0:0:1 - - [08/Jan/2024:17:02:44 +0800] "GET /books/5 HTTP/1.1" 200 137 http-bio-80-exec-7 4
+0:0:0:0:0:0:0:1 - - [08/Jan/2024:17:05:41 +0800] "GET / HTTP/1.1" 200 5102 http-bio-80-exec-1 41
+0:0:0:0:0:0:0:1 - - [08/Jan/2024:17:05:41 +0800] "GET /js/index.js HTTP/1.1" 304 - http-bio-80-exec-3 6
+0:0:0:0:0:0:0:1 - - [08/Jan/2024:17:05:44 +0800] "GET /books HTTP/1.1" 200 229 http-bio-80-exec-4 240
+0:0:0:0:0:0:0:1 - - [08/Jan/2024:17:05:47 +0800] "GET /books/5 HTTP/1.1" 200 137 http-bio-80-exec-5 12
+0:0:0:0:0:0:0:1 - - [08/Jan/2024:17:06:15 +0800] "POST /books HTTP/1.1" 200 59 http-bio-80-exec-6 35
+0:0:0:0:0:0:0:1 - - [08/Jan/2024:17:06:15 +0800] "GET /books HTTP/1.1" 200 317 http-bio-80-exec-7 3
+0:0:0:0:0:0:0:1 - - [08/Jan/2024:17:06:20 +0800] "GET /books/12 HTTP/1.1" 200 141 http-bio-80-exec-8 4
+0:0:0:0:0:0:0:1 - - [08/Jan/2024:17:06:30 +0800] "PUT /books/12 HTTP/1.1" 405 1045 http-bio-80-exec-9 3
+0:0:0:0:0:0:0:1 - - [08/Jan/2024:17:08:49 +0800] "GET / HTTP/1.1" 304 - http-bio-80-exec-1 33
+0:0:0:0:0:0:0:1 - - [08/Jan/2024:17:08:49 +0800] "GET /js/index.js HTTP/1.1" 200 5650 http-bio-80-exec-3 15
+0:0:0:0:0:0:0:1 - - [08/Jan/2024:17:08:50 +0800] "GET /books HTTP/1.1" 200 317 http-bio-80-exec-4 275
+0:0:0:0:0:0:0:1 - - [08/Jan/2024:17:08:53 +0800] "GET /books/5 HTTP/1.1" 200 137 http-bio-80-exec-5 14
+0:0:0:0:0:0:0:1 - - [08/Jan/2024:17:08:57 +0800] "PUT /books/5 HTTP/1.1" 405 1045 http-bio-80-exec-6 4
+192.168.137.115 - - [08/Jan/2024:17:09:26 +0800] "GET / HTTP/1.1" 200 5102 http-bio-80-exec-8 4
+192.168.137.115 - - [08/Jan/2024:17:10:26 +0800] "GET / HTTP/1.1" 200 5102 http-bio-80-exec-10 4
+0:0:0:0:0:0:0:1 - - [08/Jan/2024:17:13:04 +0800] "GET / HTTP/1.1" 304 - http-bio-80-exec-1 35
+0:0:0:0:0:0:0:1 - - [08/Jan/2024:17:13:04 +0800] "GET /js/index.js HTTP/1.1" 200 5637 http-bio-80-exec-3 18
+0:0:0:0:0:0:0:1 - - [08/Jan/2024:17:13:05 +0800] "GET /books HTTP/1.1" 200 317 http-bio-80-exec-4 366
+0:0:0:0:0:0:0:1 - - [08/Jan/2024:17:13:08 +0800] "GET /books/12 HTTP/1.1" 200 141 http-bio-80-exec-5 14
+0:0:0:0:0:0:0:1 - - [08/Jan/2024:17:13:15 +0800] "PUT /books/ HTTP/1.1" 200 59 http-bio-80-exec-6 32
+0:0:0:0:0:0:0:1 - - [08/Jan/2024:17:13:15 +0800] "GET /books HTTP/1.1" 200 317 http-bio-80-exec-7 3
--
Gitee