com.ruoyi
├── common // 工具類
│ └── annotation // 自定義注解
│ └── config // 全局配置
│ └── constant // 通用常量
│ └── core // 核心控制
│ └── enums // 通用枚舉
│ └── exception // 通用異常
│ └── json // JSON數(shù)據(jù)處理
│ └── utils // 通用類處理
│ └── xss // XSS過濾處理
├── framework // 框架核心
│ └── aspectj // 注解實現(xiàn)
│ └── config // 系統(tǒng)配置
│ └── datasource // 數(shù)據(jù)權限
│ └── manager // 異步處理
│ └── shiro // 權限控制
│ └── util // 通用工具
│ └── web // 前端控制
├── ruoyi-generator // 代碼生成(可移除)
├── ruoyi-quartz // 定時任務(可移除)
├── ruoyi-system // 系統(tǒng)代碼
├── ruoyi-admin // 后臺服務
├── ruoyi-xxxxxx // 其他模塊
通用配置 application.yml
## 項目相關配置
ruoyi:
# 名稱
name: RuoYi
# 版本
version: 3.2.0
# 版權年份
copyrightYear: 2019
# 文件上傳
profile: D:/profile/
# 獲取ip地址開關
addressEnabled: true
## 開發(fā)環(huán)境配置
server:
# 服務端口
port: 80
servlet:
# 項目contextPath
context-path: /
tomcat:
# tomcat的URI編碼
uri-encoding: UTF-8
# tomcat最大線程數(shù),默認為200
max-threads: 800
# Tomcat啟動初始化的線程數(shù),默認值25
min-spare-threads: 30
## 日志配置
logging:
level:
com.ruoyi: debug
org.springframework: WARN
org.spring.springboot.dao: debug
## 用戶配置
user:
password:
# 密碼錯誤{maxRetryCount}次鎖定10分鐘
maxRetryCount: 5
## Spring配置
spring:
# 模板引擎
thymeleaf:
mode: HTML
encoding: utf-8
# 禁用緩存
cache: false
# 資源信息
messages:
# 國際化資源文件路徑
basename: i18n/messages
jackson:
time-zone: GMT+8
date-format: yyyy-MM-dd HH:mm:ss
profiles:
active: druid
# 文件上傳
servlet:
multipart:
max-file-size: 30MB
max-request-size: 30MB
# 服務模塊
devtools:
restart:
# 熱部署開關
enabled: true
## MyBatis
mybatis:
# 搜索指定包別名
typeAliasesPackage: com.ruoyi
# 配置mapper的掃描,找到所有的mapper.xml映射文件
mapperLocations: classpath*:mapper/**/*Mapper.xml
# 加載全局的配置文件
configLocation: classpath:mapper/mybatis-config.xml
## PageHelper分頁插件
pagehelper:
helperDialect: mysql
reasonable: true
supportMethodsArguments: true
params: count=countSql
## Shiro
shiro:
user:
# 登錄地址
loginUrl: /login
# 權限認證失敗地址
unauthorizedUrl: /unauth
# 首頁地址
indexUrl: /index
# 驗證碼開關
captchaEnabled: true
# 驗證碼類型 math 數(shù)組計算 char 字符
captchaType: math
cookie:
# 設置Cookie的域名 默認空,即當前訪問的域名
domain:
# 設置cookie的有效訪問路徑
path: /
# 設置HttpOnly屬性
httpOnly: true
# 設置Cookie的過期時間,天為單位
maxAge: 30
session:
# Session超時時間(默認30分鐘)
expireTime: 30
# 同步session到數(shù)據(jù)庫的周期(默認1分鐘)
dbSyncPeriod: 1
# 相隔多久檢查一次session的有效性,默認就是10分鐘
validationInterval: 10
## 防止XSS攻擊
xss:
# 過濾開關
enabled: true
# 排除鏈接(多個用逗號分隔)
excludes: /system/notice/*
# 匹配鏈接
urlPatterns: /system/*,/monitor/*,/tool/*
數(shù)據(jù)源配置 application-druid.yml
## 數(shù)據(jù)源配置
spring:
datasource:
type: com.alibaba.druid.pool.DruidDataSource
driverClassName: com.mysql.cj.jdbc.Driver
druid:
# 主庫數(shù)據(jù)源
master:
url: jdbc:mysql://localhost:3306/ry?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8
username: root
password: password
# 從庫數(shù)據(jù)源
slave:
# 從數(shù)據(jù)源開關/默認關閉
enabled: false
url:
username:
password:
# 初始連接數(shù)
initialSize: 5
# 最小連接池數(shù)量
minIdle: 10
# 最大連接池數(shù)量
maxActive: 20
# 配置獲取連接等待超時的時間
maxWait: 60000
# 配置間隔多久才進行一次檢測,檢測需要關閉的空閑連接,單位是毫秒
timeBetweenEvictionRunsMillis: 60000
# 配置一個連接在池中最小生存的時間,單位是毫秒
minEvictableIdleTimeMillis: 300000
# 配置一個連接在池中最大生存的時間,單位是毫秒
maxEvictableIdleTimeMillis: 900000
# 配置檢測連接是否有效
validationQuery: SELECT 1 FROM DUAL
testWhileIdle: true
testOnBorrow: false
testOnReturn: false
webStatFilter:
enabled: true
statViewServlet:
enabled: true
# 設置白名單,不填則允許所有訪問
allow:
url-pattern: /monitor/druid/*
filter:
stat:
enabled: true
# 慢SQL記錄
log-slow-sql: true
slow-sql-millis: 1000
merge-sql: true
wall:
config:
multi-statement-allow: true
代碼生成配置 generator.yml
## 代碼生成
gen:
# 作者
author: ruoyi
# 默認生成包路徑 system 需改成自己的模塊名稱 如 system monitor tool
packageName: com.ruoyi.system
# 自動去除表前綴,默認是true
autoRemovePre: true
# 表前綴(類名不會包含表前綴)
tablePrefix: sys_
1、介紹
Spring Boot是一款開箱即用框架,提供各種默認配置來簡化項目配置。讓我們的Spring應用變的更輕量化、更快的入門。
在主程序執(zhí)行main函數(shù)就可以運行。你也可以打包你的應用為jar并通過使用java -jar來運行你的Web應用。它遵循"約定優(yōu)先于配置"的原則,
使用SpringBoot只需很少的配置,大部分的時候直接使用默認的配置即可??梢耘cSpring Cloud的微服務無縫結合。
Spring Boot2.0 環(huán)境要求必須是jdk8或以上版本,Tomcat8或以上版本
2、優(yōu)點
1、介紹
Apache Shiro是Java的一個安全框架。Shiro可以幫助我們完成:認證、授權、加密、會話管理、與Web集成、緩存等。其不僅可以用在
JavaSE環(huán)境,也可以用在 JavaEE 環(huán)境。
2、優(yōu)點
1、介紹
Thymeleaf是一個用于Web和獨立Java環(huán)境的模板引擎,能夠處理HTML、XML、JavaScript、CSS甚至純文本。能輕易的與Spring MVC等Web框架進行集成作為Web應用的模板引擎。
與其它模板引擎(比如FreeMaker)相比,Thymeleaf最大的特點是能夠直接在瀏覽器中打開并正確顯示模板頁面,而不需要啟動整個Web應用(更加方便前后端分離,比如方便類似VUE前端設計頁面),拋棄JSP吧。
Thymeleaf 3.0是一個完全徹底重構的模板引擎,極大的減少內(nèi)存占用和提升性能和并發(fā)性,避免v2.1版因大量的輸出標記的集合產(chǎn)生的資源占用。
Thymeleaf 3.0放棄了大多數(shù)面向DOM的處理機制,變成了一個基于事件的模板處理器,它通過處理模板標記或文本并立即生成其輸出,甚至在新事件之前響應模板解析器/緩存事件。Thymeleaf是Spring Boot官方的推薦使用模板。
2、優(yōu)點
更多建議: