项目琐碎知识点
什么是RBAC
RBAC(Role-Based Access Control,基于角色的访问控制),就是用户通过角色与权限进行关联。
简单地说,就是一个用户拥有若干角色,每一个角色拥有若干权限。这样,就构造成“用户-角色-权限”的授权模型。在这种模型中,用户与角色之间,角色与权限之间,一般者是多对多的关系。
RBAC实际上就是针对产品去发掘需求时所用到的Who(角色)、What(拥有什么资源)、How(有哪些操作)的方式。
在RBAC模型中,who、what、how构成了访问权限三元组,也就是“Who对What进行How的操作。
https://blog.csdn.net/qq_28988969/article/details/100995546
@ApiOperation
@ApiOperation注解不是Spring自带的,它是是swagger里的。
注解@ApiOperation是用来构建Api文档的。
@ApiOperation(value = “接口说明”, httpMethod = “接口请求方式”, response =
“接口返回参数类型”, notes = “接口发布说明”;
Swagger是当前最好用的Restful API文档生成的开源项目,通过swagger-spring项目
Swagger 常用注解使用详解 https://blog.csdn.net/wyb880501/article/details/79576784
日志
Spring Boot默认使用LogBack日志系统,如果不需要更改为其他日志系统如Log4j2等,则无需多余的配置,LogBack默认将日志打印到控制台上。
而Spring Boot项目一般都会引用 spring-boot-starter
或者 spring-boot-starter-web
的依赖,这两个依赖中包含了 spring-boot-starter-logging
的依赖,所以我们如果不使用别的日志框架,无需修改依赖。
如果我们要使用日志功能,只需要在相应类上加上@Slf4j(需要lombok插件)注解,在对应方法中log.info(),log.error()等就可以输出日志。
注解@Slf4j的使用https://www.jianshu.com/p/6e137ee836a1
SLF4J将日志分为trace、debug、info、warn、error五个级别,每个级别对应记录不同的日志,对应不同的使用场景。
-
trace
是最低优先级的日志,一般用来追踪详细的程序运行流,比如程序的运行过程中,运行到了哪一个方法,进入了哪一条分支。通过trace程序的运行流程,可以判断程序是否按照期望的逻辑在运行。 -
debug
是比trace
高一级别的日志,该级别的日志就是用来debug用的。这类日志往往用在判断是否有出现bug的场景,且往往记录了代码运行的详细信息,比如方法调用传入的参数信息。 -
info
比debug
高一级别,用来记录程序运行的一些关键信息,它不像trace
那样记录程序运行的整个流程,也不像debug
那样为了解决问题而记录详细的信息。info记录的是整个系统的运行信息,比如系统运行到了哪一个阶段,到达了哪一个状态。 -
warn
比info
的级别更高,用来记录一些警告信息。警告信息表示,程序进入了一个特殊的状态,在该状态下程序可以继续运行,但是不建议让程序进入该状态,因为该状态可能导致结果出现问题。 -
error
级别的日志是最高优先级了,用来记录运行时的错误信息,表示程序运行过程中出现了需要被解决的问题,往往是一些异常。使用error
日志的时候,一般会将详细的异常出现的原因记录。
序列化
为了保存在内存中的各种对象的状态,并且可以把保存的对象状态再读出来,这是java中的提供的保存对象状态的机制—序列化。
https://blog.csdn.net/pmdream/article/details/90175448
分页查询
新建PageTableRequest 分页工具类
@Data
public class PageTableRequest implements Serializable {
private Integer page;//初始页
private Integer limit;//一页几条数据
private Integer offset;//页码
public void countOffset(){
if(null == this.page || null == this.limit){
this.offset = 0;
return;
}
this.offset = (this.page - 1) * limit;
}
}
select * from *** limit x, y;
-
***
为数据表 -
x
为查询结果的索引值 -
y
为查询结果返回的数量
https://blog.csdn.net/liujiahan629629/article/details/19698091
SpringSecurity
导入依赖
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-security</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.security</groupId>
<artifactId>spring-security-test</artifactId>
<scope>test</scope>
</dependency>
SpringSecurity默认的用户名是user,密码则在启动项目时会打印在控制台上。
每次启动都会分配不一样的密码。SpringSecurity同样支持自定义密码,只要在application.yml中简单配置一下即可
spring:
security:
user:
name: admin
password: 123456
HttpSecurity类
里面是安全相关方法
CSRF
CSRF(Cross-site request forgery),中文名称:跨站.请.求.伪.造,也被称为:one click attack/session riding,缩写为:CSRF/XSRF。
https://www.cnblogs.com/hyddd/archive/2009/04/09/1432744.html
正则表达式
正则表达式(regular expression)描述了一种字符串匹配的模式(pattern),可以用来检查一个串是否含有某种子串、将匹配的子串替换或者从某个串中取出符合某个条件的子串等。
构造正则表达式的方法和创建数学表达式的方法一样。也就是用多种元字符与运算符可以将小的表达式结合在一起来创建更大的表达式。正则表达式的组件可以是单个的字符、字符集合、字符范围、字符间的选择或者所有这些组件的任意组合。
正则表达式是由普通字符(例如字符 a 到 z)以及特殊字符(称为"元字符")组成的文字模式。模式描述在搜索文本时要匹配的一个或多个字符串。正则表达式作为一个模板,将某个字符模式与所搜索的字符串进行匹配。
https://www.runoob.com/regexp/regexp-syntax.html
https://www.cnblogs.com/xhj123/p/6032683.html
上一篇: ZTree入门权限管理
下一篇: 快速学习-Linux权限管理
推荐阅读
-
Java Web项目中连接Access数据库的配置方法
-
Android studio项目怎么使用git版本返回到上个版本?
-
VS2010 项目属性的默认包含路径的两种设置方法(图文)
-
myeclipse2014怎么打开web开发项目?
-
MyEclipse8.5导入java项目后会出现红色波浪线怎么办?
-
myeclipse2014导入web项目后页面中文显示乱码怎么办?
-
Android studio怎么为项目添加模块依赖?
-
Eclipse中Web项目出现感叹或红叉该怎么解决?
-
迅雷水晶项目为爱奇艺提供众包带宽服务 用户带宽闲置时贡献带宽获收益
-
visual studio 2010怎么创建c项目?