From c61415595db3fd2cf717f696b2c682bf204b41f7 Mon Sep 17 00:00:00 2001
From: "Yangkai.Shen" <237497819@qq.com>
Date: Thu, 21 Mar 2019 17:14:23 +0800
Subject: [PATCH] =?UTF-8?q?:construction:=20spring-boot-demo-rbac-shiro=20?=
=?UTF-8?q?=E5=8A=AA=E5=8A=9Bing?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
spring-boot-demo-rbac-shiro/pom.xml | 17 +++++++
.../SpringBootDemoRbacShiroApplication.java | 2 +
.../rbac/shiro/config/MybatisPlusConfig.java | 48 +++++++++++++++++++
.../src/main/resources/application.yml | 13 ++++-
.../src/main/resources/spy.properties | 21 ++++++++
5 files changed, 100 insertions(+), 1 deletion(-)
create mode 100644 spring-boot-demo-rbac-shiro/src/main/java/com/xkcoding/rbac/shiro/config/MybatisPlusConfig.java
create mode 100644 spring-boot-demo-rbac-shiro/src/main/resources/spy.properties
diff --git a/spring-boot-demo-rbac-shiro/pom.xml b/spring-boot-demo-rbac-shiro/pom.xml
index dae3ce8..833ee4c 100644
--- a/spring-boot-demo-rbac-shiro/pom.xml
+++ b/spring-boot-demo-rbac-shiro/pom.xml
@@ -45,6 +45,23 @@
test
+
+ com.baomidou
+ mybatis-plus-boot-starter
+ 3.1.0
+
+
+
+ p6spy
+ p6spy
+ 3.8.1
+
+
+
+ mysql
+ mysql-connector-java
+
+
cn.hutool
hutool-all
diff --git a/spring-boot-demo-rbac-shiro/src/main/java/com/xkcoding/rbac/shiro/SpringBootDemoRbacShiroApplication.java b/spring-boot-demo-rbac-shiro/src/main/java/com/xkcoding/rbac/shiro/SpringBootDemoRbacShiroApplication.java
index af5add5..6159655 100644
--- a/spring-boot-demo-rbac-shiro/src/main/java/com/xkcoding/rbac/shiro/SpringBootDemoRbacShiroApplication.java
+++ b/spring-boot-demo-rbac-shiro/src/main/java/com/xkcoding/rbac/shiro/SpringBootDemoRbacShiroApplication.java
@@ -1,5 +1,6 @@
package com.xkcoding.rbac.shiro;
+import org.mybatis.spring.annotation.MapperScan;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
@@ -17,6 +18,7 @@ import org.springframework.boot.autoconfigure.SpringBootApplication;
* @modified: yangkai.shen
*/
@SpringBootApplication
+@MapperScan("com.xkcoding.rbac.shiro.mapper")
public class SpringBootDemoRbacShiroApplication {
public static void main(String[] args) {
diff --git a/spring-boot-demo-rbac-shiro/src/main/java/com/xkcoding/rbac/shiro/config/MybatisPlusConfig.java b/spring-boot-demo-rbac-shiro/src/main/java/com/xkcoding/rbac/shiro/config/MybatisPlusConfig.java
new file mode 100644
index 0000000..3faf11a
--- /dev/null
+++ b/spring-boot-demo-rbac-shiro/src/main/java/com/xkcoding/rbac/shiro/config/MybatisPlusConfig.java
@@ -0,0 +1,48 @@
+package com.xkcoding.rbac.shiro.config;
+
+import com.baomidou.mybatisplus.core.parser.ISqlParser;
+import com.baomidou.mybatisplus.extension.parsers.BlockAttackSqlParser;
+import com.baomidou.mybatisplus.extension.plugins.PaginationInterceptor;
+import com.baomidou.mybatisplus.extension.plugins.PerformanceInterceptor;
+import org.springframework.context.annotation.Bean;
+import org.springframework.context.annotation.Configuration;
+
+import java.util.ArrayList;
+import java.util.List;
+
+/**
+ *
+ * MP3 配置
+ *
+ *
+ * @package: com.xkcoding.rbac.shiro.config
+ * @description: MP3 配置
+ * @author: yangkai.shen
+ * @date: Created in 2019-03-21 17:06
+ * @copyright: Copyright (c) 2019
+ * @version: V1.0
+ * @modified: yangkai.shen
+ */
+@Configuration
+public class MybatisPlusConfig {
+
+ @Bean
+ public PaginationInterceptor paginationInterceptor() {
+ PaginationInterceptor paginationInterceptor = new PaginationInterceptor();
+
+ List sqlParserList = new ArrayList<>();
+ // 攻击 SQL 阻断解析器、加入解析链
+ sqlParserList.add(new BlockAttackSqlParser());
+ paginationInterceptor.setSqlParserList(sqlParserList);
+
+ return paginationInterceptor;
+ }
+
+ /**
+ * SQL执行效率插件
+ */
+ @Bean
+ public PerformanceInterceptor performanceInterceptor() {
+ return new PerformanceInterceptor();
+ }
+}
diff --git a/spring-boot-demo-rbac-shiro/src/main/resources/application.yml b/spring-boot-demo-rbac-shiro/src/main/resources/application.yml
index a02fbde..44b6c3a 100644
--- a/spring-boot-demo-rbac-shiro/src/main/resources/application.yml
+++ b/spring-boot-demo-rbac-shiro/src/main/resources/application.yml
@@ -1,4 +1,15 @@
server:
port: 8080
servlet:
- context-path: /demo
\ No newline at end of file
+ context-path: /demo
+spring:
+ datasource:
+ hikari:
+ username: root
+ password: root
+ driver-class-name: com.p6spy.engine.spy.P6SpyDriver
+ url: jdbc:p6spy:mysql://127.0.0.1:3306/spring-boot-demo?useUnicode=true&characterEncoding=UTF-8&useSSL=false&autoReconnect=true&failOverReadOnly=false&serverTimezone=GMT%2B8
+mybatis-plus:
+ global-config:
+ # 关闭banner
+ banner: false
\ No newline at end of file
diff --git a/spring-boot-demo-rbac-shiro/src/main/resources/spy.properties b/spring-boot-demo-rbac-shiro/src/main/resources/spy.properties
new file mode 100644
index 0000000..f611f24
--- /dev/null
+++ b/spring-boot-demo-rbac-shiro/src/main/resources/spy.properties
@@ -0,0 +1,21 @@
+module.log=com.p6spy.engine.logging.P6LogFactory,com.p6spy.engine.outage.P6OutageFactory
+# 自定义日志打印
+logMessageFormat=com.baomidou.mybatisplus.extension.p6spy.P6SpyLogger
+#日志输出到控制台
+appender=com.baomidou.mybatisplus.extension.p6spy.StdoutLogger
+# 使用日志系统记录 sql
+#appender=com.p6spy.engine.spy.appender.Slf4JLogger
+# 设置 p6spy driver 代理
+deregisterdrivers=true
+# 取消JDBC URL前缀
+useprefix=true
+# 配置记录 Log 例外,可去掉的结果集有error,info,batch,debug,statement,commit,rollback,result,resultset.
+excludecategories=info,debug,result,batch,resultset
+# 日期格式
+dateformat=yyyy-MM-dd HH:mm:ss
+# 实际驱动可多个
+#driverlist=org.h2.Driver
+# 是否开启慢SQL记录
+outagedetection=true
+# 慢SQL记录标准 2 秒
+outagedetectioninterval=2
\ No newline at end of file