mybatis-plus
转载自该博主:https://www.oz6.cn/
一、MyBatis-Plus1.简介MyBatis-Plus (opens new window)(简称 MP)是一个 MyBatis (opens new window)的增强工具,在 MyBatis 的基础上只做增强不做改变,为简化开发、提高效率而生。
我们的愿景是成为 MyBatis 最好的搭档,就像 魂斗罗 中的 1P、2P,基友搭配,效率翻倍。
2.特性
无侵入:只做增强不做改变,引入它不会对现有工程产生影响,如丝般顺滑
损耗小:启动即会自动注入基本 CURD,性能基本无损耗,直接面向对象操作
强大的 CRUD 操作:内置通用 Mapper、通用 Service,仅仅通过少量配置即可实现单表大部分 CRUD 操作,更有强大的条件构造器,满足各类使用需求
支持 Lambda 形式调用:通过 Lambda 表达式,方便的编写各类查询条件,无需再担心字段写错
支持主键自动生成:支持多达 4 种主键策略(内含分布式唯一 ID 生成器 - Sequence),可自由配置,完美解决主键问题
支持 ActiveRecord 模式: ...
token和session
Session认证
1、用户向服务器发送用户名和密码
2、服务器验证通过,在当前会话(session)中保存相关数据,比如用户角色、登录时间等
3、服务器给用户返回一个session_id,写入用户的cookie
4、用户随后的每一次请求,都会通过cookie,将session_id交给服务器
5、服务器验证session_id,根据session_id找到保存的相关数据,得知用户的身份
缺点:如果是服务器集群,或者是跨域的服务导向结构,就要求session数据共享,比如(多台服务器时,客户端发请求时随机分布在一台服务器上,当下一次发请求时可能被分布在另一台服务器上,这时候这台服务器没有上次请求的cookie或者session,此时有需要重新登录)
解决方案:1、将session数据持久化,写入数据库或别的持久层
2、服务器不再保存session数据,所有数据都保存在客户端,每次请求都发回服务器,比如Token认证
Token认证
1、客户端使用用户名跟密码登录,服务端收到请求,验证用户名和密码
2、验证成功后,服务端会签发一个token并把这个token发送到客户端 ...
跨域问题
跨域问题的产生
浏览器有同源策略,不同源的客户端脚本在没有明确授权的情况下,不能读写对方资源。
同源是指相同的协议、相同的主机和端口号,不同源是指任意一个不满足即是不同源
跨域问题的解决cros
cros(cross-origin resource sharing)是由W3C制定的一种跨域资源共享技术标准,目的是解决前端的跨域请求。
后端服务器实现cros接口,从而实现跨域通信。
cros将请求分为两类:简单请求和非简单请求
简单请求
非简单请求
后端springboot配置cros
12345678910111213@Configurationpublic class CorsConfig implements WebMvcConfigurer { @Override public void addCorsMappings(CorsRegistry registry) { registry.addMapping("/**");//允许跨域访问的路径 .allowedOrigins("*& ...



