From 09a89ee48f6257863cc0205a11c36fedb43bcf92 Mon Sep 17 00:00:00 2001
From: Y1NanPing <735289578@qq.com>
Date: Wed, 21 May 2025 19:49:33 +0800
Subject: [PATCH] =?UTF-8?q?springboot=E6=B5=8B=E8=AF=95?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
01_springboot_part/pom.xml | 50 +++++++++++++++++++
.../com/atguigu/java/SpringBootRunner.java | 18 +++++++
.../java/interceptors/AllInterceptor.java | 33 ++++++++++++
.../java/javaconfig/RedisConfigration.java | 36 +++++++++++++
.../javaconfig/SpringMvcConfiguration.java | 28 +++++++++++
.../com/atguigu/java/mapper/EmpMapper.java | 13 +++++
.../atguigu/java/mapper/OrderItemsMapper.java | 9 ++++
.../com/atguigu/java/mapper/OrdersMapper.java | 13 +++++
.../com/atguigu/java/mapper/UsersMapper.java | 12 +++++
.../java/com/atguigu/java/pojo/Employee.java | 11 ++++
.../com/atguigu/java/pojo/OrderItems.java | 11 ++++
.../java/com/atguigu/java/pojo/Orders.java | 12 +++++
.../java/com/atguigu/java/pojo/Student.java | 11 ++++
.../java/com/atguigu/java/pojo/Users.java | 14 ++++++
.../src/main/resources/application.yml | 22 ++++++++
.../src/main/resources/banner.txt | 22 ++++++++
.../src/main/resources/mapper/EmpMapper.xml | 11 ++++
.../resources/mapper/OrderItemsMapper.xml | 12 +++++
.../main/resources/mapper/OrdersMapper.xml | 21 ++++++++
.../src/main/resources/mapper/UsersMapper.xml | 35 +++++++++++++
.../test/java/com/atguigu/java/DemoTest.java | 39 +++++++++++++++
21 files changed, 433 insertions(+)
create mode 100644 01_springboot_part/pom.xml
create mode 100644 01_springboot_part/src/main/java/com/atguigu/java/SpringBootRunner.java
create mode 100644 01_springboot_part/src/main/java/com/atguigu/java/interceptors/AllInterceptor.java
create mode 100644 01_springboot_part/src/main/java/com/atguigu/java/javaconfig/RedisConfigration.java
create mode 100644 01_springboot_part/src/main/java/com/atguigu/java/javaconfig/SpringMvcConfiguration.java
create mode 100644 01_springboot_part/src/main/java/com/atguigu/java/mapper/EmpMapper.java
create mode 100644 01_springboot_part/src/main/java/com/atguigu/java/mapper/OrderItemsMapper.java
create mode 100644 01_springboot_part/src/main/java/com/atguigu/java/mapper/OrdersMapper.java
create mode 100644 01_springboot_part/src/main/java/com/atguigu/java/mapper/UsersMapper.java
create mode 100644 01_springboot_part/src/main/java/com/atguigu/java/pojo/Employee.java
create mode 100644 01_springboot_part/src/main/java/com/atguigu/java/pojo/OrderItems.java
create mode 100644 01_springboot_part/src/main/java/com/atguigu/java/pojo/Orders.java
create mode 100644 01_springboot_part/src/main/java/com/atguigu/java/pojo/Student.java
create mode 100644 01_springboot_part/src/main/java/com/atguigu/java/pojo/Users.java
create mode 100644 01_springboot_part/src/main/resources/application.yml
create mode 100644 01_springboot_part/src/main/resources/banner.txt
create mode 100644 01_springboot_part/src/main/resources/mapper/EmpMapper.xml
create mode 100644 01_springboot_part/src/main/resources/mapper/OrderItemsMapper.xml
create mode 100644 01_springboot_part/src/main/resources/mapper/OrdersMapper.xml
create mode 100644 01_springboot_part/src/main/resources/mapper/UsersMapper.xml
create mode 100644 01_springboot_part/src/test/java/com/atguigu/java/DemoTest.java
diff --git a/01_springboot_part/pom.xml b/01_springboot_part/pom.xml
new file mode 100644
index 0000000..22ba27c
--- /dev/null
+++ b/01_springboot_part/pom.xml
@@ -0,0 +1,50 @@
+
+
+ 4.0.0
+
+
+ org.springframework.boot
+ spring-boot-starter-parent
+ 3.0.5
+
+
+
+ com.atguigu.java
+ 01_springboot_part
+ 1.0-SNAPSHOT
+
+
+
+ org.springframework.boot
+ spring-boot-starter-web
+
+
+ org.springframework.boot
+ spring-boot-starter-test
+
+
+ org.mybatis.spring.boot
+ mybatis-spring-boot-starter
+ 3.0.1
+
+
+ mysql
+ mysql-connector-java
+ 8.0.30
+
+
+ org.projectlombok
+ lombok
+
+
+ org.springframework.boot
+ spring-boot-starter-data-redis
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/01_springboot_part/src/main/java/com/atguigu/java/SpringBootRunner.java b/01_springboot_part/src/main/java/com/atguigu/java/SpringBootRunner.java
new file mode 100644
index 0000000..6f04852
--- /dev/null
+++ b/01_springboot_part/src/main/java/com/atguigu/java/SpringBootRunner.java
@@ -0,0 +1,18 @@
+package com.atguigu.java;
+
+//TIP To Run code, press or
+// click the icon in the gutter.
+
+
+import org.springframework.boot.SpringApplication;
+import org.springframework.boot.autoconfigure.SpringBootApplication;
+import org.springframework.context.ConfigurableApplicationContext;
+
+@SpringBootApplication
+public class SpringBootRunner{
+
+ public static void main(String[] args) {
+ //启动tomcat即可
+ SpringApplication.run(SpringBootRunner.class,args);
+ }
+}
\ No newline at end of file
diff --git a/01_springboot_part/src/main/java/com/atguigu/java/interceptors/AllInterceptor.java b/01_springboot_part/src/main/java/com/atguigu/java/interceptors/AllInterceptor.java
new file mode 100644
index 0000000..137b606
--- /dev/null
+++ b/01_springboot_part/src/main/java/com/atguigu/java/interceptors/AllInterceptor.java
@@ -0,0 +1,33 @@
+package com.atguigu.java.interceptors;
+
+import jakarta.servlet.http.HttpServletRequest;
+import jakarta.servlet.http.HttpServletResponse;
+import org.springframework.stereotype.Component;
+import org.springframework.web.servlet.HandlerInterceptor;
+import org.springframework.web.servlet.ModelAndView;
+
+/**
+ * projectName: com.atguigu.java.interceptors
+ *
+ * @author: 赵伟风
+ * description:
+ */
+public class AllInterceptor implements HandlerInterceptor {
+
+ // if(!preHandler()){return;}
+ @Override
+ public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) throws Exception {
+ System.out.println("AllInterceptor.preHandle");
+ return true;
+ }
+
+ @Override
+ public void postHandle(HttpServletRequest request, HttpServletResponse response, Object handler, ModelAndView modelAndView) throws Exception {
+ System.out.println("AllInterceptor.postHandle");
+ }
+
+ @Override
+ public void afterCompletion(HttpServletRequest request, HttpServletResponse response, Object handler, Exception ex) throws Exception {
+ System.out.println("AllInterceptor.afterCompletion");
+ }
+}
diff --git a/01_springboot_part/src/main/java/com/atguigu/java/javaconfig/RedisConfigration.java b/01_springboot_part/src/main/java/com/atguigu/java/javaconfig/RedisConfigration.java
new file mode 100644
index 0000000..4e96784
--- /dev/null
+++ b/01_springboot_part/src/main/java/com/atguigu/java/javaconfig/RedisConfigration.java
@@ -0,0 +1,36 @@
+package com.atguigu.java.javaconfig;
+
+import org.springframework.context.annotation.Bean;
+import org.springframework.context.annotation.Configuration;
+import org.springframework.data.redis.connection.RedisConnectionFactory;
+import org.springframework.data.redis.core.RedisTemplate;
+import org.springframework.data.redis.serializer.GenericJackson2JsonRedisSerializer;
+import org.springframework.data.redis.serializer.RedisSerializer;
+
+@Configuration
+public class RedisConfigration {
+ @Bean
+ public RedisTemplate redisTemplate(RedisConnectionFactory redisConnectionFactory){
+
+ //创建一个对象
+ RedisTemplate redisTemplate = new RedisTemplate<>();
+
+ //与库连接上的关键数据
+ redisTemplate.setConnectionFactory(redisConnectionFactory);
+ //String类型的序列化器
+ RedisSerializer stringSerializer = RedisSerializer.string();
+ //json类型的序列化器
+ GenericJackson2JsonRedisSerializer genericJackson2JsonRedisSerializer
+ = new GenericJackson2JsonRedisSerializer();
+
+// 设置序列化器
+
+ redisTemplate.setKeySerializer(stringSerializer);
+ redisTemplate.setValueSerializer(genericJackson2JsonRedisSerializer);
+ redisTemplate.setHashKeySerializer(stringSerializer);
+ redisTemplate.setHashValueSerializer(genericJackson2JsonRedisSerializer);
+
+ //返回数据
+ return redisTemplate;
+ }
+}
diff --git a/01_springboot_part/src/main/java/com/atguigu/java/javaconfig/SpringMvcConfiguration.java b/01_springboot_part/src/main/java/com/atguigu/java/javaconfig/SpringMvcConfiguration.java
new file mode 100644
index 0000000..4bf20b1
--- /dev/null
+++ b/01_springboot_part/src/main/java/com/atguigu/java/javaconfig/SpringMvcConfiguration.java
@@ -0,0 +1,28 @@
+package com.atguigu.java.javaconfig;
+
+import com.atguigu.java.interceptors.AllInterceptor;
+import org.springframework.cglib.transform.impl.AddInitTransformer;
+import org.springframework.context.annotation.Bean;
+import org.springframework.context.annotation.Configuration;
+import org.springframework.web.servlet.config.annotation.InterceptorRegistry;
+import org.springframework.web.servlet.config.annotation.WebMvcConfigurer;
+
+/**
+ * projectName: com.atguigu.java
+ *
+ * @author: 赵伟风
+ * description: 目标;将拦截器加入到ioc容器的同时还要设置拦截和放行地址!
+ * 1. 配置类添加@Configuration注解
+ * 2. springmvc的配置类需要使用特殊的接口WebMvcConfigurer
+ * 3. WebMvcConfigurer接口中提供各种方法配置特殊(拦截器)的组件对象
+ * 4. 重写addInterceptor方法
+ * 5. 方法的形参对象 InterceptorRegistry 拦截器加入到ioc容器和配置拦截和放行的地址
+ */
+@Configuration
+public class SpringMvcConfiguration implements WebMvcConfigurer {
+
+ @Override
+ public void addInterceptors(InterceptorRegistry registry) {
+ registry.addInterceptor(new AllInterceptor()).addPathPatterns("/**").excludePathPatterns("/user/a").order(10);
+ }
+}
diff --git a/01_springboot_part/src/main/java/com/atguigu/java/mapper/EmpMapper.java b/01_springboot_part/src/main/java/com/atguigu/java/mapper/EmpMapper.java
new file mode 100644
index 0000000..242069d
--- /dev/null
+++ b/01_springboot_part/src/main/java/com/atguigu/java/mapper/EmpMapper.java
@@ -0,0 +1,13 @@
+package com.atguigu.java.mapper;
+
+import com.atguigu.java.pojo.Employee;
+import org.apache.ibatis.annotations.Mapper;
+
+import java.util.List;
+
+@Mapper
+public interface EmpMapper {
+
+ List getAllEmp();
+
+}
diff --git a/01_springboot_part/src/main/java/com/atguigu/java/mapper/OrderItemsMapper.java b/01_springboot_part/src/main/java/com/atguigu/java/mapper/OrderItemsMapper.java
new file mode 100644
index 0000000..ffba614
--- /dev/null
+++ b/01_springboot_part/src/main/java/com/atguigu/java/mapper/OrderItemsMapper.java
@@ -0,0 +1,9 @@
+package com.atguigu.java.mapper;
+
+import com.atguigu.java.pojo.OrderItems;
+import org.apache.ibatis.annotations.Mapper;
+
+@Mapper
+public interface OrderItemsMapper {
+ OrderItems selectOrderItems(Integer id);
+}
diff --git a/01_springboot_part/src/main/java/com/atguigu/java/mapper/OrdersMapper.java b/01_springboot_part/src/main/java/com/atguigu/java/mapper/OrdersMapper.java
new file mode 100644
index 0000000..5038586
--- /dev/null
+++ b/01_springboot_part/src/main/java/com/atguigu/java/mapper/OrdersMapper.java
@@ -0,0 +1,13 @@
+package com.atguigu.java.mapper;
+
+import com.atguigu.java.pojo.Orders;
+import org.apache.ibatis.annotations.Mapper;
+import org.apache.ibatis.annotations.Param;
+
+import java.util.List;
+
+@Mapper
+public interface OrdersMapper {
+ List getAllOrders(Integer userId);
+
+}
diff --git a/01_springboot_part/src/main/java/com/atguigu/java/mapper/UsersMapper.java b/01_springboot_part/src/main/java/com/atguigu/java/mapper/UsersMapper.java
new file mode 100644
index 0000000..bcf2aa6
--- /dev/null
+++ b/01_springboot_part/src/main/java/com/atguigu/java/mapper/UsersMapper.java
@@ -0,0 +1,12 @@
+package com.atguigu.java.mapper;
+
+import com.atguigu.java.pojo.Users;
+import org.apache.ibatis.annotations.Mapper;
+
+import java.util.List;
+
+@Mapper
+public interface UsersMapper {
+
+ List getAllUsersItem(Integer id);
+}
diff --git a/01_springboot_part/src/main/java/com/atguigu/java/pojo/Employee.java b/01_springboot_part/src/main/java/com/atguigu/java/pojo/Employee.java
new file mode 100644
index 0000000..a8d4c36
--- /dev/null
+++ b/01_springboot_part/src/main/java/com/atguigu/java/pojo/Employee.java
@@ -0,0 +1,11 @@
+package com.atguigu.java.pojo;
+
+import lombok.Data;
+
+@Data
+public class Employee {
+
+ private Integer empId;
+ private String empName;
+ private Double empSalary;
+}
diff --git a/01_springboot_part/src/main/java/com/atguigu/java/pojo/OrderItems.java b/01_springboot_part/src/main/java/com/atguigu/java/pojo/OrderItems.java
new file mode 100644
index 0000000..7eda074
--- /dev/null
+++ b/01_springboot_part/src/main/java/com/atguigu/java/pojo/OrderItems.java
@@ -0,0 +1,11 @@
+package com.atguigu.java.pojo;
+
+import lombok.Data;
+
+@Data
+public class OrderItems {
+ private Integer id;
+ private Integer orderId;
+ private String productName;
+ private Integer quantity;
+}
diff --git a/01_springboot_part/src/main/java/com/atguigu/java/pojo/Orders.java b/01_springboot_part/src/main/java/com/atguigu/java/pojo/Orders.java
new file mode 100644
index 0000000..f7cb56f
--- /dev/null
+++ b/01_springboot_part/src/main/java/com/atguigu/java/pojo/Orders.java
@@ -0,0 +1,12 @@
+package com.atguigu.java.pojo;
+
+import com.atguigu.java.mapper.OrderItemsMapper;
+import lombok.Data;
+
+@Data
+public class Orders {
+ private Integer id;
+ private Integer userId;
+ private String orderNumber;
+ private OrderItems orderItems;
+}
diff --git a/01_springboot_part/src/main/java/com/atguigu/java/pojo/Student.java b/01_springboot_part/src/main/java/com/atguigu/java/pojo/Student.java
new file mode 100644
index 0000000..1c171d1
--- /dev/null
+++ b/01_springboot_part/src/main/java/com/atguigu/java/pojo/Student.java
@@ -0,0 +1,11 @@
+package com.atguigu.java.pojo;
+
+import lombok.Data;
+
+@Data
+public class Student {
+
+ private String name;
+ private Integer age;
+ private Integer id;
+}
diff --git a/01_springboot_part/src/main/java/com/atguigu/java/pojo/Users.java b/01_springboot_part/src/main/java/com/atguigu/java/pojo/Users.java
new file mode 100644
index 0000000..a360487
--- /dev/null
+++ b/01_springboot_part/src/main/java/com/atguigu/java/pojo/Users.java
@@ -0,0 +1,14 @@
+package com.atguigu.java.pojo;
+
+
+import lombok.Data;
+
+import java.util.List;
+
+@Data
+public class Users {
+private Integer id;
+private String username;
+private String email;
+private List orders;
+}
diff --git a/01_springboot_part/src/main/resources/application.yml b/01_springboot_part/src/main/resources/application.yml
new file mode 100644
index 0000000..28f90a4
--- /dev/null
+++ b/01_springboot_part/src/main/resources/application.yml
@@ -0,0 +1,22 @@
+spring:
+ banner:
+ charset: utf-8
+ location: classpath:banner.txt
+ datasource:
+ url: jdbc:mysql://localhost:3306/mybatis-example
+ driver-class-name: com.mysql.cj.jdbc.Driver
+ username: root
+ password: 735289578
+ data:
+ redis:
+ host: 192.168.6.100
+ port: 6379
+mybatis:
+ mapper-locations: classpath:/mapper/*.xml
+ type-aliases-package: com.atguigu.java.pojo
+ configuration:
+ map-underscore-to-camel-case: true
+ log-impl: org.apache.ibatis.logging.stdout.StdOutImpl
+ auto-mapping-behavior: full
+ lazy-loading-enabled: true
+ aggressive-lazy-loading: false
diff --git a/01_springboot_part/src/main/resources/banner.txt b/01_springboot_part/src/main/resources/banner.txt
new file mode 100644
index 0000000..b738b2e
--- /dev/null
+++ b/01_springboot_part/src/main/resources/banner.txt
@@ -0,0 +1,22 @@
+ ////////////////////////////////////////////////////////////////////
+ // _ooOoo_ //
+ // o8888888o //
+ // 88" . "88 //
+ // (| ^_^ |) //
+ // O\ = /O //
+ // ____/`---'\____ //
+ // .' \\| |// `. //
+ // / \\||| : |||// \ //
+ // / _||||| -:- |||||- \ //
+ // | | \\\ - /// | | //
+ // | \_| ''\---/'' | | //
+ // \ .-\__ `-` ___/-. / //
+ // ___`. .' /--.--\ `. . ___ //
+ // ."" '< `.___\_<|>_/___.' >'"". //
+ // | | : `- \`.;`\ _ /`;.`/ - ` : | | //
+ // \ \ `-. \_ __\ /__ _/ .-` / / //
+ // ========`-.____`-.___\_____/___.-`____.-'======== //
+ // `=---=' //
+ // ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ //
+ // 佛祖保佑 永不宕机 永无BUG //
+ ////////////////////////////////////////////////////////////////////
\ No newline at end of file
diff --git a/01_springboot_part/src/main/resources/mapper/EmpMapper.xml b/01_springboot_part/src/main/resources/mapper/EmpMapper.xml
new file mode 100644
index 0000000..90598d1
--- /dev/null
+++ b/01_springboot_part/src/main/resources/mapper/EmpMapper.xml
@@ -0,0 +1,11 @@
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/01_springboot_part/src/main/resources/mapper/OrderItemsMapper.xml b/01_springboot_part/src/main/resources/mapper/OrderItemsMapper.xml
new file mode 100644
index 0000000..c986c63
--- /dev/null
+++ b/01_springboot_part/src/main/resources/mapper/OrderItemsMapper.xml
@@ -0,0 +1,12 @@
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/01_springboot_part/src/main/resources/mapper/OrdersMapper.xml b/01_springboot_part/src/main/resources/mapper/OrdersMapper.xml
new file mode 100644
index 0000000..fba3e88
--- /dev/null
+++ b/01_springboot_part/src/main/resources/mapper/OrdersMapper.xml
@@ -0,0 +1,21 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/01_springboot_part/src/main/resources/mapper/UsersMapper.xml b/01_springboot_part/src/main/resources/mapper/UsersMapper.xml
new file mode 100644
index 0000000..95daf37
--- /dev/null
+++ b/01_springboot_part/src/main/resources/mapper/UsersMapper.xml
@@ -0,0 +1,35 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/01_springboot_part/src/test/java/com/atguigu/java/DemoTest.java b/01_springboot_part/src/test/java/com/atguigu/java/DemoTest.java
new file mode 100644
index 0000000..9ee3a81
--- /dev/null
+++ b/01_springboot_part/src/test/java/com/atguigu/java/DemoTest.java
@@ -0,0 +1,39 @@
+package com.atguigu.java;
+
+import com.atguigu.java.mapper.OrderItemsMapper;
+import com.atguigu.java.mapper.OrdersMapper;
+import com.atguigu.java.mapper.UsersMapper;
+import com.atguigu.java.pojo.Orders;
+import com.atguigu.java.pojo.Student;
+import com.atguigu.java.pojo.Users;
+import org.junit.jupiter.api.Test;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.boot.test.context.SpringBootTest;
+import org.springframework.data.redis.core.RedisTemplate;
+
+import java.util.List;
+
+@SpringBootTest
+public class DemoTest {
+
+
+ @Autowired
+ private RedisTemplate redisTemplate;
+
+
+ @Test
+ public void test01(){
+ Student student = new Student();
+ student.setName("张三");
+ student.setAge(18);
+ student.setId(1);
+ redisTemplate.opsForValue().set("student",student);
+
+
+
+
+
+
+ }
+
+}