soft5566 3 éve
commit
99c428461e

+ 70 - 0
pom.xml

@@ -0,0 +1,70 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+	xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd">
+	<modelVersion>4.0.0</modelVersion>
+	<parent>
+		<groupId>org.springframework.boot</groupId>
+		<artifactId>spring-boot-starter-parent</artifactId>
+		<version>2.7.8</version>
+		<relativePath/> <!-- lookup parent from repository -->
+	</parent>
+	<groupId>com.ch</groupId>
+	<artifactId>jiaoxuelou_houtai</artifactId>
+	<version>0.0.1-SNAPSHOT</version>
+	<name>jiaoxuelou_houtai</name>
+	<description>jiaoxuelou_houtai</description>
+	<properties>
+		<java.version>8</java.version>
+	</properties>
+	<dependencies>
+		<dependency>
+			<groupId>org.springframework.boot</groupId>
+			<artifactId>spring-boot-starter-web</artifactId>
+		</dependency>
+		<!-- https://mvnrepository.com/artifact/com.baomidou/mybatis-plus-boot-starter -->
+		<dependency>
+			<groupId>com.baomidou</groupId>
+			<artifactId>mybatis-plus-boot-starter</artifactId>
+			<version>3.5.2</version>
+		</dependency>
+		<dependency>
+			<groupId>org.springframework.boot</groupId>
+			<artifactId>spring-boot-devtools</artifactId>
+			<scope>runtime</scope>
+			<optional>true</optional>
+		</dependency>
+		<dependency>
+			<groupId>com.mysql</groupId>
+			<artifactId>mysql-connector-j</artifactId>
+			<scope>runtime</scope>
+		</dependency>
+		<dependency>
+			<groupId>org.projectlombok</groupId>
+			<artifactId>lombok</artifactId>
+			<optional>true</optional>
+		</dependency>
+		<dependency>
+			<groupId>org.springframework.boot</groupId>
+			<artifactId>spring-boot-starter-test</artifactId>
+			<scope>test</scope>
+		</dependency>
+	</dependencies>
+
+	<build>
+		<plugins>
+			<plugin>
+				<groupId>org.springframework.boot</groupId>
+				<artifactId>spring-boot-maven-plugin</artifactId>
+				<configuration>
+					<excludes>
+						<exclude>
+							<groupId>org.projectlombok</groupId>
+							<artifactId>lombok</artifactId>
+						</exclude>
+					</excludes>
+				</configuration>
+			</plugin>
+		</plugins>
+	</build>
+
+</project>

+ 16 - 0
src/main/java/com/ch/jiaoxuelou_houtai/JiaoxuelouHoutaiApplication.java

@@ -0,0 +1,16 @@
+package com.ch.jiaoxuelou_houtai;
+
+import org.mybatis.spring.annotation.MapperScan;
+import org.springframework.boot.SpringApplication;
+import org.springframework.boot.autoconfigure.SpringBootApplication;
+import org.springframework.context.annotation.ComponentScan;
+
+@SpringBootApplication
+@MapperScan("com.ch.jiaoxuelou_houtai.mapper")
+public class JiaoxuelouHoutaiApplication {
+
+	public static void main(String[] args) {
+		SpringApplication.run(JiaoxuelouHoutaiApplication.class, args);
+	}
+
+}

+ 19 - 0
src/main/java/com/ch/jiaoxuelou_houtai/config/MyBatisPlusConfig.java

@@ -0,0 +1,19 @@
+package com.ch.jiaoxuelou_houtai.config;
+
+import com.baomidou.mybatisplus.annotation.DbType;
+import com.baomidou.mybatisplus.extension.plugins.MybatisPlusInterceptor;
+import com.baomidou.mybatisplus.extension.plugins.inner.PaginationInnerInterceptor;
+import org.springframework.context.annotation.Bean;
+import org.springframework.context.annotation.Configuration;
+
+@Configuration
+public class MyBatisPlusConfig {
+    @Bean
+    public MybatisPlusInterceptor paginationInterceptor() {
+        MybatisPlusInterceptor interceptor = new MybatisPlusInterceptor();
+        PaginationInnerInterceptor paginationInterceptor = new PaginationInnerInterceptor(DbType.MYSQL);
+        interceptor.addInnerInterceptor(paginationInterceptor);
+
+        return interceptor;
+    }
+}

+ 29 - 0
src/main/java/com/ch/jiaoxuelou_houtai/controller/TestController.java

@@ -0,0 +1,29 @@
+package com.ch.jiaoxuelou_houtai.controller;
+
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.ch.jiaoxuelou_houtai.entity.User;
+import com.ch.jiaoxuelou_houtai.service.UserService;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.GetMapping;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RestController;
+
+import java.util.List;
+
+@RestController
+@RequestMapping("/api")
+public class TestController {
+
+    @Autowired
+    private UserService userService;
+
+    @GetMapping("/hello")
+    public IPage hello() {
+        Page<User> userPage = new Page<>(2, 2);
+        Page<User> page = userService.page(userPage);
+
+        return page;
+    }
+
+}

+ 20 - 0
src/main/java/com/ch/jiaoxuelou_houtai/entity/User.java

@@ -0,0 +1,20 @@
+package com.ch.jiaoxuelou_houtai.entity;
+
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import lombok.Data;
+
+import java.io.Serializable;
+import java.sql.Timestamp;
+
+@TableName("user")
+@Data
+public class User implements Serializable {
+    @TableId(value = "id", type = IdType.AUTO)
+    private Integer id;
+    private String username;
+    private String password;
+    private String email;
+    private Timestamp logintime;
+}

+ 9 - 0
src/main/java/com/ch/jiaoxuelou_houtai/mapper/UserMapper.java

@@ -0,0 +1,9 @@
+package com.ch.jiaoxuelou_houtai.mapper;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.ch.jiaoxuelou_houtai.entity.User;
+import org.apache.ibatis.annotations.Mapper;
+
+@Mapper
+public interface UserMapper extends BaseMapper<User> {
+}

+ 7 - 0
src/main/java/com/ch/jiaoxuelou_houtai/service/UserService.java

@@ -0,0 +1,7 @@
+package com.ch.jiaoxuelou_houtai.service;
+
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.ch.jiaoxuelou_houtai.entity.User;
+
+public interface UserService extends IService<User> {
+}

+ 11 - 0
src/main/java/com/ch/jiaoxuelou_houtai/service/impl/UserServiceImpl.java

@@ -0,0 +1,11 @@
+package com.ch.jiaoxuelou_houtai.service.impl;
+
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.ch.jiaoxuelou_houtai.entity.User;
+import com.ch.jiaoxuelou_houtai.mapper.UserMapper;
+import com.ch.jiaoxuelou_houtai.service.UserService;
+import org.springframework.stereotype.Service;
+
+@Service
+public class UserServiceImpl extends ServiceImpl<UserMapper, User> implements UserService {
+}

+ 44 - 0
src/main/resources/application.yml

@@ -0,0 +1,44 @@
+server:
+  servlet:
+    context-path: /
+    session:
+      timeout: 1440m
+  port: 8080
+
+
+spring:
+  redis:
+    host: 127.0.0.1
+    port: 6379
+    password:
+    timeout: 10000
+    lettuce.pool.max-active: 10
+    lettuce.pool.max-wait: 5
+    lettuce.pool.max-idle: 8
+    lettuce.pool.min-idle: 0
+  datasource:
+    username: root
+    password: 123456
+    url: jdbc:mysql://localhost:3306/jiaoxuelou?allowPublicKeyRetrieval=true&useSSL=false&connectTimeout=10000&socketTimeout=10000&serverTimezone=GMT%2B8&useUnicode=true&characterEncoding=UTF-8&allowMultiQueries=true&zeroDateTimeBehavior=convertToNull
+    driver-class-name: com.mysql.cj.jdbc.Driver
+    #spring官方推荐 性能最强,没有之一
+    hikari:
+      pool-name: Retail_HikariCP
+      minimum-idle: 5 #最小空闲连接数量
+      idle-timeout: 30000 #空闲连接存活最大时间,默认600000(10分钟)
+      maximum-pool-size: 10 #连接池最大连接数,默认是10
+      auto-commit: true  #此属性控制从池返回的连接的默认自动提交行为,默认值:true
+      max-lifetime: 120000 #此属性控制池中连接的最长生命周期,值0表示无限生命周期,默认1800000即30分钟
+      connection-timeout: 30000 #数据库连接超时时间,默认30秒,即30000
+      connection-test-query: SELECT 1
+  jackson:
+    date-format: yyyy-MM-dd HH:mm:ss
+    time-zone: GMT+8
+
+  devtools:
+    restart:
+      enabled: true
+    additional-paths: src/main/java
+
+
+